Ассемблер - Большая Энциклопедия Нефти и Газа, статья, страница 4
Лучшее средство от тараканов - плотный поток быстрых нейтронов... Законы Мерфи (еще...)

Ассемблер

Cтраница 4


46 Псевдокоманды языка ассемблера. [46]

Ассемблер, который обрабатывает программу, представленную на рис. 6.2, формирует листинг, который приведен на рис. 6.3. Производится автоматическая нумерация строк текстового файла для облегчения организации ссылок и их корректировки. Вторая колонка на рис. 6.3 содержит значения счетчика ячеек программы перед ассемблированием каждой строки.  [47]

Ассемблер следит за обозначениями, которые определяет пользователь, с помощью таблицы символов. Обычно когда идентификатор появляется в поле LABEL, он сразу же вводится в таблицу символов вместе с текущим значением счетчика ячеек программы. Обратите внимание на то, что многие метки используются до того, как они определяются; подобный способ носит название обработки метки со ссылкой вперед. Ассемблер допускает ссылки вперед благодаря тому, что трансляция программы выполняется в два прохода. Во время первого прохода формируется таблица символов, тогда как во время второго прохода выполняется трансляция команд. Этот процесс будет подробно описан в следующем разделе.  [48]

Ассемблер устанавливает подразумеваемое направление передачи, исходя из порядка следования операндов. В процессорах MCS-48 и 8086 мнемоника MOV также используется для обоих направлений передачи. В этих машинах пересылки типа память-память запрещены.  [49]

Ассемблер транслирует исходный модуль в два приема. Сначала он присваивает символическим именам адресов некоторые целые значения. Эти значения используются только в период трансляции исходного модуля. Значения символических имен вычисляются транслятором следующим образом. При трансляции программы Ассемблер заводит специальную переменную СА ( Счетчик Адреса), принимающую целые неотрицательные значения. В начале первого просмотра исходного модуля переменной СА присваивается некоторое целое значение, кратное 8; это значение указывает автор исходного модуля командой START. Большею частью начальное значение СА полагают равным нулю.  [50]

Ассемблер просматривает одно за другим предложения исходного модуля. Если предложение порождает какой-либо элемент в объектном модуле, то Ассемблер, построив этот элемент, увеличивает значение СА на fe, где k - число байтов, занимаемых в объектном модуле построенным элементом.  [51]

Ассемблер отмечает в специальной таблице базовых регистров номер общего регистра R и заносит в нее значение выражения V. С этого момента Ассемблер считает, что OP ( R) можно использовать в качестве базового регистра и что при выполнении программы в младших 24-двоичных разрядах OP ( R) будет содержаться двоичное представление значения V.  [52]

53 Простейшие случаи употребления предложения DC 88. [53]

Ассемблер, встретив в исходном модуле предложение DC, анализирует тип константы. Если текущее значение счетчика адреса имеет кратность, требуемую типом константы, то Ассемблер переводит константу в определяемый типом формат и помещает полученную последовательность шестнадцатиричных цифр в объектный модуль непосредственно вслед за последним уже построенным элементом объектного модуля. Если же значение счетчика адреса нужной кратности не имеет, то Ассемблер продвигает значение С А на k байтов так, чтобы значение С А k удовлетворяло нужному условию кратности, и строит описанным выше образом значение константы, отступив от последнего построенного элемента объектного модуля на k байтов. Пропущенные k байтов заполняются нулями.  [54]

55 Разбиение на перемежающи - [ IMAGE ] Пример структуры исход-еся секции ного модуля. [55]

Ассемблер заводит для каждой программной секции свой счетчик адреса.  [56]

Ассемблер может иметь дело с четырьмя типами предложений.  [57]



Страницы:      1    2    3    4