Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБ_МИУС_14.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.93 Mб
Скачать

2.4.4. Директивы ассемблера

Директивы, в отличие от команд ассемблера, не преобразуются в объектный код и применяются для управления процессами трансляции и компоновки исходной программы. Синтаксис ассемблера допускает начинать запись мнемокода директивы либо с точки, либо без знаков препинания в поле операции. Приведем пример часто используемых директив ассемблера.

ORG операнды

Директива используется для изменения значения ассемблерного счетчика адреса текущего сегмента. По умолчанию начальный адрес в каждой секции равен нулю. Если имя секции не указано, то транслятор работает с памятью программ.

метка EQU операнды

Директива присваивает символическому имени, размещенному в поле метка, байтовое или двухбайтовое значение, указанное в поле операнды. Это имя не может быть переопределено.

DB операнды

Директива последовательно размещает в ячейках памяти программ байтовые константы, перечисленные через запятую в поле операнды. Если поле отсутствует, то используется одна ячейка ПП, в которую заносится "0".

метка REG операнды

Директива присваивает символическому имени, размещенному в поле метка, байтовое или битовое значение, указанное в поле операнды, причем указанное значение может быть задано не только числом, другим символическим именем или выражением, но и именем программно доступного элемента микроконтроллера. Символическое имя, размещенное в поле метка, не может быть переопределено.

метка SET операнды

Директива присваивает символическому имени, размещенному в поле метка, байтовое или двухбайтовое значение, указанное в поле операнды. В отличие от директивы EQU, это имя может быть переопределено.

END

Директива определяет конец транслируемого модуля программы.

метка MACRO операнды

Директива начинает макроопределение, которое состоит из операторов языка А51 и заканчивается директивой ENDM. Любое поле включенных в макроопределение операторов может быть представлено формальными параметрами, которые перечисляются через запятую в поле операнды. В поле метка указывается символическое имя макрокоманды. Макрокоманда при трансляции заменяется на тело своего макроопределения.

ENDM

Директива определяет конец макроопределения.

3. Подготовка к работе

3.1. Изучите особенности организации памяти микроконтроллера Intel 8051. Запишите, на какие адресные пространства разделена память микроконтроллера.

3.2. Зарисуйте схему адресного пространства памяти программ микроконтроллера Intel 8051. Укажите управляющие сигналы и способы обращения к памяти. Запишите специализацию области младших адресов РПП и источники прерываний.

3.3. Зарисуйте схему адресного пространства памяти данных микроконтроллера Intel 8051. Укажите управляющие сигналы и способы обращения к памяти. Запишите диапазон адресов и специализацию резидентной памяти данных.

3.4. Подготовьте для заполнения таблицы П3.1 и П3.2.

4. Выполнение работы

4.1. Приведите краткую характеристику программной модели микроконтроллера Intel 8051. Запишите назначение регистров специальных функций, укажите их, адреса и состояние при сбросе.

4.2. Ознакомьтесь с правилами записи программ на языке ассемблера А51. Запишите формат командной строки.

4.3. Изучите способы адресации данных микроконтроллеров семейства Intel 8051. Запишите определения режимов адресации, приведите примеры команд. Определите типы используемых операндов.

4.4. Ознакомьтесь с системой команд и директивами ассемблера А51. Дайте характеристику основным группам команд. Заполните таблицу П3.1.

4.5. Самостоятельная работа. Запишите в таблицу П3.2 директивы и команды (последовательность команд) ассемблера, позволяющие выполнить заданные действия.