Cтраница 1
Загрузка адреса а регистры Адрес 0 и Адрес 1 посредством регистра Адрес 0 / 1 разрешает функционирование соответственно старшего и младшего приемника / передатчика. [1]
После загрузки адреса блока управления каналами сопроцессор сбрасывает флаг занятости BUSY0 канала 1, информируя ЦП о завершении программы начальной инициализации. Начав инициализацию, ЦП должен наблюдать за состоянием флага занятости канала 1 в блоке управления каналами, чтобы определить момент завершения программы инициализации. Поскольку обычно каждый сопроцессор имеет свой блок управления каналами, ЦП должен разместить в памяти новый блок управления каналами и изменить указатель в блоке конфигурации системы перед инициализацией другого сопроцессора. Кроме того, может существовать несколько блоков конфигурации системы, каждый из которых будет указывать на свой блок управления каналами. В этом случае перед инициализацией очередного сопроцессора ЦП должен изменить указатель блока конфигурации системы. Отсюда следует, что если в МПС работает несколько сопроцессоров ВМ89, то блок конфигурации системы или указатель блока конфигурации системы, или оба должны быть расположены в ОЗУ. После инициализации всех сопроцессоров центральный процессор может использовать освободившиеся ячейки ОЗУ для других целей. [2]
Временная диаграмма магистрального ОЗУ. [3] |
Управление загрузкой адреса и вводом - выводом данных осуществляется одним и тем же абонентом. [4]
Примеры преобразования со - Команда LPD - загру. [5] |
Поэтому команда MOV используется для загрузки адресов, относящихся к пространству ввода-вывода. [6]
Микропрограмма команды Сложение РгАОП: - РгАК ( загрузка адреса адреса. [7]
ССВ явным образом, то при генерации макрорасширения WAIT была бы порождена дополнительная команда загрузки адреса в 1 - й регистр. [8]
Содержимое регистров общего назначения исправляется командами: переход с возвратом BAL, BALR, загрузка LRt загрузка адреса LA. Команды загрузка L и загрузка групповая LM производят исправление только в том случае, если операнд находится на границе слова. Команда загрузка полу слова LH исправляет содержимое регистра, если операнд находится на границе полуслова. [9]
Типичный пример использования абсолютной величины можно найти в связи с командой Load Address ( LA) ( Загрузка адреса), когда она используется для загрузки величины, управляющей циклом, в регистр. [10]
Микрокоманда с адресом ID вычисляет адрес БИС, вводимый по входу Н, и при L: 1 используется для загрузки адреса в программный счетчик из стека, где находится текущий адрес команды, с содержимым страницы сегмента, загружаемого в программную память ПМК. [11]
Команды 1C ( чтение символа), LH ( загрузка полуслова), L ( загрузка слова), LA ( загрузка адреса), LM ( групповая загрузка) предназначены для передачи данных из оперативной памяти в общие регистры. Такая передача исходных данных обязательно производится в начале программы, а далее командами используется по мере необходимости. По команде LR ( загрузка) происходит передача данных из одного регистра в другой, а по команде LA ( загрузка адреса) - пересылка адреса в общий регистр. Рассмотрим подробнее эти команды. [12]
Если при трансляции команде L ( загрузка) соответствует адрес памяти, например 00 3000, то содержимое счетчика адреса к моменту выполнения команды LA ( загрузка адреса) будет 00 3004 ( длина команды L составляет 4 байт), и это значение будет помещаться в третий регистр. [13]
В этом диапазоне у нас все еще остаются два случая частого появления констант: 0 ( довольно частая константа), которая может генерироваться командой вычитания в регистре, и другие небольшие константы, для которых требуется команда загрузки адреса. Аналогичным образом логическая операция - отношение дает значение логического типа состояние, которое обычно должно преобразовываться в нуль или единицу до выдачи последующих команд ( которые могут изменить код состояния); if и while требуют значения логического типа состояние, обычно получаемого путем проверки значения в регистре. Особый случай if или while о простой операцией отношения является настолько частым, что процедура CONDTOREG записывает ( в stillcond) состояние, которое она проверяет. Когда команды выданы, процедура EMITCODEBYTES возвращает stillcond в начальное состояние. Однако, если процедура BOOLBRANCH вызывается до выдачи любого последующего кода, она дублирует указатель кода рр ( стирает результат CONDTOREG) и использует значение в stillcond для выдачи условного перехода. [14]
Оптимизация команд перехода заключается в замене команд перехода формата RR на команды формата RX. Команды перехода формата RR требуют сначала загрузки адреса перехода из памяти в регистр, а затем передачи управления по этому адресу. В командах перехода формата RX адрес перехода формируется непосредственно в команде сложением указанного в ней смещения с базовым адресом, загруженным в регистр один раз для целого участка программы. [15]