Разделы:
Best links:
Организация памяти и способы адресации
Косвенная регистровая адресация. Исполнительный адрес операнда содержится в одном из регистров ВХ, SI или DI, код которого задается в постбайте (рис. 1.7, б, в, д).
Адресация по базе. Реализуется с использованием постбайта, в котором указывается один из регистров ВХ, ВР или DI, содержащий 16-разрядный базовый адрес. Исполнительный адрес операнда формируется путем сложения этого базового адреса и 8- или 16-разрядного смещения, указанного в команде непосредственно за постбайтом (рис. 1.7,6); 8-разрядное смещение рассматривается как число со знаком, т. е. его значение лежит в диапазоне от -128 до +127. Использование адресации по базе позволяет осуществить доступ к элементам упорядоченных структур данных, когда смещение конкретного элемента данных известно, а базовый адрес структуры вычисляется по программе.
Адресация с индексированием. В формате команды непосредственно за постбайтом задается 16-разрядный базовый адрес, а в постбайте указывается один из регистров ВХ, ВР, SI или DI, в котором хранится индекс (рис. 1.7, д). Адресация с индексированием логически эквивалентна адресации по базе с 16-разрядным смещением. Различие заключается в том, что 16-разрядное смещение интерпретируется как базовый адрес, а регистр хранит индекс. Однако поскольку любой из указанных четырех регистров может применяться как при адресации по базе, так и • при адресации с индексированием, указанное различие является несущественным.
Адресация по базе с индексированием. Если в предыдущих способах адресации либо базы, либо смещения были фиксированы при выполнении команды и задавались в формате команды непосредственно, то адресация по базе с индексированием позволяет задавать оба этих параметра в регистрах (рис. 1.7,б,в). Это дает возможность вычислить во время выполнения программы как базовый адрес структуры данных, так и смещение одного из ее элементов.
предыдущаяследующая© Copyright, 2009.
Для связи: info@dgs-srl.com.