Пр о ц е с с о р TMS 3 2 0C4 x
150
♦
.word
value1 [, ..., value N] – инициализирует одно или несколько 32 раз-
рядных целых чисел.
•
Директивы выравнивания счетчика программной секции:
♦
.align
– выравнивание счетчика программной секции на границу страницы;
♦
.even
– выравнивание счетчика программной секции на границу слова.
•
Директивы форматирования листинга:
♦
.length
page length – устанавливает длину страницы листинга в строках;
♦
.list
– возобновляет формирование листинга;
♦
.nolist
– приостанавливает формирование листинга;
♦
.title
“string” – определяет заголовок на каждой странице листинга;
♦
.width
page width – Определяет ширину страницы листинга в знаках.
•
Директивы ссылок на другие файлы:
♦
.copy
filename – включает исходный текст из другого файла в ассембли-
руемый файл;
♦
.def
symbol1 [, ..., symbol N] – объявляет один или несколько символов, оп-
ределенных в текущем модуле и используемых в другом;
♦
.global
symbol1 [, ..., symbol N] – объявляет один или несколько глобаль-
ных (внешних) символов;
♦
.include
filename – включает исходный текст из другого файла в ассембли-
руемый файл;
♦
.ref
symbol1 [, ..., symbol N] – объявляет один или несколько символов, ис-
пользуемых в текущем модуле, но определенных в другом модуле.
•
Вспомогательные директивы:
♦
.end
– конец программы (модуля);
♦
.version
number – устанавливает тип процессора.
4. Процесс ассемблирования
Ассемблер создает выходной объектный файл в перемещаемом формате,
т.е. в формате, где все адресные ссылки определены относительно одного базо-
вого адреса, называемого
точкой загрузки
. Поскольку на момент ассемблиро-
вания точка загрузки, как правило, неизвестна она принимается нулевой. В объ-
ектном файле также могут присутствовать адресные ссылки на символы (име-
на), определяемые в других объектных файлах.
Исходный текст программы обрабатывается ассемблером в два прохода.
При ассемблировании используются собственные для каждой секции счетчики
адреса (SPC – section program counter). Ассемблером в процессе работы созда-
ются структуры данных, среди которых представляют интерес таблицы симво-
лов и перемещений. Таблица символов одна, таблицы перемещений формиру-
ются для каждой секции. Элемент таблицы символов содержит имя символа,
номер секции, в которой определен данный символ, и значение счетчика адреса
секции, эквивалентное данному символу (значение символа). Элемент таблицы
перемещения содержит индекс символа в таблице символов и указатель на ко-
манду (адрес ссылки), где используется данный символ. Первый проход ас-