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. Содержимое ОП до и после выполнения машинной команды