Cтраница 3
В команде в общем случае должны быть указаны вид действия, место хранения в машине ( адрес) исходной информации, над которой производится машинная операция, адрес результата, а также следующая команда, которая должна быть выполнена после данной. Для арифметических действий ( или операций) исходная информация задается, как правило, в виде двух чисел, следовательно, в команде для нее должны быть указаны два адреса. Таким образом, команда должна содержать код операции, задающий вид выполняемой машинной операции, и четыре адреса: два адреса операндов, адрес результата и адрес следующей команды. [31]
В команде в общем случае должны быть указаны вид действия, место хранения в машине ( адрес) исходной информации, над которой производится машинная операция, адрес результата, а также следующая команда, которая должна быть выполнена после данной. Для арифметических действий ( или операций) исходная информация представляется, как правило, в виде двух чисел, следовательно, в команде для нее должны быть указаны два адреса. Таким образом, команда должна содержать код операции, задающий вид выполняемой машинной операции, и четыре адреса: два адреса операндов, адрес результата и адрес следующей команды. [32]
![]() |
Общая структурная схема центрального устройства управления. [33] |
Если все действия, связанные с преобразованием кодов команд в наборы управляющих сигналов и исполнительные адреса, выполняются непосредственно в ЦУУ, то это устройство в общем случае включает в свой состав следующие блоки ( рис. 67): выборки команд БВК, центрального управления БЦУ, адреса результата БАР, местной памяти БМП, сумматора адреса БСА, выборки данных БВД. [34]
Поэтому в качестве адреса результата обычно используется адрес одного из операндов и результат замещает один из операндов. Это позволяет значительно сократить длину адресной части команды, но приводит к необходимости введения посылочных операций, которые не выполняют никаких действий, кроме копирования информации в памяти или между памятью и одним из регистров процессора. [35]
Возможны команды другой структуры. Например, трехадресная команда помимо адресов операндов содержит и адрес результата. [36]
Наиболее гибкая команда требует до четырех операндов. Например, команда сложения может указывать адреса слагаемых, адрес результата и адрес следующей команды. Если байт содержит 8 бит, а для задания адреса требуется 16 бит, то четырех-операндная команда займет 8 байт памяти, не учитывая кода операции. Когда память имеет 8 линий данных, команда будет выбираться из нее за 9 обращений. [37]
![]() |
Блок-схемн системы прерывания команд. [38] |
ЗУ, определяется адресностью машины и типом выполняемой команды. Результат операции в ряде многоадресных машин записывается в ЗУ по адресу результата, находящемуся в коде выполняемой команды. В одноадресных машинах для этого требуется отдельная команда записи. [39]
Команда может быть предварительно выбрана при использовании перекодированного логического адреса только в том случае, если соответствующие строки таблиц динамической переадресации доступны и действительны. Различные адреса предвыбранных команд могут рассматриваться одним и тем же адресом результата выполняемой команды только в том случае, если для них используются одинаковые логические адреса. В случае когда CPU вводит или исключает режим переадресации, когда прозводятся изменения параметров режима переадресации, содержащихся в управляющих регистрах 0 и 1, в то время как процессор находится в режиме переадресации, когда выполняется операция, не допускающая совмещения, и когда процессор переходит в состояние работа, все предвыбран-ные до этого момента команды отбрасываются. [40]
В первой колонке записаны символические коды операций, а в последующих - адреса. При этом сначала записывают адреса участвую-ющих в операции чисел, а затем - адрес результата. [41]
![]() |
Фрагмент системы команд. [42] |
Код операции указывает машине, какую операцию она должна выполнить. В адресной част команды указываются адреса чисел, над которыми необходимо выполнить операцию и адрес результата. [43]
Первый тип двухадресной системы команд по существу близок к трехадресной системе и использует тот факт, что в трехадресных командах редко все три адреса бывают различны. Поэтому один из адресов в двухадресной команде может одновременно означать и адрес аргумента, и адрес результата. [44]
На пятом этапе производится выполнение действий над операндами в арифметическо-логическом блоке и запись результата по адресу первого операнда. Для этого содержимое РЧ1 и РЧ2 передается в АЛБ, а содержимое РКЧ принимается в РКТ блока адреса результата. [45]