Cтраница 3
Эти пересылки осуществляются последовательно для V и U. Правда, W должно быть специально занесено в сумматор для последующей пересылки в ячейку, отведенную для наибольшего из чисел. Во всяком случае необходимо отметить, что в двухадресной системе команд размещение команд - и запись операций сравнения несколько усложняются. [31]
Так устроена двухадресная система команд. Ее двухадрес-ность определяется числом адресов в команде. Количество адресов ячеек памяти, которые можно упоминать в одной команде, называют адресностью компьютера. Двухадресная система команд наиболее распространенная, но далеко не единственная. Существуют еще одноадресная, трехадресная и даже четырехадресная системы команд. [32]
Существует другой вид двухадресной системы по сравнению с рассмотренной выше. Это двухадресная система команд, в которых остаются адреса ее и б вместо адресов аир. Такая система приводит к тем же характеристикам программы, что и одноадресная система. Такая двухадресная система команд часто называется один-плюс-один-адресной системой. [33]
По сравнению с программами для УМ-3 в программах для УМ-2 появились дополнительные команды пересылки, связанные с тем обстоятельством, что на двухадресной машине результат выполнения операции нельзя отослать на запоминание в любую желаемую ячейку. Таких дополнительных команд возникает не так уж много. А если учесть, что каждая команда на УМ-2 на 12 разрядов короче, чем на УМ-3, то общее число разрядов в памяти, требуемое для хранения программы, для обоих машин будет примерно одинаковым. В типичных программах двухадресная система команд более экономична, чем трехадресная. К тому же сама двухадресная машина несколько проще, чем трехадресная - хотя бы потому, что команда содержит в себе меньше полей, подлежащих хранению и интерпретации в устройстве управления. [34]
![]() |
Структура команд ЦВМ. [35] |
Поскольку для задания арифметической операции необходимо определить адреса трех слов - двух операндов и результата операции, то для хранения одного из слов в ЦВМ используется некоторый регистр, не входящий в состав ЗУ. Таким образом, операция может быть связана со словом, хранимом на регистре, и с двумя словами, хранимыми в ЗУ. Адреса этих двух слов указываются в двухадресной команде. При выполнении арифметических операций для хранения одного слова обычно используется итоговый регистр арифметического устройства. На итоговом регистре может храниться один из операндов, и результат операции также может сохраняться на том же регистре. При использовании двухадресной системы команд операция умножения может представляться командой в следующем виде. Код операции определяет операцию умножения, адрес А1 определяет адрес ячейки ЗУ, в которой хранится множимое, и адрес А2 - адрес множителя. Результат операции сохраняется на итоговом регистре арифметического устройства. Естественно, что в число машинных операций входят операции, обеспечивающие передачи слов из итогового регистра арифметического устройства в заданную ячейку ЗУ. [36]
В случае подключения к машине запоминающего устройства на магнитных сердечниках возможно повышение быстродействия машины до 1500 операций в секунду. Ввод данных в машину и вывод результатов осуществляются при помощи стандартной перфоленты и стандартной телеграфной аппаратуры ( трансмиттер и телетайп) со скоростью 7 чисел в секунду. Более быстрый ввод данных производится при помощи фотоэлектрического вводного устройства, которое обеспечивает скорость ввода 30 десятичных чисел в секунду. Потребляемая мощность составляет 10 кет. Машина имеет 770 электронных ламп и 3000 купрокс-ных диодов. В машине М-3 используется двухадресная система команд, при которой каждая команда состоит из кода операции и двух адресов чисел. [37]
При составлении программ адресная часть трехадресных команд используется лишь частично. Так, при вычислении значений арифметических выражений может оказаться, что результат предыдущей операции должен использоваться как операнд в следующей операции. В этом случае отпадает необходимость в засылке результата предыдущей операции в ЗУ и необходимость в выборке операнда для следующей операции. В связи с этим адрес ЛЗв первой команде и адрес А1 во второй команде не используются. Считается, что при программировании задач эффективно используется в среднем 1 5 адреса в адресной части команды. По этой причине наблюдается тенденция использования одноадресной и двухадресной системы команд. К тому же увеличение емкости запоминающих устройств машин приводит к увеличению длины адреса в командах. В результате этого длина трехадресной команды может значительно превышать длину информационного слова, что может вызвать затруднения при построении схем ЦВМ. По этой причине в дальнейшем рассматриваются схемы ЦВМ в основном с одноадресной системой команд. [38]