Переменные передачи управления

15-08-2013, 17:44
Просмотров: 425
Если содержимое индексного регистра не равно нулю, управление передается по адресу числа. В противном случае управление передается по адресу следующей команды. Восстановление и сложение с индексным регистром. В индексный регистр А засылается нуль и адрес числа складывается с содержимым регистра. Обратите внимание, что в таком виде программа много короче, за счет использования индексных регистров, но блок-схема несколько изменена с тем, чтобы счет шел по индексу 100 до 0. Команда в ячейке, которую мы обозначили словом «возврат», несмотря на это изменение значений, выполняется по возрастающей последовательности значений.

Переменные передачи управления


Машина МИДАК имеет один индексный регистр (счетчик базы), содержимое которого добавляется к тем адресам команды (в ходе выполнения программы), которые имеют отрицательный знак. Одна и та же операция - операция базы - используется для восстановления, увеличения и сравнения содержимого регистра индекса. Обратите внимание, что здесь счетчик изменяется от 0 до 1.
Оценивать сравнительную эффективность машин ИБМ-650 и МИДАК по приведенным примерам не совсем правомерно, так как некоторые из возможностей первой машины не были использованы, например: выполнение команды с сумматора, использование распределительного устройства и т. д. Но все же эти примеры показывают существенные преимущества системы команд трехадресной машины с индексным регистром по сравнению с системой команд одноадресной машины применительно к решению задач рассмотренного типа.
Другим примером изменения адресов является случай переменных передач управления, который может встретиться при выборке из таблиц, что требуется при описании многих процессов вычисления функций, при составлении интерпретирующих программ и при решении других задач, в которых порядок выполнения программы зависит от значения функции.

Источник: delete-it
Автор: Николай Максименко
Опубликовано пользователем: 805 (смотреть все)
Комментарии:
» » » Переменные передачи управления