Результат операции посылается в регистр R u следова тельно, арифметическое устройство выполняет операцию:
(ЯіМЯЛ-Яі-
Одновременно с арифметической операцией осуще ствляется продвижение вверх, не затрагивающее ре гистр R 1, т. е. содержимое регистра R3 передается в R2, содержимое — в /?3 и т. д.
Таким образом, арифметические (и некоторые дру гие) операции используют подразумеваемые адреса (за ранее определенные номера регистров), и, следователь но, длина команды, определяющей эти операции, может быть уменьшена. Принципиально, в таких командах до статочно иметь только поле, определяющее код опера ции. Поэтому машины, построенные на основе магазин ной памяти, часто именуют еще безадресными. В то же время команды, осуществляющие вызов или запомина ние информации из главной памяти (с соответствующим продвижением данных вверх или вниз), требуют указа ния адреса операнда. Поэтому машины с магазинной па мятью обычно используют команды переменной длины. Так, в машине KDF-9, имеющей длину машинного слова 48 разрядов, используются три формата команды. Боль шинство арифметических команд являются однобайто выми (восемь разрядов).
Команды обращения к памяти и передачи управле ния являются трехбайтовыми (24 разряда).
Двухбайтовый формат используется в тех командах, где длина параметра (число сдвигов, номер входного устройства и т. д.) меньше длины адреса.
Команды располагаются в памяти в виде непрерыв ного массива байтов независимо от границ ячеек памя ти; двухили трехбайтовые команды могут занимать части соседних ячеек памяти. Переменная длина команд позволяет как экономить объем памяти, затрачиваемый на хранение программы, так и увеличивать быстродей ствие, поскольку за один цикл памяти может быть вы звано несколько команд.
Для того чтобы эффективно использовать преимуще ства магазинной памяти, в состав системы команд ма шины с такой памятью вводят некоторые специальные команды, не имеющие аналогов в машинах с обычной структурой. Одна из таких команд, называемая дубли рованием, осуществляет передачу слова, находящегося