Cтраница 1
Использование косвенной адресации позволяет экономно организовывать и счетчики. [1]
Использование косвенной адресации данных задается определенным флажком в CCW, который, будучи установленным в 1, указывает на то, что адрес данных в CCW не используется для непосредственной адресации данных. Вместо этого адрес в CCW указывает на список слов, называемых словами косвенной адресации данных ( IDAW), каждое из которых содержит абсолютный адрес области данных в пределах 2048-байтового блока памяти. Если в CCW установлен в 1 бит косвенной адресации данных, то биты 8 - 31 в CCW определяют адрес первого слова списка слов косвенной адресации, который будет использоваться для организации передачи данных по этой команде. Дополнительные слова IDAW, если они требуются для передачи данных в этой операции, выбираются из смежных ячеек основной памяти. [2]
Такое использование косвенной адресации может быть расширено: в регистре может содержаться адрес адреса элемента данных. Таким образом, здесь используются три уровня адресации: номер регистра, адрес адреса элемента данных и адрес элемента данных. Поскольку для хранения адреса требуется слово, при такой косвенной адресации увеличение или уменьшение производится всегда на два. [3]
![]() |
Области памяти, адресуемые 1-и 2-байтовыми командами прямой адресации. [4] |
Иначе говоря, использование косвенной адресации дает наибольший эффект при записи и чтении следующих друг за другом областей памяти. Примером может служить задача организации файла данных в памяти согласно блок-схеме алгоритма на рис. 6.10. В основу организации этого файла положен принцип косвенной регистровой адресации. Из порта ввода-вывода данные загружаются в аккумулятор, а затем записываются в следующие друг за другом области памяти. Используемые для этого команды подробно рассматриваются в гл. Каждому пронумерованному блоку блок-схемы алгоритма соответствует одна команда. [5]
Как и в других случаях использования косвенной адресации, при исполнении команды К ПП N может происходить модификация содержимого адресуемого регистра в зависимости от номера регистра. [6]
Может ли фактический адрес, получаемый при использовании косвенной адресации, быть нечетным. [7]
![]() |
PIC-программа, требующая дополнительной настройки. [8] |
Рассмотрим приведенный выше пример обнуления ячейки А с использованием косвенной адресации. Указатель на это слово, задаваемый как X, должен изменяться при перемещении программы. В сегменте программы, приведенном на рис. 4.5, его значение вычисляется при каждом исполнении. В данном примере оно не зависит от значения счетчика ячеек во время ассемблирования и определяется только значением счетчика PC во время загрузки программы. [9]
![]() |
Способ обращения к двум определенным байтам данных в массиве. [10] |
Обращение производится к двум четырехбайтовым числам - к байтам А с использованием косвенной адресации, к байтам В с использованием индексированной адресации. [11]
![]() |
Инициализация массива с помощью команд, использующих косвенную адресацию. [12] |
В программе, приведенной на рис. 5.10, инициализация массива выполняется с использованием косвенной адресации. [13]
На рис. 13.4 - 13.7 представлены блок-схемы и программы решения одной и той же задачи при использовании косвенной адресации по регистру и адресации с индексированием. Для данной задачи более простой получается программа с применением второго способа адресации. [14]
Вычисляемый оператор GOTO является широко используемым оператором языка ФОРТРАН, применяемым для реализации перехода по нескольким ветвям. Использование косвенной адресации и команды абсолютного безусловного перехода позволяет легко запрограммировать его на языке ассемблера. [15]