4. Байтовая. Команды байтового типа выполняются аналогично командам типа регистр-память.
Описание команд
Опишем в этом разделе каждую команду. В первой строке описания приводится краткая справка, состоящая из названия команды, ее формата (RR, RS, IM, СН[43]), шестнадцатеричного кода операции, записи команды на языке ассемблера[44] и перечисления разрядов регистра признака результата, которые могут командой изменяться. Затем следует словесное описание. Содержимое РПР, устанавливаемое в результате выполнения команды, обозначает- обозначается символами О, L, G, Е[45]) или Нет (указание на то, что РПР не изменяется).
Load Register RR 0016 LR,R1 R2 GLE (Загрузка регистра)
В регистр R1 пересылается содержимое слова по исполнительному адресу. Пересылаемое значение сравнивается с нулем, и в РПР устанавливается соответствующий разряд: G, L или Е[46]). Если исполнительный адрес не попадает на границу слова, происходит особый случай неверной адресации слова.
Load RS 2016 L, R1A, R2 GLE (Загрузка)
Эта команда выполняется аналогично команде Load Register с тем отличием, что исполнительный адрес вычисляется по правилу адресации команд типа регистр-память.
Load Immediate IM 4016 LI,R1 I GLE (Загрузка непосредственная)
Эта команда выполняется так же, как Load Register, с той разницей, что пересылаемая величина является непосредственным операндом I, при этом его знаковый разряд размножается на 12 битов влево. Особых случаев произойти не может.
Load Character СН 6016 LC, R1 А, R2 GE (Загрузка байта)
Регистр R1 обнуляется, и байт по исполнительному адресу записывается в его разряды 24—31. Производится сравнение пересылаемой величины с нулем, и в РПР устанавливаются разряды G или Е.
Load Negative Register RR 0116 LNR, R1 R2 OGLE (Загрузка регистра отрицательная)
В регистр R1 засылается дополнительный код слова по исполнительному адресу. Результат сравнивается с нулем и устанавливается РПР. При переполнении в РПР устанавливается лишь разряд 0. Может иметь место особый случай неверной адресации слова.
Load Negative RS 2116 LN, R1A,R2 OGLE (Загрузка отрицательная)
Эта команда выполняется так же, как Load Negative Register, но исполнительный адрес вычисляется по правилу адресации команд типа регистр-память.
Load Negative Immediate IM 4116 LNI,R1 I GLE (Загрузка непосредственная отрицательная)
В регистр R1 помещается 32-разрядное двоичное дополнение 20-разрядного непосредственного операнда I, заданного в дополнительном коде. Переполнение произойти не может. Установка РПР осуществляется сравнением результата с нулем.
Load Negative Character CH 6116 LNC,R1 A,R2 LE (Загрузка байта отрицательная)
Байт по исполнительному адресу дополняется слева нулями до 32 разрядов и дополнительный код полученного слова помещается в регистр R1. Переполнения произойти не может. Для установки РПР полученная величина сравнивается с нулем.
Store Register RR 0216 STR, R1 R2 GLE (Запись регистра)
Содержимое R1 запоминается в слове по исполнительному адресу. Результат сравнивается с нулем, и устанавливается РПР. Может произойти особый случай неверной адресации слова.
Store RS 2216 ST, R1 A, R2 GLE (Запись в память)
Эта команда выполняется так же, как команда Store Register, но исполнительный адрес вычисляется по правилу адресации команд типа регистр-память.
Store Character CH 6216 STC, R1 A,R2 GE (Запись в память байта)
Разряды 24—31 регистра R1 помещаются в байт по исполнительному адресу. Для установки РПР занесенная величина сравнивается с нулем.
Swap Register RR 0316 SWAPR, R1 R2 GLE (Обмен)
Содержимое регистра Rl и слова по исполнительному адресу меняются местами. Новая величина в R1 сравнивается с нулем, и устанавливается РПР. Может произойти особый случай неверной адресации слова.
Swap RS 2316 SWAP,R1 A,R2 GLE (Обмен с памятью)
Эта команда выполняется так же, как команда Swap Register, но исполнительный адрес вычисляется по правилу адресации команд типа регистр-память.
Swap Character CH 6316 SWAPC, R1 А, R2 GE (Обмен с байтом)
Разряды 24—31 регистра R1 меняются местами с байтом по исполнительному адресу. РПР устанавливается при сравнении нового содержимого R1 с нулем. Разряды с 0-го по 23-й регистра R1 не изменяются,
43
Аббревиатуры от Register-Register (регистр-регистр), Register-Storage (регистр-память), IMmediate (непосредственная), CHaracter (байтовая). — Прим. перев.
44
На языке ассемблера разряд косвенной адресации задается звездочкой перед полем адреса, как, например, LN,R1 * A,R.2.
45
Аббревиатуры от Overflow (переполнение), Less than (меньше, чем), Greater than (больше, чем), Equal (равно). — Прим, перев.
46
При установке признака результата предполагается, что в операциях отношения слева стоит первый из указанных операндов, а справа — второй. То есть, если выработан признак «меньше, чем», значит, первый операнд меньше второго.