26
затем сигналы УЗ и У9 обеспечат пересылку разности из
аккумулятора в ячейку памяти, на которую указывает
предпоследнее поле команды;
наконец, с помощью сигналов У4 и У7 будет произведена
перепись в регистр команд следующей команды программы.
Рассмотренная структура процессора и реализуемая им
структура четырехадресной команды кажутся вполне естественными.
Действительно, без усложнения доступа к содержимому ячеек
памяти нельзя одновременно получать из нее оба операнда и,
следовательно, первый операнд приходится сохранять в процессоре
до момента получения следующего операнда. Поэтому в состав
процессора и включен аккумулятор (он назван так потому, что может
быть использован для накопления – аккумуляции – слагаемых в
процессе получения суммы многих слагаемых или накопления
результатов других вычислений).
Нужен и регистр для хранения в процессоре исполняемой команды
(регистр команд), так как во время выполнения этой команды из нее
должна выбираться различная информация, используемая устройством
управления и памятью. Однако целесообразно ли хранить в регистре
команд одновременно все поля команды, если они все равно используются
последовательно?
Когда команда хранится в одной ячейке памяти, то не существует
возможности считывания из памяти отдельных полей этой команды.
Поэтому лучше поставить вопрос так: целесообразно ли хранить
четырехадресную команду в одной ячейке памяти или лучше хранить ее
отдельные поля в нескольких ячейках памяти?
Короткую четырехадресную команду (см. рис. 1.8,а) безусловно
следует целиком хранить в 16-битовой ячейке памяти. Но такая команда
может адресовать лишь 2
3
= 8 ячеек памяти. Современные же микроЭВМ
адресуются к памяти, содержащей не менее 2
16
= 65 536 ячеек. Если
создавать четырех-адресную команду, работающую с памятью подобных
размеров, то на каждое адресное поле команды придется отвести 16 бит, а
на всю команду (при 16-битовом коде операции) — 80 бит. Однако ЭВМ,
работающую с такими командами, уже нельзя назвать микроЭВМ, так как
она будет содержать очень много оборудования: 80-разрядные, ячейки
памяти, 80 разрядные регистры, 80-разрядное АЛУ, 80-разрядные
вентильные схемы, шины шириной 80 и т. д. Следовательно, надо либо
четырехадресную команду хранить в ячейках памяти в виде отдельных ее
полей, либо уменьшать число адресных полей команды.
Среди команд современных ЭВМ практически не встречаются
четырехадресные. Мало и трехадресных команд (см. рис. 1.5,г ) , так
как результат операции почти всегда можно записать на место
одного из уже использованных операндов. Наибольшее