Cтраница 1
Трехадресная система команд содержит в каждой команде три адреса: два адреса исходных чисел и адрес результата операции. [1]
Трехадресная система команд в техническом отношении не дает преимущества в скорости работы машины по сравнению с одноадресной, так как практически установлено, что в среднем количество обращений к запоминающему устройству в том и другом случае примерно одинаково. [2]
При трехадресной системе команд за один такт м-ашины выполняется операция, указываются адреса двух исходных чисел и адрес направления полученного результата. [3]
Таким образом, трехадресная система команд дает лишь некоторые удобства при программировании; поскольку в каждой трех-адресной команде можно задать больше информации, то в этом смысле трехадресная команда более содержательна, чем одноадресная, и поэтому на реализацию того или иного алгоритма требуется меньшее количество команд. Однако одноадресная система команд обладает тем существенным преимуществом, что для своей реализации она требует меньшего количества оборудования в машине - как за счет большей простоты каждой команды, так и за счет того, что команды изображаются более короткими словами. [4]
Рассмотрим в качестве примера трехадресную систему команд с длиной слова в 27 двоичных ( 9 восьмиричных) разрядов. Пусть три восьмиричных разряда отводятся для кода операции; тогда а каждый адрес в команде останется по два восьмиричных разряда, что позволяет иметь максимальную емкость памяти в 26 64 слова. Для увеличения допустимой емкости памяти нужно воспользоваться косвенной адресацией. Тогда до выполнения команды в соответствующие регистры должны быть занесены желаемые 16-разрядные адреса. [5]
В машинах типа М-20 принята трехадресная система команд. Каждый адрес содержит 12 двоичных разрядов и представляет собой либо номер ячейки внутри некоторого куба, либо некоторое число, участвующее в операции как аргумент. [6]
В практических условиях наиболее часто применяются одноадресные, двухадресные и трехадресные системы команд. Иногда применяются и более высокие системы адресов. [7]
В этом параграфе мы рассмотрим примеры программ, составленных для электронной вычислительной машины с трехадресной системой команд. Эти программы получаются из рассмотренных ранее алгоритмов путем их переработки с учетом того, что их исполнителем будет теперь уже не человек, а автоматическая машина с рассматриваемой системой команд. [8]
Электронная цифровая машина, входящая в состав системы БИЗМАК, представляет собой программно-управляемую машину с трехадресной системой команд, работающую в двоичной системе счисления. Скорость вычислений около 25000 сложений в секунду; машина имеет оперативное запоминающее устройство на магнитных сердечниках и отдельное запоминающее устройство для хранения программы. Особенностью машины являются ее способность обрабатывать не только цифровую, но и буквенную информацию и способность подключать к себе в качестве входа до 5 магнитных лент и в качестве выхода до 10 магнитных лент. [9]
Например, операция: передать число из ячейки а в ячейку а2 в одноадресной системе команд займет два адреса, в то время как в трехадресной системе команд в этом случае третий адрес является лишним. [10]
По современным понятиям, система команд машин типа М-20 обладает целым рядом недостатков, а именно: слабо развитая система модификации адресов, по существу, наличие только одного индексного регистра на все три адреса команды, отсутствие аппарата, позволяющего строить свободно перемещаемые программы ( отсутствие базирования), и, наконец, трехадресная система команд не столь удобна для реализации трансляторов с языков высокого уровня, как безадресная или одноадресная система. [11]
Трехадресная система команд была принята почти без обсуждения. [12]
Помимо быстродействия арифметического устройства, существенным фактором, определяющим скорость работы машин, является время обращения к запоминающему устройству. При трехадресной системе команд для выполнения одного действия приходится обращаться четыре раза к запоминающему устройству. Таким образом, время обращения к запоминающему устройству имеет существенное значение для определения общей скорости работы машины. [13]
Вторым фактором, определяющим скорость работы машины, является время обращения к запоминающему устройству. При трехадресной системе команд для выполнения одного действия приходится обращаться 4 раза к запоминающему устройству. Таким образом, время обращения к запоминающему устройству имеет существенное значение для оценки общей скорости работы машины. [14]
По структуре команды могут различаться числом содержащихся в них адресов. Наиболее употребительными являются одноадресные и трехадресные системы команд. [15]