Другие языки программирования и технологии
Объясните что пишут на Ассемблере? какие проги? под что?
Я писал на нём только важные участки кода для игр в виде вставок или внешних подпрограмм, но это было давно когда компиляторы не могли ещё генерировать код используя MMX или SSE, а теперь компиляторы более умные и сейчас в этом нет такой необходимости использовать машинно-зависимый код. Тем более сейчас возможность использовать GPU для расчётов.
даже ОС пишут
1) Я писал загрузчик (bootloader) для ОС.
Необязательно это должен быть проект уровня Windows, это может быть и какой-нибудь Live CD.
Можно пойти дальше, и часть функционала ОС (потоки, файлы, графика на экране - VGA, SVGA - ) тоже на асме писать, встроив это в тот самый бутлоадер.
2) Для реверс-инжиниринга.
Хотите сделать исходник из EXE, отследить чужой алгоритм - нужно знать ассемблер. Нормальные бесплатные средства ("декомпиляторы" и отладчики вроде OllyDbg) могут превратить машинный код только в ассемблер. Те, которые превращают в ЯВУ, обычно либо платные, либо кривые.
Хотите написать компилятор в *.exe - значит, нужно HEX-редактором исследовать формат *.exe, а для первых шагов надо, чтоб exeшник был как можно меньше - а асм рекордсмен в этом деле.
Вообще, главное условие успешного реверс-инжиниринга чего угодно - это вышвырнуть все лишнее, в т. ч. высокоуровневое.
3) А еще компилятор ассемблера FASM может под виндой - создать линуксовый исполняемый файл, может и еще какие форматы бинарников поддерживает - не пробовал.
Правда, применения этой фиче я пока не придумал.
4) Видел вставки ассемблера в драйверах (видимо, нужны они там); спецы умеют вставлять его в ЯВУ, утверждают, что так работает быстрее, или этот дает доступ к возможностям системы, недоступным из ЯВУ (но это целое искусство, не то что: тупо переписал хелловорлд на асм и он хоть чуток быстрее работает)
5) Прошивки для микроконтроллеров или еще чего-то подобного пишут на асме.
6) Просто интересно, как оно все работает на низком уровне. :)
Необязательно это должен быть проект уровня Windows, это может быть и какой-нибудь Live CD.
Можно пойти дальше, и часть функционала ОС (потоки, файлы, графика на экране - VGA, SVGA - ) тоже на асме писать, встроив это в тот самый бутлоадер.
2) Для реверс-инжиниринга.
Хотите сделать исходник из EXE, отследить чужой алгоритм - нужно знать ассемблер. Нормальные бесплатные средства ("декомпиляторы" и отладчики вроде OllyDbg) могут превратить машинный код только в ассемблер. Те, которые превращают в ЯВУ, обычно либо платные, либо кривые.
Хотите написать компилятор в *.exe - значит, нужно HEX-редактором исследовать формат *.exe, а для первых шагов надо, чтоб exeшник был как можно меньше - а асм рекордсмен в этом деле.
Вообще, главное условие успешного реверс-инжиниринга чего угодно - это вышвырнуть все лишнее, в т. ч. высокоуровневое.
3) А еще компилятор ассемблера FASM может под виндой - создать линуксовый исполняемый файл, может и еще какие форматы бинарников поддерживает - не пробовал.
Правда, применения этой фиче я пока не придумал.
4) Видел вставки ассемблера в драйверах (видимо, нужны они там); спецы умеют вставлять его в ЯВУ, утверждают, что так работает быстрее, или этот дает доступ к возможностям системы, недоступным из ЯВУ (но это целое искусство, не то что: тупо переписал хелловорлд на асм и он хоть чуток быстрее работает)
5) Прошивки для микроконтроллеров или еще чего-то подобного пишут на асме.
6) Просто интересно, как оно все работает на низком уровне. :)
кто то пишет как профи, я любитель, ну антивирус под дос, утилиты там, перевод систем счисления, что угодно, главное проект в голове и в тетрадке план работ
Похожие вопросы
- Объясните пожалуйста, как в ассемблере записывается ветвление (условие if)?
- Если для каждого процессора пишут отдельный ассемблер, то как windows может работать со всеми процессорами?
- Есть кто пишет на ассемблере? что за проект или задача, приведите пример
- как писать по русски в проге borland pascal. как только не пробовал изменять языки, печатает по английскому
- Кто-нибудь может мне объяснить как писать коды в VB6.0 меня интересуют циклы do и for select case само построение
- Что может ассемблер?
- Почему многие программисты ненавидят ассемблер?Ведь у него куча плюсов!Он позволяет максимально задействовать
- изменить прогу на ассемблере (всего лишь пару строк)
- Прошу помощи добить файловый in-out для готовой проги. Ассемблер
- я должен написать прогу на ассемблере для перевода числа из восьмеричной системы в десятичную