Обработка - макрокоманда - Большая Энциклопедия Нефти и Газа, статья, страница 1
Для любого действия существует аналогичная и прямо противоположная правительственная программа. Законы Мерфи (еще...)

Обработка - макрокоманда

Cтраница 1


Обработка макрокоманды ( блок 12) сводится к формированию обращения к соответствующей стандартной подпрограмме, реализующей данную макрокоманду, или к замене макрокоманды стандартной группой команд прямо в тексте программы. В обоих случаях фактические параметры макрокоманды переводятся в машинные эквиваленты так же, как при трансляции машинных команд. Сформированная группа машинных команд заносится в массивы программа и печать, причем в массив печать переносятся также значения счетчика адреса, отвечающие сформированным командам. Перед началом обработки макрокоманды счетчик адреса выравнивается на границу полуслова, а в ходе формирования машинных команд увеличивается соответственно длине каждого сформированного объектного кода.  [1]

2 Схема макрогенератора. [2]

Блок обработки макрокоманд, используя таблицы, подготовленные блоком обработки макроопределений, заменяет каждое вхождение макрокоманды соответствующим текстом на языке ассемблера.  [3]

4 Блок управления трансляцией макрогенератора. [4]

Блок обработки макрокоманд использует таблицы, созданные блоком обработки макроопределений, и формирует еще одну временную таблицу - таблицу позиционных операндов, аналогичную таблице позиционных параметров.  [5]

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

При обработке макрокоманды макрогенератор в поисках соответствующего макроопределения в первую очередь просматривает программные макроопределения, потом личную библиотеку исходных программ и в последнюю очередь - системную библиотеку ДОС ЕС. В ОС ЕС библиотеки просматриваются в порядке их сцепления.  [7]

При обработке макрокоманд РЕГАБ ( РЕГАБД), ИСКЛАБ, ОТКПРТ ( в режиме почты) и ЗАКПРТ ( в режиме почты) транспортной станции не требуется буферная память. При обработке остальных макрокоманд в любом режиме ТС использует свой небольшой пул буферов, в каждом из которых может уместиться один фрагмент, для отсылки служебных команд протокола ТС-ТС. Этот же пул используется и для приема фрагментов входящих писем, но память под все письмо ( для сборки его из фрагментов) должна явным образом предоставляться транспортной Станции абонентом.  [8]

При обработке конкретной макрокоманды параметр остается постоянным, даже если в макроопределении используются другие макрокоманды. Пусть, например, имеются мероопределения А и В, причем в макроопределении А используется макрокоманда В.  [9]

При входе в блок обработки макрокоманд переменной уровень присваивается значение нуль, одновременно восстанавливается начало рабочего поля ( блок 1), на котором размещаются временные таблицы, используемые при обработке макрокоманды.  [10]

Последовательность предложений, порождаемая макрогенератором при обработке макрокоманды под управлением макроопределения и вставляемая в программу вместо макрокоманды, называется макрорасширением, а сам процесс построения макрорасширений - генерацией.  [11]

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

Таблица описаний макрокоманд содержит тексты тел макроопределений, подготовленные для использования в блоке обработки макрокоманд.  [13]

Кросс-ассемблер выполняет точно такие же функции, что и само-ассемблер: трансляция мнемонических команд в машинный код, выполнение псевдоопераций, обнаружение синтаксических ошибок и обработка макрокоманд. Отличие заключается в том, что кросс-ассемблер реализуется на большой машине, а не на микропроцессоре, в котором выполняется ассемблированная программа. Обычно кросс-ассемблер написан на Фортране и может работать на многих больших машинах. Вместе с моделирующей программой разработчик может создать и проверить любые программы, кроме критичных во времени, до проектирования аппаратных средств.  [14]

Кросс-ассемблер выполняет точно такие же функции, как и самоассемблер: трансляция мнемонических команд в машинный код, выполнение псевдокоманд и директив, обнаружение синтаксических ошибок и обработка макрокоманд.  [15]



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