版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、80 x86的尋址方式的尋址方式計(jì)算機(jī)是通過執(zhí)行指令序列來解決問題的,因此每種計(jì)算機(jī)都計(jì)算機(jī)是通過執(zhí)行指令序列來解決問題的,因此每種計(jì)算機(jī)都有一組指令系統(tǒng)提供給用戶使用,這組指令集就稱為計(jì)算機(jī)的有一組指令系統(tǒng)提供給用戶使用,這組指令集就稱為計(jì)算機(jī)的指令系統(tǒng)。指令系統(tǒng)。計(jì)算機(jī)中的指令由計(jì)算機(jī)中的指令由操作碼操作碼字段和字段和操作數(shù)操作數(shù)字段兩部分組成。字段兩部分組成。指令的操作碼字段在機(jī)器里面的表示比較簡(jiǎn)單,只需對(duì)每一種指令的操作碼字段在機(jī)器里面的表示比較簡(jiǎn)單,只需對(duì)每一種操作指定確定的二進(jìn)制代碼就可以了。操作指定確定的二進(jìn)制代碼就可以了。指令的操作數(shù)字段情況較為復(fù)雜。指令的操作數(shù)字段情況較為復(fù)
2、雜。確定指令中用于說明操作數(shù)所在地址的方法稱為確定指令中用于說明操作數(shù)所在地址的方法稱為尋址方法尋址方法。8086/8088有有七種七種基本的尋址方式?;镜膶ぶ贩绞健?操作碼操作碼 操作數(shù)操作數(shù) . 操作數(shù)操作數(shù)1.立即尋址方式立即尋址方式操作數(shù)就包含在指令中,它操作數(shù)就包含在指令中,它作為指令的一部分,跟在操作后存作為指令的一部分,跟在操作后存放在代碼段放在代碼段,這種操作數(shù)就稱為立即數(shù)。,這種操作數(shù)就稱為立即數(shù)。立即數(shù)可以是立即數(shù)可以是8位的,也可以是位的,也可以是16位的。位的。如果是如果是16位立即數(shù),按位立即數(shù),按“高高低低高高低低”原則進(jìn)行讀取。原則進(jìn)行讀取。例如:例如:MOV
3、AX, 1234H再如:再如:MOV AL, 5則執(zhí)行指令后(則執(zhí)行指令后(AL)=05H MOV BX, 2064H則執(zhí)行指令后,(則執(zhí)行指令后,(BX)=3064H2.寄存器尋址方式寄存器尋址方式操作數(shù)在操作數(shù)在CPU內(nèi)部的寄存器中,指令指定寄存器號(hào)。內(nèi)部的寄存器中,指令指定寄存器號(hào)。對(duì)于對(duì)于16位操作數(shù),寄存器可以是:位操作數(shù),寄存器可以是:AX,BX,CX,DX,SI,DI,SP,BP對(duì)于對(duì)于8位操作數(shù),寄存器可以是:位操作數(shù),寄存器可以是:AL,AH,BL,BH,CL,CH,DL,DH這種尋址方式由于操作數(shù)就在寄存器中,不需要訪問存儲(chǔ)器來這種尋址方式由于操作數(shù)就在寄存器中,不需要訪問
4、存儲(chǔ)器來取得操作數(shù),因而可以取得較高的運(yùn)算速度。取得操作數(shù),因而可以取得較高的運(yùn)算速度。例如:例如:MOV AX, BX如指令執(zhí)行前(如指令執(zhí)行前(AX)=3064H, (BX)=1234H。則指令執(zhí)行后,。則指令執(zhí)行后,(AX)=1234H,(BX)保持不變保持不變又如:又如:MOV SI, AXMOV AL, DH都是寄存器尋址的的例子。都是寄存器尋址的的例子。3.直接尋址方式直接尋址方式操作數(shù)在寄存器中,指令直接操作數(shù)在寄存器中,指令直接包含有操作數(shù)的有效地址包含有操作數(shù)的有效地址(偏移(偏移地址)。地址)。操作數(shù)一般存放在數(shù)據(jù)段操作數(shù)一般存放在數(shù)據(jù)段。所以,操作數(shù)低地址由所以,操作數(shù)低
5、地址由DS加上指令中直接給出的加上指令中直接給出的16位偏移得位偏移得到。到。例如:如果例如:如果(DS)=2000H ,MOV AX, 8054H在匯編語言指令中,可以在匯編語言指令中,可以用符號(hào)地址代替數(shù)值地址用符號(hào)地址代替數(shù)值地址,如:如:MOV AX, VALUE此時(shí),此時(shí),VALUE為存放操作數(shù)單元的符號(hào)地址。為存放操作數(shù)單元的符號(hào)地址。如寫成:如寫成:MOV AX, VALUE也是可以的,兩者等價(jià)。也是可以的,兩者等價(jià)。如如VALUE在附加段中,則應(yīng)指定段超越前綴如下:在附加段中,則應(yīng)指定段超越前綴如下:MOV AX , ES : VALUE或或MOV AX , ES:VALUE直
6、接尋址方式常用語處理單個(gè)存儲(chǔ)器變量的情況。它可以實(shí)現(xiàn)直接尋址方式常用語處理單個(gè)存儲(chǔ)器變量的情況。它可以實(shí)現(xiàn)在在64K字節(jié)的段內(nèi)尋址操作數(shù)。字節(jié)的段內(nèi)尋址操作數(shù)。直接尋址的操作數(shù)通常是程序直接尋址的操作數(shù)通常是程序使用的變量使用的變量。注意:注意:立即尋址和直接尋址書寫表示方法上是不同的,立即尋址和直接尋址書寫表示方法上是不同的,直接尋直接尋址的地址要放在方括號(hào)中。在源程序中,往往用變量名表示。址的地址要放在方括號(hào)中。在源程序中,往往用變量名表示。4.寄存器間接尋址方式寄存器間接尋址方式操作數(shù)在存儲(chǔ)器中,操作數(shù)操作數(shù)在存儲(chǔ)器中,操作數(shù)有效地址在有效地址在SI、DI、BX、BP這四這四個(gè)寄存器之一
7、中個(gè)寄存器之一中。在一般情況下,如果有效地址在在一般情況下,如果有效地址在SI、DI和和BX中,則以中,則以DS寄存寄存器之內(nèi)容位段值。器之內(nèi)容位段值。如果有效地址在如果有效地址在BP中,則以中,則以SS段寄存器之內(nèi)容位段值。段寄存器之內(nèi)容位段值。例如:如果例如:如果(DS)=5000H ,(SI)=1234H MOV AX, SI指令中也可指定段超越前綴來取得其它段中的數(shù)據(jù)。指令中也可指定段超越前綴來取得其它段中的數(shù)據(jù)。如,如,MOV AX , ES : BX引用的段寄存器是引用的段寄存器是ES請(qǐng)熟悉下面的表達(dá)形式:請(qǐng)熟悉下面的表達(dá)形式:MOV SI , AX ; 目的操作數(shù)間接尋址目的操作
8、數(shù)間接尋址MOV BP , CX ;目的操作數(shù)引用的段寄存器是目的操作數(shù)引用的段寄存器是SSMOV SI , AX; 目的操作數(shù)寄存器尋址目的操作數(shù)寄存器尋址5.寄存器相對(duì)尋址方式寄存器相對(duì)尋址方式操作數(shù)在存儲(chǔ)器中,操作數(shù)的有效地址是一個(gè)基址寄存器操作數(shù)在存儲(chǔ)器中,操作數(shù)的有效地址是一個(gè)基址寄存器(BX、BP)或變址寄存器()或變址寄存器(SI、DI)內(nèi)容加上指令中給定的)內(nèi)容加上指令中給定的8位或位或16位位移量之和。位位移量之和。即:即:在一般情況下,如果在一般情況下,如果SI、DI或或BX之內(nèi)容作為有效地址的一部之內(nèi)容作為有效地址的一部分,那么引用的段寄存器是分,那么引用的段寄存器是DS
9、;如果如果BP之內(nèi)容作為有效地址的之內(nèi)容作為有效地址的一部分,那么引用的段寄存器是一部分,那么引用的段寄存器是SS。在指令中給定的在指令中給定的8位或位或16位位位移量采用補(bǔ)碼位移量采用補(bǔ)碼形式表示。形式表示。在計(jì)算在計(jì)算有效地址時(shí),如位移量是有效地址時(shí),如位移量是8位,則被帶符號(hào)擴(kuò)展成位,則被帶符號(hào)擴(kuò)展成16位。位。例如:如果例如:如果(DS)=5000H ,(DI)=3678H MOV AX, DI+1234H則,物理地址則,物理地址=50000+3678+1223=5489BH假設(shè)該字存儲(chǔ)單元的內(nèi)容如下,則假設(shè)該字存儲(chǔ)單元的內(nèi)容如下,則(AX)=55AAH請(qǐng)熟悉下面的寫作形式:請(qǐng)熟悉下面
10、的寫作形式:MOV BX , BP-4 源操作數(shù)間接相對(duì)尋址,引用的段寄存器是源操作數(shù)間接相對(duì)尋址,引用的段寄存器是SS。MOV ES : BX + 5 , AL 目的操作數(shù)采用寄存器相對(duì)尋址,引用的段寄存器是目的操作數(shù)采用寄存器相對(duì)尋址,引用的段寄存器是ES。指令指令MOV AX , SI + 3與與MOV AX , 3SI是等價(jià)的。是等價(jià)的。6.基址加變址尋址方式基址加變址尋址方式操作數(shù)在存儲(chǔ)器中,操作數(shù)的有效地址是由:操作數(shù)在存儲(chǔ)器中,操作數(shù)的有效地址是由:基址寄存器之一的內(nèi)容與變址寄存器之一的內(nèi)容相加。基址寄存器之一的內(nèi)容與變址寄存器之一的內(nèi)容相加。即:即:在一般情況下,如果在一般情況
11、下,如果BP之內(nèi)容作為有效地址的一部分,那么之內(nèi)容作為有效地址的一部分,那么引用的段寄存器是引用的段寄存器是SS;否者以;否者以DS之內(nèi)容為段值。之內(nèi)容為段值。例如:如果例如:如果(DS)=2100H ,(BX)=0158H,(DI)=10A5H MOV AX, BXDI假設(shè)該字存儲(chǔ)單元的內(nèi)容如下,則假設(shè)該字存儲(chǔ)單元的內(nèi)容如下,則(AX)=1234H下面兩種表示方法是等價(jià)的:下面兩種表示方法是等價(jià)的:MOV AX , BX + DIMOV AX , DIBX下面指令中,目的操作數(shù)采用基址加變址尋址,引用的段寄存下面指令中,目的操作數(shù)采用基址加變址尋址,引用的段寄存器是器是DS。MOV DS :
12、BP + SI , AL下面指令中,源操作數(shù)采用基址加變址尋址,引用的段寄存器下面指令中,源操作數(shù)采用基址加變址尋址,引用的段寄存器ES。MOV AX , ES :BX + SI這種尋址方式適用于處理數(shù)據(jù)或表格。這種尋址方式適用于處理數(shù)據(jù)或表格。用基址寄存器存放數(shù)組用基址寄存器存放數(shù)組首地址首地址,而用變址寄存器來定位數(shù)組中的,而用變址寄存器來定位數(shù)組中的各元素各元素?;蚍粗;蚍粗?。由于兩個(gè)寄存器都可改變,所以能更加靈活地訪問數(shù)組或表格由于兩個(gè)寄存器都可改變,所以能更加靈活地訪問數(shù)組或表格中的元素。中的元素。7.相對(duì)基址加變址尋址方式相對(duì)基址加變址尋址方式操作數(shù)在存儲(chǔ)器中,操作數(shù)的有效地址是
13、由:操作數(shù)在存儲(chǔ)器中,操作數(shù)的有效地址是由:基址寄存器之一的內(nèi)容與變址寄存器之一的內(nèi)容基址寄存器之一的內(nèi)容與變址寄存器之一的內(nèi)容及指令中給定的及指令中給定的8位或位或16位位移量相加得到。位位移量相加得到。即:即:在一般情況下,如果在一般情況下,如果BP之內(nèi)容作為有效地址的一部分,那么之內(nèi)容作為有效地址的一部分,那么引用的段寄存器是引用的段寄存器是SS;否者以;否者以DS之內(nèi)容為段值。之內(nèi)容為段值。在指令中給定的在指令中給定的8位或位或16位位位移量采用補(bǔ)碼位移量采用補(bǔ)碼形式表示。在計(jì)算形式表示。在計(jì)算機(jī)有效地址時(shí),機(jī)有效地址時(shí),如果位移量是如果位移量是8位,那么被帶符號(hào)擴(kuò)展成位,那么被帶符號(hào)
14、擴(kuò)展成16位。位。當(dāng)所取得的有效地址超過當(dāng)所取得的有效地址超過FFFFH是,就取是,就取64K的模。的模。例如:如果例如:如果(DS)=5000H ,(BX)=1223H,(DI)=54H(51275)=54H,(,(51276)=76H MOV AX, BX + DI - 2那么,存取的物理存儲(chǔ)單元是多少呢?那么,存取的物理存儲(chǔ)單元是多少呢?物理地址物理地址 = 50000 + 1223 + 0054 + FFFFE = 51275H在執(zhí)行該指令后,在執(zhí)行該指令后,(AX) = 7654H。注意解算過程中的符號(hào)擴(kuò)展注意解算過程中的符號(hào)擴(kuò)展相對(duì)基址加變址這種尋址方式的相對(duì)基址加變址這種尋址方式
15、的表示方法多種多樣表示方法多種多樣,下面四種,下面四種表示方法均是等價(jià)的:表示方法均是等價(jià)的:MOV AX , BX + DI + 1234HMOV AX , 1234HBXDIMOV AX , 1234HBX + DIMOV AX , 1234HDIBX1.現(xiàn)有(現(xiàn)有(DS)=2000H, (BX)=0100H, (SI)=0002H(20100)=12H, (20101)=34H, (20102)=56H(20103)=78H, (21200)=2AH, (21201)=4CH(21202)=B7H, (21203)=65H試說明下列各條指令執(zhí)行完后試說明下列各條指令執(zhí)行完后AX寄存器的內(nèi)
16、容。寄存器的內(nèi)容。 (1) MOV AX , 1200H (2) MOV AX , BX (3) MOV AX , 1200H (4) MOV AX , BX (5) MOV AX , 1100BX (6) MOV AX , BXSI (7) MOV AX , 1100BXSI2.假設(shè)(假設(shè)(DS)=2000H, (ES)=2100H, (SS)=1500H,(SI)=00A0H, (BX)=0100H,(BP)=0010H,數(shù)據(jù)段中變量名數(shù)據(jù)段中變量名VAL的偏移地址值為的偏移地址值為0050H,試指出下列源操作數(shù)字段的尋址方式是什么?其物理地址值是試指出下列源操作數(shù)字段的尋址方式是什么?其
17、物理地址值是多少?多少? (1) MOV AX , 0ABH (2) MOV AX , BX (3) MOV AX , 100H (4) MOV AX , VAL (5) MOV AX , BX (6) MOV AX , ES : BX (7) MOV AX , BP (8) MOV AX , SI2(續(xù)續(xù)).假設(shè)(假設(shè)(DS)=2000H, (ES)=2100H, (SS)=1500H,(SI)=00A0H, (BX)=0100H,(BP)=0010H,數(shù)據(jù)段中變量名數(shù)據(jù)段中變量名VAL的偏移地址值為的偏移地址值為0050H,試指出下列源操作數(shù)字段的尋址方式是什么?其物理地址值是試指出下列源
18、操作數(shù)字段的尋址方式是什么?其物理地址值是多少?多少? (9) MOV AX , BX + 10 (10) MOV AX , VALBX (11) MOV AX , BXSI (12) MOV AX , VAL BXSI除了這除了這7中基本的尋址方式外,中基本的尋址方式外,8086/8088還提供了還提供了4種基于轉(zhuǎn)種基于轉(zhuǎn)移地址的尋址方式(左邊為段內(nèi),右邊為段間):移地址的尋址方式(左邊為段內(nèi),右邊為段間):(DS)=2000H, (CS)=6000H, (SS)=8000H,(ES)=A000H (BX)=1256H,位移量位移量TABLE=20A1H,(232F7H)=3280H(1) JMP BX執(zhí)行后,(執(zhí)行后,(IP)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- b2微課程設(shè)計(jì)制作軟件
- 骨科護(hù)理團(tuán)隊(duì)建設(shè)
- ERCP術(shù)后長期隨訪
- 下穿式立交橋課程設(shè)計(jì)
- 嵌入式課程設(shè)計(jì)大作業(yè)
- 心衰患者的藥物治療與護(hù)理配合
- 半夜做課程設(shè)計(jì)賺錢
- 冰箱系統(tǒng)課程設(shè)計(jì)
- 路面的設(shè)計(jì)課程設(shè)計(jì)
- 中職親子課程設(shè)計(jì)
- 探索心理學(xué)的奧秘智慧樹知到期末考試答案章節(jié)答案2024年北京大學(xué)
- 西方作曲技術(shù)風(fēng)格分析與仿作智慧樹知到期末考試答案章節(jié)答案2024年星海音樂學(xué)院
- 工程地勘施工方案
- MOOC 電子技術(shù)-北京科技大學(xué) 中國大學(xué)慕課答案
- 《水電工程運(yùn)行調(diào)度規(guī)程編制導(dǎo)則》(NB-T 10084-2018)
- 2024年度質(zhì)量管理體系培訓(xùn)記錄考核表
- 鋼管更換施工方案模板
- 鄭州市職工社會(huì)保險(xiǎn)申報(bào)表(新增)表格
- 如何提升招標(biāo)文件編制質(zhì)量
- 高中英語命題要求與技巧課件高考英語命題技術(shù)講座
- 話題標(biāo)記從何而來中國語言學(xué)的新進(jìn)展評(píng)《樂在其中王士元教授七十華誕慶祝文集》
評(píng)論
0/150
提交評(píng)論