Cтраница 1
Запись операторов для прерывания на спецветвь через К минут. [1] |
При прерывании значение базисного адреса индекса ( АСи) остается без изменения, и поэтому использование индексных ячеек в ветви требует внимания, должна быть обеспечена сохранность содержимого индексных ячеек прерванной программы. Если распределение индексных ячеек в прерванной программе известно, то свободные ячейки могут использоваться в ветви. [2]
Запись операторов для прерывания на спецветвь через К минут. [3] |
При прерывании значение базисного адреса индекса ( А6и) остается без изменения, и поэтому использование индексных ячеек в ветви требует внимания, должна быть обеспечена сохранность содержимого индексных ячеек прерванной программы. Если распределение индексных ячеек в прерванной программе известно, то свободные ячейки могут использоваться в ветви. [4]
В процессе загрузки происходит корректировка этих адресов на значение базисного адреса той области, в которой расположено поле обмена. После загрузки управляющее слово с действительными адресами занимает одну ячейку, расположенную вслед за экстракодовой командой. [5]
Микропрограмма операции засылки слова на базисный регистр ( а и выборки операнда ( б Предполагается, что к моменту выполнения указанной команды на. [6] |
Адреса операндов и результатов вычисляются в соответствии со значениями базисных адресов, хранимых в базисных регистрах. Принадлежность относительного адреса к некоторому массиву указывается в команде номером базисного регистра, на котором хранится базисный адрес массива. [7]
Определить значение исполнительных адресов операндов, выбрав из прилагаемой таблицы значения базисных адресов и констант индексирования 1-го и 2-го адресов. [8]
Последним в программе всегда должен быть оператор выхода ( ВЫХ), восстанавливающий для внешней программы содержимое регистра индикаторов ( РИ), счетчика адреса команд ( СЧАК), а также значения базисных адресов в ячейках уровня. Первая из трех зарезервированных ячеек внутренней программы гасится, и это является признаком того, что программа выполнена. [9]
Здесь ИДЕНТ обозначает наименование загружаемой внутренней программы. После трансляции оператору ставятся в соответствие три ячейки в программе, причем наименование программы переносится в третью ячейку. После загрузки программы а первых двух ячейках будут записаны значения базисных адресов внутренней программы. [10]
При динамическом распределении памяти операнды, результаты и команды адресуются от базисных адресов массивов, которым они принадлежат. При обращении к памяти относительный адрес, указанный в команде, должен преобразовываться в абсолютный адрес Аа в соответствии с таблицей массивов, описывающей распределение памяти. Адрес Аа ячейки памяти вычисляется как сумма Аа В А I, где В - базисный адрес некоторого массива, А - указанный в команде относительный адрес и / - значение индекса, используемого при модификации адресной части команды. Значения Ли / указываются в адресной части программы. Значение базисного адреса В хранится в таблице массивов. Очевидно, что команда должна содержать ссылку на номер массива, к которому относится адрес А, указанный в команде. Данная ссылка позволяет определить адрес В. Вычисление абсолютного адреса Аа В А / требует выборки базисного адреса и производится при каждом обращении к памяти. Для уменьшения затрат времени на выработку абсолютного адреса для хранения базисных адресов используются регистры на триггерах, называемые базисными регистрами. Количество регистров ограничивается до 4 - 16, и на базисных регистрах хранятся базисные адреса только тех массивов, которые используются на данном этапе выполнения программы. [11]