Include

Директива.include добавляет содержимое указанного файла в исходный файл. Эффект аналогичен копированию полного текста включаемого файла в место расположения директивы. Параметр директивы – подключаемый файл – может указываться как с полным путем, так и без. Во втором случае поиск файла будет осуществляться в текущей рабочей директории, директории исходного файла и служебных директориях. Пример использования директивы:

.include “p33fj32mc204.inc”

Global

Директива.global используется для того, чтобы позволить меткам, определённым внутри файла, использоваться в другом файле. Пример использования директивы:

.global __reset

.global __OscillatorFail

.global __AddressError

В данном примере метки сделаны глобальными, чтобы компоновщик мог использовать их как адрес для перехода программы в указанные точки при наступлении соответствующих событий. Метка __reset используется для обозначения начала кода и используется как адрес для перехода из вектора сброса.

Section

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

.section.data

Data

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

Text

Директива.text используется для информирования Ассемблера, что следующий код будет помещён в секцию программной памяти.

Equ

Директива.equ используется для определения символа и присвоения ему значения. Пример использования директивы:

.equ FCY, #7370000

В данном примере символу FCY присваивается литеральное значение 7370000. В таком контексте FCY является константой, которая может использоваться в коде.

Hword

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

MinX:.hword 0x7FFF

Extern

Директива.extern используется для объявления переменной либо метки, которая может использоваться в данном файле кода, однако определена как глобальная в другом файле. Пример использования директивы:

.extern label

End

Директива.end используется для обозначения окончания ассемблерного исходного файла. Пример использования директивы:

.list p=p33fj32mc204

; текст программы

.end


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: