Состояние дел и проблемы.
Первые прообразы современных компьютеров появились в 40-х годах прошлого века. Программирование этих компьютеров осуществлялось при помощи кучи переключателей на панели управления было весьма утомительным занятием. Со временем появилась возможность подключать к компьютеру устройства ввода информации с перфокарт и магнитной ленты. Это значит, что стало возможным один раз записать программу (последовательность команд), а выполнить ее столько раз сколько потребуется. Основная трудность при этом записать программу правильно. Поскольку программа в данном случае не что иное, как последовательности чисел (машинных слов) определенной структуры, человеку сложно работать с такой программой.
Поэтому возникает естественное желание сделать так, что бы человек работал не с набором чисел, а с чем-то более понятным ему.
Решение.
Каждой машинной команде можно сопоставить условное буквенное обозначение и разработать программу которая будет переводить условные обозначения в машинные коды. В результате работ в этом направлении появились программы, предназначенные для преобразования условных обозначений в исполняемый машинный код. Такие программы стали называть ассемблерами, а языки, используемые для записи таких программ, — языками ассемблера, или, кратко, тоже ассемблерами.
Ниже приводится фрагмент программы на ассемблере для современного персонального компьютера.
@@1: CMP AX,BX JLE @@2 MOV BX,AX @@2: LOOP @@1 |
$3B $3C $7E $02 $8B $D8 $2E $F7 |