|
Рассмотрим теперь группу операций перехода после цикла. Эти операции обеспечивают передачу управления по второму исполнительному адресу при выполнении определенных условий и засылку в индекс-регистр значения третьего исполнительного адреса. Если я3 = 1, то в индекс-регистр будет послана величина Янов - AS = Яст + А3 (mod 212) (индексы «нов» и «ст» обозначают соответственно новый и старый), т. е. при каждом выполнении команды к значению И будет прибавляться код А3. Если условия перехода по А'2 не выполнены, то управление передается следующей по порядку команде. Выпишем операции, используемые для сравнения значения И; результат выполнения команд приблизительно описывается записью на Алголе, подробное объяснение дано ниже (в скобках записаны восьмеричные коды операций). означает, что значение С индекс-регистра, с которым началось выполнение операции Я<Л, сравнивается с числом, равным первому исполнительному адресу команды. Если значение С меньше этого числа, происходит передача управления по второму исполнительному адресу (т. е. следующей выполнится команда, находящаяся в ячейке А); независимо от исхода сравнения в индекс-регистр заносится значение третьего исполнительного адреса. Необходимо подчеркнуть, что во всех вышеприведенных командах окончания цикла первый и третий адрес рассматриваются не как адрес некоторой ячейки, а как двенадцатиразрядное двоичное число. С числом, представленным первым исполнительным адресом, сравнивается значение индекс-регистра, число, равное A3, заносится в индекс-регистр. Команда И ^ А выполняется аналогично команде Я < Л, но для перехода по второму адресу необходимо выполнение условия С^А[. При выполнении следующих четырех операций (1Я < Л, 1Я^Л, 0Я < Л, 0Я ^ Л) кроме значения С анализируется значение признака со, оставшееся от предыдущей команды. Так, при выполнении команды п 1Я < А кх А2 А3 для передачи управления в ячейку А2 необходимо одновременное соблюдение двух условий: С <; А{ и со = 1. Если хоть одно из этих условий не выполнено, управление передается следующей команде. Условия, необходимые для передачи управления по А'2 при выполнении операций 1Я ^ Л, ОЯ < Л и ОЯ ^ Л, ясны из записи их действия на Алголе (и из условного обозначения кода операций этих команд).
|