Microprocessore - Modalità di indirizzamento 8086

I diversi modi in cui un operando sorgente è indicato in un'istruzione sono noti come addressing modes. Ci sono 8 diverse modalità di indirizzamento nella programmazione 8086 -

Modalità di indirizzamento immediato

La modalità di indirizzamento in cui l'operando dei dati fa parte dell'istruzione stessa è nota come modalità di indirizzamento immediato.

Esempio

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

Registra la modalità di indirizzamento

Significa che il registro è la sorgente di un operando per un'istruzione.

Esempio

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

Modalità di indirizzamento diretto

La modalità di indirizzamento in cui l'indirizzo effettivo della posizione di memoria viene scritto direttamente nell'istruzione.

Esempio

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

Registra la modalità di indirizzamento indiretto

Questa modalità di indirizzamento consente ai dati di essere indirizzati in qualsiasi posizione di memoria tramite un indirizzo di offset contenuto in uno dei seguenti registri: BP, BX, DI e SI.

Esempio

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

Modalità di indirizzamento basata

In questa modalità di indirizzamento, l'indirizzo di offset dell'operando è dato dalla somma dei contenuti dei registri BX / BP e dello spostamento a 8 bit / 16 bit.

Esempio

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

Modalità di indirizzamento indicizzato

In questa modalità di indirizzamento, l'indirizzo di offset degli operandi viene trovato aggiungendo il contenuto del registro SI o DI e gli spostamenti a 8 bit / 16 bit.

Esempio

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

Modalità di indirizzamento basato su indice

In questa modalità di indirizzamento, l'indirizzo di offset dell'operando viene calcolato sommando il registro di base al contenuto di un registro di indice.

Esempio

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

Basato indicizzato con modalità di spostamento

In questa modalità di indirizzamento, l'offset degli operandi viene calcolato aggiungendo il contenuto del registro di base. Un indice registra i contenuti e lo spostamento a 8 o 16 bit.

Esempio

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