Cтраница 4
Адрес памяти предстапляется s виде базы и смещения, причем база помещается в один из общкх регистров от 0 до 15 и в команде указывается его номер. Смещение размещается непосредственно в поле команды п занимает 12 разрядов. [46]
Другую команду обращения к расширенной памяти приходится применять в тех случаях, когда сама программа занимает более куба МОЗУ. N-то поля команд 62W2 заносит N в 3-разрядный регистр поля команд и подготавливает переход в этот куб памяти. Однако сам переход в новое поле происходит лишь тогда, когда после исполнения команды & 2N2 встречается команда ОП или БП. [47]
ПЗУ и ОЗУ выполнены по блочному принципу, ПЗУ наращивается блоками по 2048 слов до емкости 16 384 слова, ОЗУ - блоками по 512 слов до емкости 16 384 слова, при этом каждый блок ОЗУ имеет внешний ( второй) вход для прямого доступа. Ячейки блоков ПЗУ и ОЗУ образуют два информационных поля: поле команд и поле чисел, по 16 384 24-разрядных слова каждое. Эти поля частично пересекаются, образуя смешанное поле, информация из которого может восприниматься ЭВМ и как число, и как команда. [48]
![]() |
Формат команды процессора для знака И Др требуется всег-бинарных операций ( типа сложения да на один адрес меньше. [49] |
При выборе форматов команд разработчики учитывают большое число критериев. Наиболее важными критериями являются: затраты времени на выборку и выполнение команды; наличие в поле команды достаточного места для размещения всей необходимой для выполнения команды информации; кратность длины команды длине минимального адресуемого элемента информации или длине слова ОП. Эти критерии противоречивы и существуют оптимальные решения, хорошо удовлетворяющие всем им. [50]
Поле команды предназначено для задания системе тех действий, которые необходимо выполнить. С помощью информации поля адреса определяются записи, над которыми будут выполняться действия, заданные в поле команды. Данные в поле адреса определяются до уровня элемента технологических объектов. [51]
![]() |
Регистровая память Системы 370. [52] |
Все регистры общего назначения имеют длину полного слова ( 32 бита) и могут быть использованы для хранения данных при выполнении арифметических и логических операций, а также в качестве индексных регистров в операциях над адресами и при индексации. Регистры общего назначения имеют нумерацию с О до 15, и обращение к ним осуществляется по содержимому 4-битового поля R команды. Каждый регистр с плавающей запятой имеет разрядность слова двойной длины ( 64 бита) и может содержать двоичное число в форме с плавающей запятой любого формата: короткого, длинного или повышенной точности. [53]
Вместе с этим основная система команд ( в первую очередь, команды обращения к памяти) рассчитана на работу с одним кубом памяти. Аппаратурно в машине вместе с дополнительными кубами памяти появляются три дополнительных регистра: регистр поля данных, регистр поля команд и регистр запоминания полей. Итак, в общем случае машина может содержать до 8 кубов памяти по 4096 слов каждый. Каждый куб памяти рассматривается как некоторое поле, в котором могут располагаться и команды и данные. Поля нумеруются с 0 до 7 ( очевидно, при этом десятичная и восьмеричная нумерации полей совпадают); команды обращения к расширенному МОЗУ имеют вид 62 / тш, где т и п - восьмеричные числа. [54]
Разработан вариант программы-диспетчера для Электроники-100 с расширенным объемом памяти. В дополнение к указанным функциям диспетчера для минимального комплекта предусмотрена возможность работы с задачами, имеющими различные поле данных и поле команд ( в произвольных кубах МОЗУ), и возможность подключения до 15 внешних устройств, которым разрешен запрос новых задач по каналу прерывания. [55]
Для устранения этих недостатков на некоторых машинах используется переменный формат команд, при котором команды могут иметь различную адресность и различные размеры полей адресов, из чего следует, что и длины команд могут быть различными. При этом формат команды иногда связывается с кодом заданной в ней операции, а иногда он указывается явно в специально отведенном для этой цели поле команды. [56]
Команды 62WCT1 и 62МСТ2, очевидно, должны каждый раз формироваться при работе подпрограммы, так кан до этого неизвестно, куда ( в какой куб памяти) надо будет вернуть управление и какое поле данных при этом установить. Для возможности формирования поля команд в подпрограмме основная программа должна произвести считывание и сообщить ( с помощью некоторой стандартной рабочей ячейки) свой номер поля команд МСт, так как после установки поля команд подпрограммы ( перед передачей ей управления старое содержимое регистра поля команд будет затерто. Старый номер поля данных Л / ст при передаче управления в подпрограмму может быть сохранен в регистре поля данных, однако формирование команд 62 0x1 и 62МСТ2 при этом должно осуществляться в самом начале работы подпрограммы ( с засылкой их - для исполнения - п конец подпрограммы), после чего можно установить нужное подпрограмме поле данных. [57]