Cтраница 1
Переадресуемая команда в 0003 в первоначальном виде восстанавливается до ее выполнения. Это позволяет начинать работу программы, не заботясь о ее восстановлении. [1]
Когда число переадресуемых команд велико, для сокращения длины программы применяется прием, называемый вынесением в стандартные ячейки. [2]
Структурная схема ЦВМ. [3] |
В этой программе имеется 6 переадресуемых команд, отмеченных звездочками. [4]
Некоторые программисты предлагают строить программу так, чтобы она легко разделялась на постоянную и изменяемую части; для этого переадресуемые команды, команды возврата и команды восстановления регистра адреса выносятся в отдельный массив. Такое программирование увеличивает затраты труда, усложняет схему программы ( так как требуется передавать управление на расположенные в одном массиве переадресуемые команды и возвращаться после их выполнения) и несколько удлиняет программу. Часто при решении многовариантных задач изменяемая часть программы бывает относительно невелика. [5]
Так как содержимое СЦ уменьшается при каждом повторении цикла либо на 1, либо на 2, то на соответствующую величину будет возрастать от цикла к циклу адрес переадресуемой команды. Поэтому в адресной части этой команды должно быть записано максимальное значение изменя-ющегося адреса. [6]
Так как содержимое СЦ уменьшается при каждом повторении цикла либо на 1, либо на 2, то на соответствующую величину будет возрастать от цикла к циклу адрес переадресуемой команды. Поэтому в адресной части этой команды должно быть записано максимальное значение изменяющегося адреса. [7]
Операцию переадресации можно задать трехадресной командой, в первом адресе которой указывается адрес переадресуемой команды, во втором - константа переадресации, состоящая из трех отдельных констант ( для всех трех адресов переадресуемой команды), а на месте третьего адреса записывается адрес ячейки, в которую направляется переадресованная команда. [8]
В случае переадресации у команд с изменяющимися адресами перед кодом операции проставляется знак минус. При переадресации число п ( 11 младших разрядов п) вычитается на регистре команд РК из адресной части переадресуемой команды. [9]
Некоторые программисты предлагают строить программу так, чтобы она легко разделялась на постоянную и изменяемую части; для этого переадресуемые команды, команды возврата и команды восстановления регистра адреса выносятся в отдельный массив. Такое программирование увеличивает затраты труда, усложняет схему программы ( так как требуется передавать управление на расположенные в одном массиве переадресуемые команды и возвращаться после их выполнения) и несколько удлиняет программу. Часто при решении многовариантных задач изменяемая часть программы бывает относительно невелика. [10]
Операцию переадресации можно задать трехадресной командой, в первом адресе которой указывается адрес переадресуемой команды, во втором - константа переадресации, состоящая из трех отдельных констант ( для всех трех адресов переадресуемой команды), а на месте третьего адреса записывается адрес ячейки, в которую направляется переадресованная команда. [11]
Автоматическая переадресация требует меньше ячеек памяти и уменьшает опасность ошибок. Если вычитаемое D является переменным, мы можем использовать его наиболее гибким образом. Наконец, когда переадресуемая команда не модифицируется, не требуется предварительной подготовки для вхождения в цикл. [12]
В этом участке программы первые две команды выполняют присваивание счетчику начального значения, а третья команда ( 0 42 а 00003) посылает содержимое счетчика в индексный регистр. Далее следуют команды, выполняемые в цикле. Среди них могут быть переадресуемые команды. [13]