Способы адресации операндов

(3 Билет)

Существуют следующие способы адресации операндов:

· Регистровая (операнд – в регистре данных или адреса).

·Косвенно-регистровая (операнд – в ячейке памяти, адресуемой содержимым регистра адреса).

· Косвенно-регистровая с постинкрементом (операнд – в ячейке памяти, адресуемой содержимым регистра адреса, который автоматически увеличивается после выборки операнда).

·Косвенно-регистровая с пердинкрементом (операнд – в ячейке памяти, адресуемое содержимым регистра адреса, которое автоматически уменьшается перед выбором операнда).

· Косвенно-регистровая с индексированием (операнд – в ячейке памяти, ее адрес – сумма содержимого регистра адреса, индексного регистра и задаваемого в команде 8-ми (иногда 16-ти и 32-х) разрядного смещения).

· Прямая (операнд – в ячейке памяти, адрес которой задается числом, указанным в команде).

·Относительная (операнд – в ячейке памяти, адрес которой – сумма текущего содержимого программного счетчика и данного в команде 16-ти (32-х) разрядного смещения).

· Относительная со смещением (операнд –в ячейке памяти, адрес которой – сумма содержимого программного счетчика, индексного регистра и указанного в команде 16-ти (32-х) разрядного смещения).

· Непосредственная (операнд – в команде).

Дополнительно введены следующие способы адресации:

·Косвенно-регистровая с базовым смещением и ндексированием (операнд – в ячейке памяти, адрес которой – сумма адресного базового регистра, индексного регистра (возможно масштабированного) и 32-х разрядного смещения).

·Косвенно-регистровая с постиндексированием (к содержимому адресного (базового) регистра прибавляется смещение, затем прибавляется содержимое индексного регистра и дополнительное смещение, и все это является адресом ячейки памяти, содержащий операнд).

·Косвенно-регистровая с прединдексированием (операнд – в ячейке памяти, адрес которого определяется суммированием содержимого базового регистра, индексного регистра и базового смещения, к которому впоследствии прибавляется дополнительное смещение).

· Относительное с базовым смещением и индексированием (то же, что и 10, только вместо базового регистра используется программный счетчик).

·Косвенно-относительная с постиндексированием (аналогична п. 11, но вместо базового регистра используется программный счетчик).

·Косвенно-относительная с прединдексированием (аналогична п. 12, но вместо базового регистра используется программный счетчик).

Как правило, другой операнд должен присутствовать в регистре адреса или данных