RS – «регистр–память»
Команды формата RS имеют длину 4 байта, трехадресные, предназначены для выполнения арифметических операций над переменными в любых числовых «форматах данных». Среди команд формата RS есть команды передачи управления, логические операции, команды сдвига слова влево, арифметического сдвига двойного слова влево и т. д. В командах формата RS 1-й операнд размещается в РОН, адрес которого находится в поле R1, адрес 2-го операнда определяется по формуле
А2= [В2] + D2 (7.4)
где В2 – номер РОН, в котором находится значение базового адреса 2-го операнда, D2 – абсолютное значение смещения младшего байта поля ОП, закрепленного за 2-м операндом, относительно базового адреса.
Результат операции РЗ помещается в РОН, номер которого находится в поле R3 машинной команды.
Задание 3. Используя формат команды RS, заполнить поля команды информацией, представленной в 16-ричной СС, и представить внутреннее содержимое использованных РОН и полей ОП до и после выполнения операции. КОП = AF – операция вычитания чисел без норма-лизации, представленных в форме с плавающей запятой (формат «D»), R1 = 0, R3 = 2, В2 = 4.Значение первого операнда О1 = +27210, значение второго О2 = +13810. Смещение 2-го операнда относительно базового D2 = А00.
Этапность выполнения задания 3:
1. Записать 16-ое представление полей машинной команды:
A F | A 0 0 |
0 7 8 11 12 1516 2324 31
2. Выполнение операции вычитания сводится к следующим действиям: из значения операнда, который находится в 0-м регистре общего назначения, вычесть значение операнда, который находится 8-ми байтном поле ОП, адрес которого определяется по формуле (7.4). Результат операции помещается в РПЗ с номером 2.
3. Представить в 16-ричной СС значения О1, О2 и результата РЗ:
О1 = +27210= 11016, О2 = +13810 = +8А16, РЗ = 13410 = +8616.
4. В соответствии с правилами внутри машинного представления чисел в формате «D» представить содержимое используемых РПЗ, имеющих четные номера 0 и 2, до и после выполнения операции в 16-ричной СС (рис. 7.6).
До выполнения После выполнения
машинной команды машинной команды
А0 | А0 | |||||||||||
A | A | |||||||||||
B | B | |||||||||||
C | C | |||||||||||
D | D | |||||||||||
E | E | |||||||||||
F | F |
Рис. 7.6. Содержимое РОН до и после выполнения машинной команды
5. Исполнительный адрес 2-го операнда определяется по формуле (7.3) и будет иметь значение
А2 = 00А0000016 + А0016 = 00А00А0016.
6. Содержимое поля ОП, в котором размещается 2-й операнд, будет неизменным после завершения выполнения машинной команды (рис. 7.7).
До выполнения После выполнения
машинной команды машинной команды
4 2 | 00A00A00 | 4 2 | 00A00A00 | |||||||||||
8 A | 00A00A01 | 8 A | 00A00A01 | |||||||||||
0 0 | 00A00A02 | 0 0 | 00A00A02 | |||||||||||
2-й операнд | 0 0 | 00A00A03 | 2-й операнд | 0 0 | 00A00A03 | |||||||||
0 0 | 00A00A04 | 0 0 | 00A00A04 | |||||||||||
0 0 | 00A00A05 | 0 0 | 00A00A05 | |||||||||||
0 0 | 00A00A06 | 0 0 | 00A00A06 | |||||||||||
0 0 | 00A00A07 | 0 0 | 00A00A07 | |||||||||||
FFFFFFFF | FFFFFFFF | |||||||||||||
Рис. 7.7. Содержимое ОП до и после выполнения машинной команды