Cтраница 2
В трехадресной команде первый и второй адреса указывают ячейки памяти, в которых расположены операнды, а третий адрес определяет ячейку, в которую помещается результат операции. [16]
В трехадресной команде указываются вид операции, исходные величины и результат операции. В двухадресных машинах результат операции записывается либо в ячейку а2, либо остается в сумматоре, В одноадресных машинах результат операции сохраняется в сумматоре. [17]
В трехадресной команде в большинстве операций над числами два адреса указывают номера ячеек ОЗУ, хранящих два исходных для данной операции операнда, 3 - й адрес определяет ячейку, отведенную для результата. [18]
Структура трехадресной команды. [19] |
В трехадресной команде адреса 1 к 2 указывают местонахождение чисел в памяти машины, которые нужно выбрать для исполнения операции, определяемой кодом операции. Адрес 3 указывает номер ячейки памяти, куда следует послать результат. [20]
В трехадресной команде условного перехода на месте первого адреса Аг пишется адрес числа, над которым проверяется выполнение условия. В случае-квадратного уравнения по адресу Аг записана величина D. Во втором адресе Аг указывается номер ячейки, где хранится команда, к которой следует перейти, если проверяемое условие имеет место. В противном случае переходят к команде, имеющей адрес, на единицу больший, чем адрес команды условного перехода. Третий адрес А3 в данной команде не используется, в нем записываются нули. [21]
В трехадресных командах часто 1 - й и 2 - й адреса используются для выборки операндов, а 3 - й - для засылки результата операции. Однако иногда 3 - й адрес указывает номер ячейки, из к-рой необходимо выбирать следующую команду. [22]
Структурная схема цифровой вычислительной машины. [23] |
Часто применяются трехадресные команды, которые содержат адреса двух исходных чисел ( номера ячеек, где хранятся эти числа в запоминающем устройстве) и адрес ячейки, куда должен быть отправлен результат операции над этими двумя числами. После того, как программа введена в запоминающее устройство, все решение производится автоматически. [24]
Для выполнения каждой трехадресной команды к запоминающему устройству требуется четырехкратное обращение: выборка самой команды, выборка числа из первого адреса, затем из второго и запись результата по третьему адресу. [25]
Выше описан случай трехадресной команды. Если в машине применяется одноадресная система команд, то устройство управления значительно упрощается. Регистр команд содержит только две группы: регистр кода операции и регистр адреса числа - и имеет значительно меньшее число разрядов. Принцип работы устройства управления тот же, что и при трехадресной команде, но требуется меньшее число элементарных действий при выполнении каждой команды. Описанные функции управления принадлежат устройству центрального управления, задачей которого является координация работы основных блоков машины: ЗУ, АУ, внешних устройств. Кроме того, в машине имеются устройства местного управления, обеспечивающие работу отдельных блоков. Например, устройство местного управления ЗУ обеспечивает запись и считывание чисел по заданному адресу, а также их восстановление, если оно требуется. [26]
Рассмотрим наиболее подробно выполнение трехадресной команды по структурной схеме ЭВМ ( см. рис. В. Программа работы ЭВМ и исходные данные записываются на носитель информации с помощью УПД. Затем УВв информация считывается и передается в ОП. Поскольку ОП имеет ограниченную информационную емкость, часть информации размещается во ВЗУ. [27]
Широко распространены ЭВМ с трехадресными командами или трехадресные машины. [28]
Широко распространены ЭВМ с трехадресными командами или трехад-ресные машины. [29]
При составлении программ адресная часть трехадресных команд используется лишь частично. Так, при вычислении значений арифметических выражений может оказаться, что результат предыдущей операции должен использоваться как операнд в следующей операции. В этом случае отпадает необходимость в засылке результата предыдущей операции в ЗУ и необходимость в выборке операнда для следующей операции. В связи с этим адрес ЛЗв первой команде и адрес А1 во второй команде не используются. Считается, что при программировании задач эффективно используется в среднем 1 5 адреса в адресной части команды. По этой причине наблюдается тенденция использования одноадресной и двухадресной системы команд. К тому же увеличение емкости запоминающих устройств машин приводит к увеличению длины адреса в командах. В результате этого длина трехадресной команды может значительно превышать длину информационного слова, что может вызвать затруднения при построении схем ЦВМ. По этой причине в дальнейшем рассматриваются схемы ЦВМ в основном с одноадресной системой команд. [30]