Вопрос программистам

Флейм в чистом виде - все что угодно...
Но - в рамках закона :)
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Вопрос программистам

Сообщение TovarishAleksey »

Хочу написать компилятор для своего языка программирования на FASM. Допустим, я сейчас пишу под Windows, а если потребуется перенести его на Linux, значит всё придётся переписывать(под терминал, оболочку и т.д.)? Как те же gcc всякие стали кроссплатформенными, также всё переписывали под каждую ОСь?
Возникла идея: под каждую операционную систему свой модуль лепить, для ввода/вывода, потом при компиляции выбирать один из модулей, в зависимости от того, на какую систему мы компилируем код
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Реклама
petrenko
Друг Кота
Сообщения: 5326
Зарегистрирован: Вт фев 21, 2012 13:51:55
Откуда: Начинающий
Контактная информация:

Re: Вопрос программистам

Сообщение petrenko »

///

- AWK - / ?? :roll: :dont_know:

///

:idea: !
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
Реклама
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

не то. Мне нужно на ассемблере, чтоб и на Windows, и на Linux, и на DOS/KolibriOS
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Аватара пользователя
>TEHb<
Друг Кота
Сообщения: 5745
Зарегистрирован: Ср ноя 11, 2009 17:19:30
Откуда: Воронеж
Контактная информация:

Re: Вопрос программистам

Сообщение >TEHb< »

Программы на новом языке тоже должны работать на этих системах?
"Привет!" - соврал он.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
JMC.Hard
Мучитель микросхем
Сообщения: 445
Зарегистрирован: Ср сен 16, 2020 20:38:41
Откуда: Краснодарский край, г.Абинск

Re: Вопрос программистам

Сообщение JMC.Hard »

[uquote="TovarishAleksey",url="/forum/viewtopic.php?p=4637805#p4637805"]не то. Мне нужно на ассемблере, чтоб и на Windows, и на Linux, и на DOS/KolibriOS[/uquote]
Ннну, вобщем-то ассемблеру мало важно Windows, Linux или DOS ...
Ему интереснее x86, RISK или ARM ... :wink:
Лучше сделать и жалеть, чем жалеть, что не сделал ...
Реклама
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

Тень, должны. Переформулирую немного: мой компилятор(скорее интерпретатор) должен запускаться в терминалах этих операционных систем, и как я понял, необходимо будет переписать всю ту часть, которая будет отвечать за запуск этого компилятора. Тоже самое и с генерацией исполняемого файла. Просто я подумал, может есть какая-то кроссплатформенная штука, которая позволит всё это дело делать во всех ОС.
Сейчас вопрос: кроссплатформенные компиляторы(например для Си++) только потому-что их переписывали под разные системы?
JMS.Hard, у меня всё таки компилятор для уже существующих ОС, а не для самопала какого-то, поэтому разница есть
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Реклама
SII
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пт янв 30, 2009 14:50:35
Откуда: Солнечногорск

Re: Вопрос программистам

Сообщение SII »

[uquote="TovarishAleksey",url="/forum/viewtopic.php?p=4637819#p4637819"]Тень, должны. Переформулирую немного: мой компилятор(скорее интерпретатор) должен запускаться в терминалах этих операционных систем, и как я понял, необходимо будет переписать всю ту часть, которая будет отвечать за запуск этого компилятора. Тоже самое и с генерацией исполняемого файла. Просто я подумал, может есть какая-то кроссплатформенная штука, которая позволит всё это дело делать во всех ОС.
Сейчас вопрос: кроссплатформенные компиляторы(например для Си++) только потому-что их переписывали под разные системы?
JMS.Hard, у меня всё таки компилятор для уже существующих ОС, а не для самопала какого-то, поэтому разница есть[/uquote]

Всё верно понятно. Почти весь транслятор от конкретной платформы не зависит (а если зависимости есть -- скажем, разрядность машинного слова, -- их, в общем-то, несложно реализовать переносимым образом прямо "на месте"), но ввод-вывод может зависеть очень сильно. Если пишется на языке высокого уровня, скажем, на це/це++, (почти) все зависящие от платформы вещи спрятаны внутрь библиотеки, но на ассемблере придётся делать отдельные модули под каждую платформу. В первом приближении -- реализовать аналоги сишных функций fopen, fread и т.д.
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

теперь точно понял, спасибо. :)
Буду пробовать, сначала на Windows, потом на Linux. Если интересно, я собираюсь написать компилятор, ну, для начала хотя бы интерпретатор Forth, только со своими фишками. Хочу использовать его для программирования микроконтроллеров, различного рода программ и игр для компуктера, вот. Если вы не против, я буду здесь задавать свои будущие вопросы, ну а пока меня интересует ещё одна вещь: недавно пробовал написать загрузчик, и нигде не нашёл, как сменить шрифт, чтобы писать кириллицей. Как я понял, для начала нужно включить графический режим, а дальше уже не понимаю.. Объясните пожалуйста
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Аватара пользователя
Фунтик
Собутыльник Кота
Сообщения: 2704
Зарегистрирован: Пт фев 12, 2010 13:47:17

Re: Вопрос программистам

Сообщение Фунтик »

TovarishAleksey писал(а):недавно пробовал написать загрузчик
загрузчик чего?
TovarishAleksey писал(а):как сменить шрифт
на чём?
TovarishAleksey писал(а):чтобы писать кириллицей
ассемблер на кирилице - так себе затея, учитывая последующий порт в Форт и эксплуатацию на всём чём можно, наверняка включая даже без киррилицовые окружения.
TovarishAleksey писал(а):для начала нужно включить графический режим,
раз ты пишешь в Вин - то он уже включён. Но добраться до него ты сможешь только через абстракции ОС.
TovarishAleksey писал(а):а дальше уже не понимаю..
ты и до этого не понимаешь.
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

1.Фунтик, загрузчик ОС.
2.Как сменить шрифт в этом загрузчике.
3.Форт здесь не причём, просто давно как-то пытался сделать на русском чтоб было, а никакой информации по этому не нашёл.
4.Знаю, напрямую с видеопамятью работать в вин нельзя.
5."До этого" понимаю не всё, но кое-что всё таки понимаю
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Аватара пользователя
Фунтик
Собутыльник Кота
Сообщения: 2704
Зарегистрирован: Пт фев 12, 2010 13:47:17

Re: Вопрос программистам

Сообщение Фунтик »

TovarishAleksey писал(а):1.Фунтик, загрузчик ОС.
ладно, продолжим: на каком устройстве?
TovarishAleksey писал(а):2.Как сменить шрифт в этом загрузчике.
Загрузчик - это то, что загружает. При чём тут шрифт?
TovarishAleksey писал(а):3.Форт здесь не причём, просто давно как-то пытался сделать на русском чтоб было, а никакой информации по этому не нашёл.
что бы что было на русском?
TovarishAleksey писал(а):4.Знаю, напрямую с видеопамятью работать в вин нельзя.
и?
TovarishAleksey писал(а):5."До этого" понимаю не всё, но кое-что всё таки понимаю
но изъясняешься так косноязычно, что не понимают тебя. Приучись каждую произносимую (печатаемую) фразу строить так, что б человек, прочитавший её понял о чём речь. И половина (у тебя - 75%) вопросов отпадут уже в моменте продумывания своей фразы.
petrenko
Друг Кота
Сообщения: 5326
Зарегистрирован: Вт фев 21, 2012 13:51:55
Откуда: Начинающий
Контактная информация:

Re: Вопрос программистам

Сообщение petrenko »

[uquote="TovarishAleksey",url="/forum/viewtopic.php?p=4637819#p4637819"]... мой компилятор(скорее интерпретатор) должен запускаться в терминалах ...[/uquote]

Tак компилятор или интерпретатор ? :roll:

И ежели интерпретатор, то как Вы представляете интерпретатор ассемблерных мнемоник, да ещё в "терминалах" ? :roll:

Или у Вас эмулируется некая архитектура, а не реальная "платформа" ?

Или должен запускаться некий Ваш кросс-ассемблер, а то, что он накомпилирует из мнемоник в числовые коды, должно будет запускать-ся на чём-то ещё ?

Ну в общем при "fuzzy"-вопросах невозможно дать ответ, ибо возникает множество уточняющих вопросов к вопрошающему ...
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

1.ПК на процессоре AMD.
2.Мой загрузчик также выводит всякий текст, без которого не обойтись. :)
3.Что бы этот самый текст был на русском.
4.Ну вот и всё, речь всё равно не про вин.
5.Очень извиняюсь за это. Когда дело касается вопросов, я никак не понимаю как правильно сформулировать то или иное предложение, постоянно что-то меняю, и как бы я не старался, получается всё равно коряво. Если не трудно, поправляйте меня :))

Петренко, компилятор.
Интерпретатор не для ассемблера, а для моего языка программирования.
Платформа реальная, но пока это не имеет значения.
То что он накомпилирует, должно запускаться на нескольких ОС, но как уже стало ясно из ответа SII, надо писать модули, чтоб достичь этой цели
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Аватара пользователя
Фунтик
Собутыльник Кота
Сообщения: 2704
Зарегистрирован: Пт фев 12, 2010 13:47:17

Re: Вопрос программистам

Сообщение Фунтик »

petrenko писал(а):Ну в общем при "fuzzy"-вопросах
вроде в первом сообщении написано - свой язык какой-то. Вряд ли это будет повторением ассемблерных мнемоник... Хотя непонятно - компилятор или интерпретатор по сути будет. А это диаметрально меняет направление разработки кросса...

Добавлено after 6 minutes 4 seconds:
TovarishAleksey писал(а):1.ПК на процессоре AMD.
т.е. ПК на х86 илии там 64... Насколько я понимаю при включенной в BIOSe системе CSM (а для AMD актуально) - всё просто. На начальный сектоор харда (или с чего вы там грузитесь) кладёте аббревиатуру загручика и понеслось. В случае с EFI загрузчиком - чуть по другому. Определённая метка раздела и так далее, читатьт спецификации в обоих случаях (сюда столько переписывать толку нет). Для перехода на кириллицу - загружаете в видеоадаптер нужный вам шрифт и используете его. В простых видеорежимах это не сильно сложно. Но по объёму писательства - напряжёт так, что проще будет английский выучить.
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

Язык не очень сложный, по этому сильно ничего не изменится, будет это компилятор, ну или же интерпретатор. В любом случае придётся писать лексер

Добавлено after 2 minutes 49 seconds:
Фунтик, чуть понял. Это я давно вычитал, просто не видел нормальной документации по этому, никто будто и не прикручивал кириллицу. :?
Видел у КолибриОС русский язык в загрузчике, почитаю исходный код, может и обнаружится
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Аватара пользователя
Фунтик
Собутыльник Кота
Сообщения: 2704
Зарегистрирован: Пт фев 12, 2010 13:47:17

Re: Вопрос программистам

Сообщение Фунтик »

TovarishAleksey писал(а):Язык не очень сложный, по этому сильно ничего не изменится, будет это компилятор, ну или же интерпретатор.
Это разные вещи. Совсем. Абсолютно. Интерпретатор выполняется в конкретной среде и вынужден взаимодействовать с этой средой (ОС, например) по полной программе (ввод/вывод файлов, текста, графики, ввод с клавиатуры, реакция на мышь...). Компилятору нужно только чтение из файла и запись в файл от окружающей среды, ну и там и памяти попросить чутка. Ему даже плевать, как отправленные в stdout сообщения будут/не будут обрабатываться. И, опять таки, компилятору пофиг что обрабатывать - компилить на ПК программу под телефонный Андроид - вполне уместная тема. Интерпретатор программ под Андроид не будет работать вне Андроидного окружения (пусть даже эмуляции).
просто не видел нормальной документации по этому, никто будто и не прикручивал кириллицу. :?
в основном это происходило в доинтернетную эру, поэтому в интернете немного. По х86 в своё время много почерпнул из "Питер Абель. Ассемблер и программирование для IBM PC.". До сих пор в библиотечке стоит. Но времена уходят - написанный по старозаветным загрузчик скоро, с окончательным приходом EFI, уйдёт в былое. А тут и сам кусками изучал, систематизированных знаний нет. Зато в интернете - всё есть.
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

понял. Я по-другому представлял себе эти вещи немного
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Аватара пользователя
Фунтик
Собутыльник Кота
Сообщения: 2704
Зарегистрирован: Пт фев 12, 2010 13:47:17

Re: Вопрос программистам

Сообщение Фунтик »

КАК? И да, я предыдущее сообщение подредактировал...
SII
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пт янв 30, 2009 14:50:35
Откуда: Солнечногорск

Re: Вопрос программистам

Сообщение SII »

[uquote="Фунтик",url="/forum/viewtopic.php?p=4637853#p4637853"]По х86 в своё время много почерпнул из "Питер Абель. Ассемблер и программирование для IBM PC."[/uquote]

А вот когда я ПК ковырял, её ещё не было, появилась позже. Помню, заставил-таки флопики работать, пользуясь документацией к советским микросхемам -- они ж клоны буржуйских. Но наполовину-таки методом научного тыка приходилось -- а использовать функции BIOS, есно, религия не позволяла :) А вот MCGA тогда так и не осилил (правда, не очень-то и пытался).

[uquote="Фунтик",url="/forum/viewtopic.php?p=4637853#p4637853"]Но времена уходят - написанный по старозаветным загрузчик скоро, с окончательным приходом EFI, уйдёт в былое. А тут и сам кусками изучал, систематизированных знаний нет. Зато в интернете - всё есть.[/uquote]

Ну, в виртмашинах, вероятно, поддержка классического BIOS сохраняться будет и дальше.
Аватара пользователя
TovarishAleksey
Потрогал лапой паяльник
Сообщения: 313
Зарегистрирован: Вс сен 22, 2024 12:16:47
Откуда: Село Лютенька

Re: Вопрос программистам

Сообщение TovarishAleksey »

Фунтик, а вот и не скажу, а то распугаю тут всех.. :roll:
А за книжку спасибо - посмотрю, почитаю.
"Умный может зарабатывать триста рублей, а проживать три тысячи"
Ответить

Вернуться в «МЯЯЯУ!»