Другие языки программирования и технологии

Объясните что пишут на Ассемблере? какие проги? под что?

Vlad Milishkevich
Vlad Milishkevich
565
Я писал на нём только важные участки кода для игр в виде вставок или внешних подпрограмм, но это было давно когда компиляторы не могли ещё генерировать код используя MMX или SSE, а теперь компиляторы более умные и сейчас в этом нет такой необходимости использовать машинно-зависимый код. Тем более сейчас возможность использовать GPU для расчётов.
КС
Кайрат Султангазиев
11 372
Лучший ответ
даже ОС пишут
1) Я писал загрузчик (bootloader) для ОС.
Необязательно это должен быть проект уровня Windows, это может быть и какой-нибудь Live CD.
Можно пойти дальше, и часть функционала ОС (потоки, файлы, графика на экране - VGA, SVGA - ) тоже на асме писать, встроив это в тот самый бутлоадер.

2) Для реверс-инжиниринга.
Хотите сделать исходник из EXE, отследить чужой алгоритм - нужно знать ассемблер. Нормальные бесплатные средства ("декомпиляторы" и отладчики вроде OllyDbg) могут превратить машинный код только в ассемблер. Те, которые превращают в ЯВУ, обычно либо платные, либо кривые.
Хотите написать компилятор в *.exe - значит, нужно HEX-редактором исследовать формат *.exe, а для первых шагов надо, чтоб exeшник был как можно меньше - а асм рекордсмен в этом деле.
Вообще, главное условие успешного реверс-инжиниринга чего угодно - это вышвырнуть все лишнее, в т. ч. высокоуровневое.

3) А еще компилятор ассемблера FASM может под виндой - создать линуксовый исполняемый файл, может и еще какие форматы бинарников поддерживает - не пробовал.
Правда, применения этой фиче я пока не придумал.

4) Видел вставки ассемблера в драйверах (видимо, нужны они там); спецы умеют вставлять его в ЯВУ, утверждают, что так работает быстрее, или этот дает доступ к возможностям системы, недоступным из ЯВУ (но это целое искусство, не то что: тупо переписал хелловорлд на асм и он хоть чуток быстрее работает)

5) Прошивки для микроконтроллеров или еще чего-то подобного пишут на асме.

6) Просто интересно, как оно все работает на низком уровне. :)
Sev 7
Sev 7
26 662
кто то пишет как профи, я любитель, ну антивирус под дос, утилиты там, перевод систем счисления, что угодно, главное проект в голове и в тетрадке план работ
Дима Мальцев
Дима Мальцев
1 387