8086CPU的幾種數據尋址方式

1.立即數尋址、寄存器尋址

立即數尋址就是立即數存在於指令中,與指令一同存儲在代碼區。

MOV AX,1234H
MOV [2100H],1234H

寄存器尋址是操作數在寄存器中,直接對寄存器進行讀取,不用通過訪問總線,是效率最高的數據讀取方式。

MOV AX,CX
INC CX

2.直接尋址、寄存器間接尋址

直接尋址就是數據在存儲器中,有效地址在包含在指令中。一般默認段爲DS,也可在指令中使用前綴改變默認段

MOV AX,[1200H]
MOV AX,ES:[2000H]

寄存器間接尋址就是數據在存儲器中,有效地址在(BX/SI/DI)寄存器中,則以DS爲默認段;若有效地址在寄存器BP中,則默認段爲SS

MOV AX,[SI]    ;SI/DI/BX的默認段爲DS  
MOV [BP],CX    ;默認段爲SS

3.寄存器相對尋址

寄存器相對尋址就是操作數在存儲器中,有效地址在基址寄存器(BP/BX)變址制寄存器(SI/DI)中的地址加上指令中給出的偏移量之和

MOV [SI+disp],AX
MOV disp[SI],AX
MOV [SI]+disp,AX

4.基址加變址尋址

基址加變址尋址就是操作數在存儲器中,有效地址是基址寄存器(BX/BI)變址寄存器(SI/DI)的內容相加得到的。

MOV AL,[BS+SI]
MOV [BP][DI],AX

5.相對基址加變址

相對基址加變址就是操作數在存儲器中,有效地址是基址寄存器變址寄存器的內容相加再和指令給出的偏移量相加之和

MOV AX,[BX+SI+disp]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章