Микропроцессор - режимы адресации 8086

Различные способы обозначения исходного операнда в инструкции известны как addressing modes. В программировании 8086 есть 8 различных режимов адресации:

Режим немедленной адресации

Режим адресации, в котором операнд данных является частью самой инструкции, известен как режим немедленной адресации.

пример

MOV CX, 4929 H, ADD AX, 2387 H,  MOV AL, FFH

Зарегистрируйте режим адресации

Это означает, что регистр является источником операнда для инструкции.

пример

MOV CX, AX   ; copies the contents of the 16-bit AX register into  
             ; the 16-bit CX register),  
ADD BX, AX

Режим прямой адресации

Режим адресации, при котором эффективный адрес ячейки памяти записывается непосредственно в инструкции.

пример

MOV AX, [1592H], MOV AL, [0300H]

Зарегистрировать режим косвенной адресации

Этот режим адресации позволяет адресовать данные в любую ячейку памяти через адрес смещения, хранящийся в любом из следующих регистров: BP, BX, DI и SI.

пример

MOV AX, [BX]  ; Suppose the register BX contains 4895H, then the contents  
              ; 4895H are moved to AX 
ADD CX, {BX}

Режим адресации на основе

В этом режиме адресации адрес смещения операнда задается суммой содержимого регистров BX / BP и смещения 8/16 бит.

пример

MOV DX, [BX+04], ADD CL, [BX+08]

Индексированный режим адресации

В этом режиме адресации адрес смещения операндов находится путем сложения содержимого регистра SI или DI и смещения 8/16 бит.

пример

MOV BX, [SI+16], ADD AL, [DI+16]

Режим адресации на основе индекса

В этом режиме адресации адрес смещения операнда вычисляется путем суммирования базового регистра с содержимым регистра индекса.

пример

ADD CX, [AX+SI], MOV AX, [AX+DI]

На основе индексации с режимом смещения

В этом режиме адресации смещение операндов вычисляется путем добавления содержимого базового регистра. Индекс регистрирует содержимое и 8- или 16-битное смещение.

пример

MOV AX, [BX+DI+08], ADD CX, [BX+SI+16]