Cтраница 1
Косвенное адресование весьма эффективно и для других команд обращения к памяти ( УП, ПС, ОП, БП) при их отдельном употреблении и совершенно необходимо при организации циклических программ ( см. гл. [1]
В силу использования косвенного адресования к данным ( в теле цикла) их место расположения в ДЮЗУ безразлично. Поэтому иногда оказывается рациональным выносить даже небольшие массивы данных, участвующих в цикле, на отдельную страницу, сохраняя максимум места на текущей странице для команд программы. [2]
Структура команд обращения к памяти.| Структура команд обращения к внешним устройствам. [3] |
В Электронике-100 это противоречие разрешено путем страничной организации памяти и применением прямого и косвенного адресования. Команды обращения к памяти имеют коды операции ( номер команды) с 0-го по б-й включительно; их работа, особенно в части формирования и использования адресов, является наиболее специфичной особенностью Электроники-100. Подробно эти вопросы рассматриваются в гл. [4]
Вариантов всего два: использовать в адресной части команды СЛ прямое или косвенное адресование. [5]
О имеется в некоторой ячейке не на нулевой и не на текущей странице, может использоваться косвенное адресование. В этом случае адрес 20008 заносят в некоторую ячейку на текущей или нулевой странице и затем осуществляют косвенное адресование к этой ячейке. [6]
Приводимая ниже сервисная программа обеспечивает обнаружение команд УП, ПС, ОП ( с прямым или косвенным адресованием на текущую или нулевую страницу), выполнение которых приводит к записи информации по заданному адресу. [7]
В одной из ячеек ( поля констант) данной страницы запасают адрес начала следующей страницы, а последней командой осуществляют безусловную передачу управления с косвенным адресованием к этой ячейке. [8]
Таким образом, адресная часть команд обращения к памяти складывается из семи двоичных разрядов адреса на странице и двух признаков: признака нулевой или текущей страницы и признака прямого или косвенного адресования. При этом две младшие триады адреса на странице целиком переходят в Две младшие триады адресной части команды. [9]
Чтобы предоставить возможность оперировать обеими группами данных после исполнения команды установки N - ro поля данных 62ЛИ, все команды обращения к памяти с прямым адресованием выбирают данные из того же поля, в котором находится программа, а при косвенном адресовании команды ЛУ, СЛ, УП и ПС начинают работать с данными из N-гв поля. [10]
Затем, как и в предыдущем случае, используют команду БП с косвенным адресованием. [11]
Иногда для удобства организации основной программы в дополнительной ячейке памяти, следующей непосредственно за командой ОП, размещают не сами дополнительные данные, а лишь указывают их адрес. В этом случае до самих исходных данных в подпрограмме приходится добираться с помощью двойного косвенного адресования, используя дополнительную рабочую ячейку. [12]
О имеется в некоторой ячейке не на нулевой и не на текущей странице, может использоваться косвенное адресование. В этом случае адрес 20008 заносят в некоторую ячейку на текущей или нулевой странице и затем осуществляют косвенное адресование к этой ячейке. [13]
Для того чтобы одни и те же команды тела цикла могли оперировать каждый раз с новыми данными, необходимо после каждого прохода изменять адреса исходных данных. Исходные данные предварительно запасают в последовательных ячейках памяти ( в виде таблицы), а в командах тела цикла используют косвенное адресование к некоторой рабочей ячейке, куда при работе блока подготовки цикла ( рис. 4.3) заносится начальный адрес таблицы. [14]
Оформление программы в виде подпрограммы. [15] |