Четырёхадресные команды

 
  Четырёхадресные команды - student2.ru

А1 – адресная часть команды, в которой содержится информация об адресе первого операнда.

А2 – содержит информацию об адресе второго опранда.

А3 – содержит информацию об адресе, по которому должен быть помещён результат.

А4 – содержится информация об адресе следующей выполняемой команды.

Микропрограмма выполнения четырёхадресной команды. Структура операционной части ЦП.

В полях А1, А2, А3, А4 в простых случаях задаются адреса ячеек ОП: адреса операндов, результата и выполняемой команды.

Четырёхадресные команды - student2.ru ОП

Четырёхадресные команды - student2.ru

ЗМ
Р Ч П
Р А П
Чт

Четырёхадресные команды - student2.ru Зп

 
  Четырёхадресные команды - student2.ru

РК

       
  Четырёхадресные команды - student2.ru
    Четырёхадресные команды - student2.ru
 

Четырёхадресные команды - student2.ru

       
  Четырёхадресные команды - student2.ru
    Четырёхадресные команды - student2.ru
 

1 этап. Выбор машинной команды.

РАП = РК (А4) – адрес следующей команды подаётся в память.

РЧП = Чт (РАП) – на РЧП прочитали команду, т.к. её адрес был подан на РАП.

РК = РЧП – пересылка в ЦП машинной команды.

2 этап. Дешифрация.

3 этап. Формирование исполнительного адреса и выбор операндов.

РАП = РК (А1) – адрес первого операнда подаётся в память.

РЧП = Чт (РАП) – из памяти прочитали первый операнд.

РА = РЧП – первый операнд переслали на регистр РА АЛУ.

РАП = РК (А2)

РЧП = Чт (РАП)

РВ = РЧП

4 этап. Выполнение операций в АЛУ.

РС = РА оп РВ

5этап. Запись результата.

РАП = РК (А3) – адрес результата подаётся в память.

РЧП = РС -результат подаётся в память

Зп (РАП) = РЧП -результат записывается в запоминающий массив

А3
А2
А1
коп
Трёхадресные команды.

При переходе к трёхадресной системе адрес следующей выполняемой команды будет храниться на счётчике команд (СчК). По сравнению с предыдущим пунктом меняется только первый этап в микропрограмме.

Четырёхадресные команды - student2.ru ОП

Четырёхадресные команды - student2.ru

ЗМ
Р Ч П
Р А П
Чт

Четырёхадресные команды - student2.ru Зп

 
  Четырёхадресные команды - student2.ru

РК

           
    Четырёхадресные команды - student2.ru   Четырёхадресные команды - student2.ru
  Четырёхадресные команды - student2.ru
 
 

Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru

           
  Четырёхадресные команды - student2.ru
    Четырёхадресные команды - student2.ru
      Четырёхадресные команды - student2.ru
 

Четырёхадресные команды - student2.ru

           
    Четырёхадресные команды - student2.ru
  Четырёхадресные команды - student2.ru
      Четырёхадресные команды - student2.ru
 
 




1 этап. Выбор машинной команды.

РАП = СчК

РЧП = Чт (РАП)

РК = РЧП

СчК = СчК + n

2 – 5 этапы – Аналогично.

Двухадресные команды.

А2
А1
коп
Нет поля А3.

Результат записываем либо по адресу А1, либо по адресу А2 (тогда этот операнд, на место которого будет записан результат, сотрётся, и нужна дополнительная команда, чтобы перезаписать этот операнд, если он понадобится для другой команды).

Одноадресные команды.

Четырёхадресные команды - student2.ru

Регистр-аккумулятор добавляется в структуру ЦП. В него помещается второй операнд до выполнения одноадресной команды.

Безадресные команды.

коп
Используется стек.

Четырёхадресные команды - student2.ru z=c+b

Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru c + b = z

           
  Четырёхадресные команды - student2.ru
    Четырёхадресные команды - student2.ru   Четырёхадресные команды - student2.ru
 
 

ü

ü Самый оптимальный вариант – это двухадресные и трёхадресные команды.

Способы адресации.

Адресный код команды в полях Аi в большинстве случаев не совпадает с исполнительным адресом.

Под исполнительным адресом понимается физический адрес ячейки памяти, по которому хранится информация, или же по которому её необходимо записать.

1.

Аi
коп
Прямая адресация.

В адресном поле Аi хранится непосредственно исполнительный адрес.

Структурная схема.

Аi
коп

Четырёхадресные команды - student2.ru

  операнд
ОП

Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru адрес операнд АЛУ

РАП = РК (Аi)

РЧП = Чт (РАП)

РА = РЧП

2. Непосредственная адресация.

В адресном поле команды хранится операнд.

Структурная схема.

коп
Аi

Четырёхадресные команды - student2.ru

операнд АЛУ

РА = РК (Аi)

При непосредственной адресации можно только считывать операнд, но нельзя записывать результат на место Аi.

3. Косвенная адресация.

В адресном поле команды хранится адрес ячейки ОП, по которому находится адрес операнда (то есть адрес адреса).

Структурная схема.

 
  Четырёхадресные команды - student2.ru

  адрес операнда     операнд
ОП

       
  Четырёхадресные команды - student2.ru
 
    Четырёхадресные команды - student2.ru

Четырёхадресные команды - student2.ru адрес операнда

Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru операнд АЛУ

Четырёхадресные команды - student2.ru

РАП = РК (Аi) – подаём в память адрес адреса операнда.

РЧП = Чт (РАП) – получили адрес операнда.

РАП = РЧП

РЧП = Чт (РАП) – получили операнд.

РА = РЧП

4. Регистровая адресация.

В адресном поле команды указывается номер РОНа, в котором хранится операнд.

Структурная схема.

коп
Ri

 
  Четырёхадресные команды - student2.ru

  операнд
ОП

Четырёхадресные команды - student2.ru Четырёхадресные команды - student2.ru Номер РОНа операнд АЛУ

Четырёхадресные команды - student2.ru

РОНы используются для сокращения времени доступа за операндами.

Наши рекомендации