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

какие приимущества в Ассемблере против С++ ,Паскаль , Делпхи и т.д. ?

Высокая скорость работы и меньший размер исполняемого файла
Тахир Алматов
Тахир Алматов
68 014
Лучший ответ
1) только на асме возможен реверсинг уже написанной программы (нельзя же ее раскомпилировать на си )
2) можно лазить по компу изнутри а не через ООП оболочку
3) оптимизирует асм код не тупой компилятор а живой программист
4) времени поспать действительно не остается.. .
ну а остальное уже писали
Коля Ахметов
Коля Ахметов
59 824
Ассемблер - это "возможно всё", если даже компилятор не поддерживает каких-то опкодов, их можно эмулировать db/dw/dd.
Используется в основном для работы с оборудованием на низком уровне, написания критичного кода, написания нетипичных программ (загрузчиков ОС и т. п.) , написания нестандартного по формату кода (не *.exe).
Программируешь непосредственно железо - CPU. И есть полный доступ ко всем его возможностям. А языки высокого уровня к сожалению такой доступ ограничивают. На этом преимущества заканчиваются и перерастают в недостатки.
Ты должен учитывать какой процессор (у всех есть свои особенности, и для каждого - свой ассемблер) .
То что будет работать быстрее - совершенно неоднозначно. Это нужно сначала написать так, чтобы работало быстрее.

Почему то многие наивно полагают, что оптимизировать код можно одинаковым образом для любого процессора. И что живой программист обязательно сделает лучше тупого компилятора.
И живой программист может быть тупым. И знать ему нужно очень много про все эти процессоры, все их особенности, для каждого писать отдельную оптимизацию, и не забывать где и под какой процессор у него что оптимизировано. Рутина просто мегатоннами.

А "тупые" компиляторы и оптимизаторы написаны вообще то совсем не тупыми программистами. И дело свое они делают быстро и лучше живого программиста. Я сам в этом убедился на собственном опыте. Когда писал движки для хешей, то у меня так и вышло ассемблерные версии MD4, MD5 работали немного быстрее, а остальные (SHA-1, SHA256, SHA384, SHA512) - медленнее, чем их Си-плюс-плюс версии. Хотя я полагал, что абсолютно все оптимизировал максимальным образом. Но "тупой" компилятор CPP сделал лучше, чем я. Ломать голову дальше не стал. Так что в настоящее время ассемблер - это мартышкин труд, особенно, если это касается прикладного программирования.
1. Можно использовать все возможности аппаратуры.
1.1. Наиболее тесное взаимодействие с ресурсами ОС.
2. Программа, как правило, работает быстрее
3. У программиста не остается свободного времени для сна, еды, друзей и другой бесполезной чепухи)
SR
Shuxrat Raxmatov
1 263
главное примущество что программер общается напрямую с машиной.. .
Assembler - язык машины... .
С нынешними компиляторами ассемблер - баловство, тренажёр для мозга.
Михаил Юрьевич
3. У программиста не остается свободного времени для сна, еды, друзей и другой бесполезной чепухи)

Это в точку !

Похожие вопросы