七種尋址方式:

七種尋址方式:

1、立即尋址方式:

操作數就包含在指令中。作為指令的一部分,跟在操作碼后存放在代碼段。

這種操作數成為立即數。立即數可以是8位的,也可以是16位的。

例如:

指令: MOV AX,1234H

則: AX = 1234H

2、寄存器尋址方式:

操作數在CPU內部的寄存器中,指令指定寄存器號。

對于16位操作數,寄存器可以是:AX、BX、CX、DX、SI、DI、SP和BP等。

對于8位操作數,寄存器可以是AL 、AH、BL、BH、CL、CH、DL、DH。

這種尋址方式由于操作數就在寄存器中,不需要訪問存儲器來取得操作數

因而可以取得較高的運算數度。

3、直接尋址方式:

操作數在寄存器中,指令直接包含有操作數的有效地址(偏移地址)

注:操作數一般存放在數據段

所以操作數的地址由DS加上指令中直接給出的16位偏移得到。如果采用

段超越前綴,則操作數也可含在數據段外的其他段中。

例如:

MOV AX,[8054]

如(DS) = 2000H,

則執行結果為(AX) = 3050H

(物理地址=20000+8054=28054H)

28054H里的內容為3050H

在匯編語言指令中,可以用符號地址代替數值地址

如:MOV AX,VALUE

此時VALUE為存放操作數單元的符號地址。

如寫成:MOV AX,[VALUE]也是可以的,兩者是等效的。

如VALUE在附加段中,則應指定段超越前綴如下:

MOV AX,ES:VALUE 或 MOV AX,ES:[VALUE]

4、寄存器間接尋址方式:

操作數在寄存器中,操作數有效地址在SI、DI、BX、BP

這四個寄存器之一中。在一般情況下,如果有效地址在

SI、DI和BX中,則以DS段寄存器中的內容為段值。如果

有效地址在BP中,則以SS段寄存器中的內容為段值

例如:

MOV AX,[SI]

如果(DS) = 5000H (SI) = 1234H

則物理地址 = ?50000 + 1234 = 51234H

51234H地址中的內容為:6789H

執行該指令后,(AX) = 6789H

5、寄存器相對尋址方式:

操作數在存儲器中,操作數的有效地址是一個基址寄存器(BX、BP)

或變址寄存器(SI、DI)的內容加上指令中給定的8位或16位位移量之和

BX ?8位 位移量

EA(有效地址) = ?BP ?+

SI ?16位 位移量

DI

在一般情況下,如果SI、DI、或BX中的內容作為有效地址的一部分,那么

引用的段寄存器是DS;如果BP中的內容作為有效地址的一部分,那么引用的

段寄存器是SS。

物理地址 = 16d × (DS) + (BX) + 8

或(SI)或16位位移量

或(DI)

物理地址 = 16d × (SS) + (BP) + 8位位移量

或16位位移量

在指令中給定的8位或16位位移量采用補碼形式表示。在計算有效地址時,如

位移量是8位,則被帶符號擴展成16位。

例如:

MOV AX,[DI+1223H]

假設,(DS) = 5000H,(DI) = 3678H

則物理地址 = 50000 + 3678 + 1233 = 5489BH

5489BH地址中的內容:55AAH

執行該指令后AX = 55AAH

下面指令中,源操作數采用寄存器相對尋址,引用的段寄存器是SS: MOV BX,[BP-4]

下面指令中,目的操作數采用寄存器相對尋址,引用的段寄存器是ES: MOV ES:[BX+5],AL

指令:MOV AX,[SI+3]與MOV AX,3[SI]是等價的

6、基址加變址尋址方式:

操作數在寄存器中,操作數的有效地址由:

基址寄存器之一的內容與變址寄存器之一的內容相加

BX ? SI

即: EA = ? ?+

BP ? DI

在一般情況下,如果BP之內容作為有效地址的一部分,則以SS之內容為段值,否則已DS

為段值。

例如:

MOV AX,[BX][DI]

如:(DS)=2100H,

(BX)=0158H,

(DI)=10A5H

則EA=0158 + 10A5 = 11FD

物理地址=21000 + 11FD = 221FDH

221FDH地址中的內容:1234H

執行該指令后AX = 1234H

下面指令中,目的操作數采用基址加變址尋址,

引用的段寄存器是DS: MOV DS:[BP+SI],AL

下面指令中,源操作數采用基址加變址尋址,

引用的段寄存器ES: MOV AX,ES:[BX+SI]

這種尋址方式使用與數組或表格處理。用基址寄存器存放數組首地址,而用變地寄存器

來定位數組中的各元素,或反之。由于兩個寄存器都可改變,所以能更加靈活地訪問數

組或表格中的元素。

下面的兩種表示方法是等價的:

MOV AX,[BX+DI]

MOV AX,[DI][BX]

7、相對基址加變址尋址方式:

操作數在存儲器中,操作數的有效地址由于基址寄存器之一的內容與變址寄存器之一的

內容及指令中給定的8位或16位位移量相加得到。

BX ? ?SI ? ?8位

即: EA = ? ? + ? ? + ? ? ?位移量

BP ? ?DI ? ?16位

在一般情況下,如果BP中的內容作為有效地址的一部分,則以SS段寄存器中的內容為段

值,否則以DS段寄存器中的內容為段值。

在指令中給定的8位或16位位移量采用補碼形式表示。

在計算有效地址時,如果位移量是8位,那么被帶符號擴展成16位。

當所得的有效地址操作FFFFH時,就取其64K的模

例如:

MOV AX,[BX+DI-2]

假設,(DS) = 5000H, (BX) = 1223H, DI = 54H, (51275) = 54H, (51276) = 76H

物理地址= 50000 + 1223 + 0054 + FFFE(-2 各位取反末位加一) = 51275H

執行該指令后 (AX) = 7654H

相對基址加變址這種尋址方式的表示方法多種多樣,以下四種方法均是等價的:

MOV AX,[BX+DI+1234H], MOV AX,1234H[BX][DI]

MOV AX 1234H[BX+DI], ?MOV AX,1234H[DI][BX]

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,663評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,125評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,506評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,614評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,402評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,934評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,021評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,168評論 0 287
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,690評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,596評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,784評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,288評論 5 357
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,027評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,404評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,662評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,398評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,743評論 2 370

推薦閱讀更多精彩內容