Читайте также:
|
|
Приведенные в предыдущей главе команды могут быть переведены с языка Ассемблера в машинные коды микроконтроллера и далее в исполняемую программу при помощи двух программ, называемых транслятором и компоновщиком. При разработке программы на Ассемблере необходимо дать задание не только микроконтроллеру, но и транслятору с компоновщиком. Поэтому в Ассемблере существует два вида операторов: команды, которые превращаются транслятором в машинные коды, и директивы, в которых даются задания на трансляцию и компоновку. В отличие от команд директивы могут состоять из нескольких строк, то есть быть составными. Область действия таких директив заключена между открывающей и закрывающей строками. Часть директив также переводится транслятором в машинные коды или влияет на них, а некоторые директивы используются только для удобства работы программиста и потому без них в принципе можно обойтись.
В ASM-51 имеется большое разнообразие директив предназначенных для управления ассемблером и компоновщиком. В этой работе могут потребоваться следующие:
.END – директива прекращения трансляции,
.ORG адрес – директива задания (изменения) содержимого счетчика текущего адреса.
По первой директиве ассемблер прекращает трансляцию данной программы, обычно она записывается в конце всей программы.
Вторая предназначена для задания ассемблеру адресов при формировании таблицы имен. При обработке каждого оператора, которому соответствуют данные или команда, транслятор переводит их в двоичный код и записывает в отведенном для их секций адресном пространстве. Если оператор поименован (в поле метки есть имя), то транслятор записывает номер строки, имя объекта и содержимое счетчика адреса в таблицу имен. Конечно, перед этим транслятор проверяет, нет ли этого имени в таблице. Если оно уже есть в таблице, то выдастся сообщение об ошибке. Как только команда поименована, мы можем записывать в поле операнда управляющих команд ее адрес в символическом виде для передачи управления. Как только поименованы данные или отведенное для них место в памяти, мы можем записывать в поле операнда команды обработки информации их адрес в символическом виде (для чтения или записи).
Дата добавления: 2015-07-20; просмотров: 187 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Группа команд управления | | | Пример выполнения работы |