|
Ассемблер ― язык программирования низкого уровня. Язык получил свое название от слова assembler - сборщик. Возник еще в 50-е годы как символический аналог машинного языка.
Команды Ассемблера один в один соответствуют командам процессора и фактически, представляют собой удобную символьную форму записи команд и аргументов. Также, Ассемблер обеспечивает связывание частей программы и данныx через метки, выполняемое при ассемблировании (для каждой метки высчитывается адрес, после чего каждое вхождение метки заменяется на этот адрес).
Поскольку системы команд микропроцессоров различаются, каждый процессор имеет свой набор команд на языке ассемблера.
С помощью ассемблера можно написать такие программы, которые невозможно, или очень сложно написать на других языках програмирования. Например: генераторы ключей (keygen), системные мониторы, драйвера для оборудования или даже операционные системы.
Языки высокого уровня ("C","Pascal","Delphi" и т.д.) не обеспечивают надёжного контроля за потоками данных, адресами памяти или регистрами процессора, а также все они были разработаны под определённый вид операционной системы, ассемблер же может стать этим-же ассемблером, но работающим на неизвестной науке платформе, и делающий программы под эту-же платформу.
Программы на ассемблере, в отличие от программ, написанных на языках высокого уровня получаются в десятки раз меньше, а работают в десятки раз быстрее. Примером может послужить операционная система MenuetOS, которая написана на Flat Assembler и умещающаяся на одной дискете (1.44 Мб), причём в комплект входят прикладные программы, такие как: редактор ассемблерного кода с подсветкой, работа с файловой системой, 3d заставки, некоторое количество игр, просмоторщик картинок, компилятор Flat Assembler, терминал, CD плейер и многое другое. Преимущество состоит в том, что его можно быстро скачать с интернета (даже при маленькой скорости соединения).
На данный момент, большинство специалистов в области программного обеспечения ведут разработки на языках высокого уровня, таких как Паскаль или С, что проще при написании программ, но наиболее мощное и эффективное программное обеспечение полностью или частично написано на языке ассемблера.
Литература:
1. Питер Абель - Ассемблер. Язык и программирование для IBM PC - М., 1999.
|
|