操作數(shù)在存儲器中,其有效地址是一個基址寄存器(BX、BP)和一個變址寄存器(SI、DI)的內(nèi)容之和。其有效地址的計算公式如公式所示。
在不使用段超越前綴的情況下,規(guī)定:如果有效地址中含有BP,則缺省的段寄存器為SS;否則,缺省的段寄存器為DS。
例:假設(shè)指令:MOV BX, [BX+SI],在執(zhí)行時,(DS)=1000H,(BX)=2100H,(SI)=0011H,內(nèi)存單元12111H的內(nèi)容為1234H。問該指令執(zhí)行后,BX的值是什么?
解:根據(jù)基址加變址尋址方式的規(guī)則,在執(zhí)行本例指令時,源操作數(shù)的有效地址EA為:
EA=(BX)+(SI)=2100H+0011H=2111H
該操作數(shù)的物理地址應(yīng)由DS和EA的值形成,即:
PA=(DS)*16+EA=1000H*16+2111H=12111H
所以,該指令的執(zhí)行效果是:把從物理地址為12111H開始的一個字的值傳送給BX。
其執(zhí)行過程如圖所示。