第2章8086微處理器與匯編語言(上)_第1頁
第2章8086微處理器與匯編語言(上)_第2頁
第2章8086微處理器與匯編語言(上)_第3頁
第2章8086微處理器與匯編語言(上)_第4頁
第2章8086微處理器與匯編語言(上)_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

微機原理及其應(yīng)用普通高等教育“十一五”國家級規(guī)劃教材作者丁新民2007年5月第二章8086微處理器與匯編語言(上)

學(xué)習(xí)目標(biāo)

1、識記8086微處理器的基本結(jié)構(gòu)、系統(tǒng)總線周期、基本工作原理。

2、理解通用寄存器、段寄存器、標(biāo)志和指針寄存器、基址和變址寄存器的功能和作用。

3、理解8086存儲器的地址分段和結(jié)構(gòu),數(shù)據(jù)和程序地址的計算方法。

4、識記8086系統(tǒng)最大和最小模式,及其在不同方式下的工作時序要求。

5、理解80X86尋址方法的區(qū)別和應(yīng)用要求。2.18086系統(tǒng)結(jié)構(gòu)2.2

尋址方式1.8086內(nèi)部結(jié)構(gòu)2.寄存器組3.引腳及其功能4.總線周期5.存儲器組織6.輸入/輸出組織7.最小與最大模式系統(tǒng)第一節(jié)8086內(nèi)部結(jié)構(gòu)

8086分為總線接口部件BIU和執(zhí)行部件EU兩個部分,如圖2-1-1所示。1.總線接口部件BIU

組成:由段寄存器和指令指針I(yè)P,指令隊列緩存器,地址加法器和總線控制邏輯部件等。

作用:取指令、指令排隊、讀/寫操作數(shù)、地址形成和總線控制。(1)段寄存器

8086最大可尋址1MB存儲空間,將1MB空間劃分成若干個邏輯段,每個段最大為64KB,用段寄存器來存放段起始地址。內(nèi)設(shè)CS、DS、SS和ES段寄存器,分別用來存放代碼段、數(shù)據(jù)段、堆棧段和擴(kuò)展數(shù)據(jù)段的基地址。1.總線接口部件BIU

(2)指令指針

指令指針(IP)的功能類似于程序計數(shù)器PC,用來存放下一條要執(zhí)行指令的偏移地址。指令地址由CS和IP構(gòu)成。但是,程序是不能直接訪問IP,只能由BIU自動修改。(3)地址加法器地址加法器用來計算20位存儲地址。當(dāng)執(zhí)行部件計算出尋址單元的偏移量后,就與左移4位后的段寄存器內(nèi)容一起送地址加法器進(jìn)行相加,得到一個20位的存儲地址。尋址單元的偏移地址可以來自IP,也可以來自其他寄存器。1.總線接口部件BIU

(4)指令隊列緩存器指令隊列緩存器是用來暫存從存儲器中取出的指令。指令隊列緩存器為6個字節(jié)。指令隊列采用FIFO的管理方式,預(yù)取6字節(jié)的指令代碼。在執(zhí)行指令的同時,從存儲器中取下一條指令或幾條指令,填充指令隊列緩存器。這樣,CPU的取指令(BIU)和執(zhí)行指令操作(EU)是并行的。當(dāng)指令隊列中有一條指令或填滿指令時,執(zhí)行部件EU就從該隊列中取出指令執(zhí)行。EU從指令隊列的輸出端取出指令后,BIU自動調(diào)整指令隊列輸出端指針,并作指令預(yù)取操作。1.總線接口部件BIU

(4)指令隊列緩存器(續(xù))

EU從指令隊列取出指令,經(jīng)指令譯碼分析后,向BIU申請從存儲器或I/O端口讀寫操作數(shù)。只要收到EU送來的邏輯地址,BIU就通過專用的地址加法器,以現(xiàn)行的段寄存器和邏輯地址產(chǎn)生一個20位的存儲地址送地址總線。當(dāng)EU執(zhí)行轉(zhuǎn)移、調(diào)用或返回指令時,BIU將自動清除指令隊列中原有的內(nèi)容,重新填充指令隊列。(5)總線控制邏輯總線控制邏輯用于產(chǎn)生存儲器讀/寫、I/O讀/寫控制信號。2.執(zhí)行部件EU

EU組成:

ALU、標(biāo)志寄存器、通用寄存器組、暫存器、控制部件等。

作用:完成指令譯碼和執(zhí)行指令的工作。(1)ALU16位的ALU用來對8位或16位操作數(shù)進(jìn)行算術(shù)或邏輯運算。另外,16位的暫存器也可以參加運算。(2)標(biāo)志寄存器

16位標(biāo)志寄存器用來表示ALU運算后的結(jié)果特征,為下一條指令的執(zhí)行提供操作信息。2.執(zhí)行部件EU

(3)通用寄存器組通用寄存器組共有八個16位寄存器。其中,四個寄存器可用作存放數(shù)據(jù)或地址,四個為指針和變址寄存器。這些都可以參加算術(shù)和邏輯運算,具體內(nèi)容將在下一節(jié)介紹。(4)控制部件主要用于取指令的控制和時序控制。

EU與BIU并行工作,提高了CPU的效率。第二節(jié)寄存器組2.寄存器組如圖2-1-2所示為8086的寄存器結(jié)構(gòu),共分為四組16位寄存器,它們分別是通用寄存器、指針和變址寄存器、段寄存器和標(biāo)志位寄存器。2.寄存器組(1)通用寄存器組通用寄存器組由八個16位寄存器構(gòu)成,按用途可分為數(shù)據(jù)寄存器和指針/變址寄存器兩大類。它們都可以參加算術(shù)和邏輯運算。

數(shù)據(jù)寄存器由四個16位的AX、BX、CX和DX寄存器組成。每個寄存器可作為一個獨立的16位寄存器使用,也可以分別編址成兩個8位寄存器使用。這樣,每個數(shù)據(jù)寄存器對應(yīng)的高8位寄存器是AH、BH、CH和DH;低8位寄存器是AL、BL、CL和DL。2.寄存器組

數(shù)據(jù)寄存器(續(xù))P38表2-1-18086通用寄存器的特殊用法寄存器操作隱含性質(zhì)隱含使用

AX、AL在輸入輸出指令中作數(shù)據(jù)寄存器不能隱含

DS在乘法指令中存放被乘數(shù)或積隱含在除法指令中存放被除數(shù)或商隱含AH在LAHF指令中作目標(biāo)寄存器隱含DS

AL在XLAT指令中作累加寄存器隱含

DS在BCD碼運算指令中作累加寄存器不能隱含在ASCⅡ運算指令中作累加寄存器不能隱含BX在間接尋址中作基址寄存器不能隱含DS在XLAT指令中作基址寄存器隱含CX在串指令和LOOP指令中作計數(shù)寄存器隱含DS

CL在位移/循環(huán)位移指令中作計數(shù)寄存器不能隱含

DS在乘法指令中存放乘積隱含在除法指令中存放被除數(shù)高位或余數(shù)隱含在間接尋址中作變址寄存器不能隱含SP在堆棧尋址中作堆棧指針隱含SSBP在間接尋址中作基址指針不能隱含SSSI在字符串操作指令中作源變址寄存器在間接尋址中作變址寄存器隱含不能隱含DSDI在字符串操作指令中作目標(biāo)變址寄存器在間接尋址中作變址寄存器隱含不能隱含DS2.寄存器組

指針和變址寄存器由四個16位的寄存器SP、BP、SI和DI組成。這些寄存器存放段內(nèi)的偏移量,用來形成操作數(shù)的存儲地址。SP為堆棧指針、BP為基址指針、SI為源變址、DI為目標(biāo)變址。

SP和BP使用SS堆棧段。若不特別指明某個段,則被認(rèn)為使用現(xiàn)行堆棧段。SP始終指向棧頂。BP可指向堆棧段的任意單元。

SI和DI稱為變址寄存器,通常與DS數(shù)據(jù)段一起使用。串操作指令中,規(guī)定SI使用DS數(shù)據(jù)段,DI使用ES擴(kuò)展數(shù)據(jù)段。2.寄存器組(2)段寄存器組段寄存器組由CS、DS、SS和ES四個16位的寄存器構(gòu)成。表2-1-2段寄存器和現(xiàn)行段的對應(yīng)關(guān)系寄存器含義隱含識別的現(xiàn)行段CS代碼段寄存器現(xiàn)行代碼段DS數(shù)據(jù)段寄存器現(xiàn)行數(shù)據(jù)段SS堆棧段寄存器ES附加段寄存器現(xiàn)行附加段現(xiàn)行堆棧段2.寄存器組(2)段寄存器組(續(xù))

8086通過CS得到執(zhí)行指令的段基地址,加上指令指針I(yè)P中的指令偏移量,產(chǎn)生20位的存儲器地址。例如CS=4000H、IP=004AH。那么,20位物理地址應(yīng)該是4004AH單元。

40000CS代碼段內(nèi)容左移4位+004AIP的段內(nèi)偏移量

4004AH下一條指令的存儲地址

操作數(shù)所在段,可以在指令前加段前綴,若缺省前綴,則規(guī)定使用DS。對于BP和SP,系統(tǒng)默認(rèn)使用SS。2.寄存器組(3)指令指針

16位的指令指針I(yè)P,用來存放下一條指令在CS中的偏移量。IP的內(nèi)容由總線接口部件BIU自動修改。指令順序執(zhí)行時,存放下一條待執(zhí)行指令的偏移量;發(fā)生中斷或調(diào)用時,BIU自動將IP的偏移量壓入堆棧保存。程序不能直接訪問IP。(4)標(biāo)志寄存器

16位的標(biāo)志寄存器含有九個有效標(biāo)志位,分為條件標(biāo)志位/程序狀態(tài)字和控制標(biāo)志位兩個部分。2.寄存器組(4)標(biāo)志寄存器(續(xù))

①條件標(biāo)志位

●CF進(jìn)位標(biāo)志位:運算中發(fā)生進(jìn)位或借位時,CF為“1”;否則,CF為“0”。用STC指令可設(shè)置CF為“1”、CLC指令置CF為“0”、CMC指令對CF求反;循環(huán)指令也會影響該標(biāo)志位狀態(tài)。2.寄存器組(4)標(biāo)志寄存器(續(xù))

①條件標(biāo)志位(續(xù))●AF輔助進(jìn)位標(biāo)志位:在運算結(jié)果的低4位向高4位有進(jìn)位或借位時,AF為“1”;反之,AF為“0”。

●OF溢出標(biāo)志位:運算結(jié)果超出機器表示范圍時,OF為“1”;否則,OF為“0”。帶符號數(shù)的操作,若字節(jié)運算結(jié)果超過-128~+127范圍或者字運算結(jié)果超過-32768~+32767范圍時,OF為“1”。2.寄存器組(4)標(biāo)志寄存器(續(xù))

①條件標(biāo)志位(續(xù))●ZF零標(biāo)志位:運算結(jié)果為零時,ZF為“1”;否則,ZF為“0”。

●SF符號標(biāo)志位:運算結(jié)果負(fù)數(shù)時,SF為“1”;否則,SF為“0”。●PF奇偶標(biāo)志位:運算結(jié)果的低8位中有偶數(shù)個“1”時,PF為“1”;否則,ZP為“0”。2.寄存器組(4)標(biāo)志寄存器(續(xù))

②控制標(biāo)志位●DF方向標(biāo)志位:DF為“0”時,變址地址指針SI、DI自動作增量操作,字節(jié)操作增量為1,字操作增量為2;DF為“1”時,作減量操作??捎肧TD、CLD指令設(shè)置DF。

●IF中斷允許標(biāo)志位:IF為“1”時,允許CPU響應(yīng)中斷請求;IF為“0”時,禁止響應(yīng)。用STI、CLI指令設(shè)置IF?!馮F陷阱標(biāo)志位:TF為“1”時,CPU每執(zhí)行完一條指令就產(chǎn)生一個內(nèi)部中斷。第三節(jié)引腳及其功能3.引腳及其功能封裝:雙列直插式

40條引腳。部分引腳分時復(fù)用部分引腳具有雙重功能8088的引腳圖8086見P41封裝:雙列直插式

40條引腳。部分引腳分時復(fù)用為了減少芯片的引線,部分引腳具有雙重功能,采用分時復(fù)用方式工作。

8088的引腳圖8086見P413.引腳及其功能(1)數(shù)據(jù)和地址總線

●AD15~AD0

地址/數(shù)據(jù)復(fù)用總線(輸入/輸出、三態(tài))。

●A19/S6~A16/S3

地址/狀態(tài)復(fù)用總線(輸出、三態(tài))?!馚HE/S7數(shù)據(jù)總線高位允許/狀態(tài)復(fù)用引腳(輸出、三態(tài))。(2)控制和狀態(tài)線

RD

讀控制(輸出、三態(tài))。

●RAEDY

外部準(zhǔn)備就緒(輸入)。3.引腳及其功能(2)控制和狀態(tài)線(續(xù))

INTR

可屏蔽中斷(輸入)。

●TEST

等待測試(輸入)?!馧MI

不可屏蔽中斷(輸入↑

)?!馬ESET

系統(tǒng)復(fù)位(輸入)?!馛LK

時鐘(輸入)?!馰cc

(+5V)電源(輸入)。●GND接地(輸入)?!馦N/MX

最小/最大模式選擇(輸入)。3.引腳及其功能(3)最小模式(MN/MX=Vcc)控制和線狀態(tài)

M/IO

存儲器或輸入/輸出控制(輸出、三態(tài))。

●WR

寫控制(輸出、三態(tài))?!馡NTA中斷響應(yīng)(輸出)。●ALE

地址鎖存允許(輸出↓

)?!馜T/R

數(shù)據(jù)發(fā)送/接收(輸出、三態(tài))?!馜EN

數(shù)據(jù)傳輸允許(輸出、三態(tài))?!馠OLD總線請求(輸入)?!馠LDA

總線響應(yīng)(輸出)。3.引腳及其功能(4)最大模式(MN/MX=GND)控制和線狀態(tài)

S2、S1、S0

總線周期狀態(tài)(輸出、三態(tài))。●RQ/GT0、RQ/GT1

總線請求/總線允許(輸入/輸出)?!馤OCK總線鎖定信號(輸出、三態(tài))。●QS1、QS0指令隊列狀態(tài)(輸出)。S2S1S0特性特性000中斷響應(yīng)100取指令001讀I/O端口101讀存儲器010寫I/O端口110寫存儲器011暫停111不作用第四節(jié)總線周期4.總線周期

8086的時鐘脈沖(CLK)由時鐘發(fā)生器(如8284A)來提供,例如若機器的主頻為10MHz,那么一個時鐘周期為100ns。

8086CPU完成一個機器周期(將處理一條指令劃分為幾個不同的階段,每個階段稱為一個機器周期)需要用四個時鐘周期,即T1、T2、T3和T4狀態(tài)。典型的一個總線周期操作如圖2-1-5所示,圖中RD信號表示讀總線周期,WR信號表示寫總線周期,DT/R和DEN信號控制總線收發(fā)的傳送方向和何時允許傳送。

4.總線周期4.總線周期總線周期T1、T2、T3和T4的操作:①

T1狀態(tài),CPU發(fā)送地址信號,指出存儲單元或I/O端口地址。同時,發(fā)出地址鎖存允許信號ALE,地址送入地址鎖存器。②

T2狀態(tài),CPU撤銷地址,為讀入數(shù)據(jù)作準(zhǔn)備??偩€高4位輸出總線周期狀態(tài)信息。③

T3狀態(tài),總線高4位信息狀態(tài)不變,地址總線低16位輸出數(shù)據(jù)或從I/O端口或存儲器輸入數(shù)據(jù)。若末準(zhǔn)備就緒,插入等待狀態(tài)Tw,直到準(zhǔn)備就緒。④

在T4狀態(tài),總線周期結(jié)束。第五節(jié)存儲器組織2.18086結(jié)構(gòu)5.存儲器組織(1)存儲器基本結(jié)構(gòu)

8086存儲器按字節(jié)編址,尋址范圍為0~220-1,存儲器最大容量為1MB。按00000H~0FFFFFH編址,存儲地址從低到高編址,如圖2-1-6所示。存儲器中任何兩個相鄰的字節(jié)單元被定義為一個字,每個字節(jié)都有各自的字節(jié)地址。字節(jié)地址較小的作為字地址。字存放時,高位字節(jié)5.存儲器組織(1)存儲器基本結(jié)構(gòu)(續(xù))存放在高地址,低位字節(jié)存放在低地址中。先存放低位字節(jié),后存放高位字節(jié)。

8086是以地址編址為單位訪問的,對于奇地址編址存取操作,就必須訪問存儲器兩次,并且還要作調(diào)整操作。因此,要求字編址應(yīng)被2整除;雙字編址應(yīng)被4整除;字節(jié)地址沒有要求。(2)存儲器地址的分段

8086內(nèi)部寄存器的寬度16位,尋址范圍為64KB。為支持尋址20位物理空間,將1MB存儲5.存儲器組織(2)存儲器地址的分段(續(xù))空間劃分成若干邏輯段,每個邏輯段最多包含64KB。邏輯段可在存儲器中任意定義。邏輯段相互獨立,可連續(xù)或相互重疊。邏輯段基址能被16整除,各自有對應(yīng)的段寄存器。由此,存儲地址由段基址和段內(nèi)偏移量構(gòu)成的,如圖2-1-7所示。5.存儲器組織(3)物理地址的形成

CPU訪問存儲器的20位地址,就是物理地址。邏輯地址是程序地址,它由段基地址和偏移量組成。它們之間的地址變換公式為

20位物理地址=段基址×24+偏移地址如圖2-1-8所示,將段基址值左移4位,加上16位的偏移量,形成20位物理地址。地址變換是由BIU部件的地址加法器完成。5.存儲器組織(4)8086存儲器分體結(jié)構(gòu)

存儲空間按奇地址和偶地址劃分成兩個存儲體,每個存儲體容量為512KB。通過地址線AD0和數(shù)據(jù)總線高位允許BHE來選擇存儲體。由AD0和BHE選存儲體,存儲體的體內(nèi)地址都是由A19~A16和AD15~AD1決定。如圖2-1-9所示為存儲體與總線的連接。

CPU與存儲器的存取操作,偶地址的數(shù)據(jù)通過低8位數(shù)據(jù)總線、奇地址經(jīng)高8位數(shù)據(jù)總線。傳送一個字節(jié),數(shù)據(jù)總線只能使用8位,第六節(jié)輸入/輸出組織6.輸入/輸出組織

8086系統(tǒng)和外部設(shè)備進(jìn)行數(shù)據(jù)通訊的連接電路叫接口,就是I/O芯片上的一個或若干個端口。每個端口都有獨立的地址,分別對應(yīng)一個寄存器。8086提供有64KB個8位端口,每個端口有惟一的編號,取值范圍0000H~0FFFFH之間。相鄰的兩個8位端口可組成一個16位端口。

IN指令作讀操作,CPU芯片引腳RD和M/IO同時為低電平狀態(tài);OUT指令作寫操作,引腳WR和M/IO同時為低電平。端口尋址不使用段寄存器。第七節(jié)最小與最大模式系統(tǒng)7.最小與最大模式系統(tǒng)(1)最小模式系統(tǒng)

系統(tǒng)中只有一個微處理器,并且CPU芯片引腳MN/MX=Vcc時,這就是最小模式系統(tǒng);此時,系統(tǒng)所有的控制信號全部由8086CPU提供。在最小模式系統(tǒng)中,除了CPU、存儲器以及I/O接口電路外,還要配置時鐘發(fā)生器、地址鎖存器和數(shù)據(jù)總線收發(fā)器等電路,如圖2-1-10所示。7.最小與最大模式系統(tǒng)

(1)最小模式系統(tǒng)(續(xù))由于地址和數(shù)據(jù)的復(fù)用,鎖存器須帶有三態(tài)緩沖。系統(tǒng)中,要用三片作地址鎖存器。CPU在讀/寫總線周期T1狀態(tài),將地址和BHE信號送到總線,并在ALE有效時,將地址鎖存。7.最小與最大模式系統(tǒng)(2)最大模式系統(tǒng)

CPU芯片引腳MN/MX接地時,系統(tǒng)為最大模式。此時,系統(tǒng)是由多個微處理器/協(xié)處理器構(gòu)成的多機系統(tǒng)。系統(tǒng)資源是由各處理器共享,控制信號是通過總線控制器來產(chǎn)生。系統(tǒng)增加了總線控制器、總線裁決器,如圖2-1-12所示。7.最小與最大模式系統(tǒng)(2)最大模式系統(tǒng)(續(xù))總線控制器8288(續(xù))②總線裁決器8289CPU輸出的狀態(tài)信息S2、S1、S0同時送到總線控制器和總線裁決器??偩€裁決器負(fù)責(zé)控制總線使用權(quán),并根據(jù)使用總線的優(yōu)先權(quán)來分配使用。7.最小與最大模式系統(tǒng)(2)最大模式系統(tǒng)(續(xù))總線控制器8288

圖2-1-13給出了總線控制器8288的引腳,表2-1-7給出總線狀態(tài)與輸出信號的對應(yīng)關(guān)系。第一節(jié)指令的基本格式2.2尋址方式1.指令的基本格式

指令包括操作碼和操作數(shù)兩個部分,如圖2-2-1所示。其中,操作碼表示機器的命令,如傳送、加、減等操作。操作數(shù)用來指出參加運算的數(shù)據(jù)地址,故又稱地址碼。操作數(shù)有零操作數(shù)、一操作數(shù)和二操作數(shù)三種形式。確定操作數(shù)存儲地址的過程也不相同,稱尋找操作數(shù)有效地址的方法為尋址方式。操作數(shù)有寄存器、存儲器、立即數(shù)和輸入輸出端口四種類型。第二節(jié)尋址方式2.尋址方式(1)立即數(shù)尋址

指令所需的操作數(shù)直接包含在指令代碼中,立即數(shù)可以是8位,也可以是16位。例如:

MOVAX,1234HMOVAH,0ABH

立即數(shù)作為指令的一部分直接從BIU的指令序列中取出,不需要占用總線周期,故執(zhí)行速度快。但這種尋址方式的使用受到一定的限制。2.尋址方式(2)寄存器尋址

指令所需的操作數(shù)在CPU內(nèi)的某個寄存器中,存取操作不占總線周期,執(zhí)行速度快。指令中直接書寫寄存器名,如AX、BX、AL、CH、DS、ES等,寄存器可以是8位或16位,同一條指令中,源操作數(shù)和目的操作數(shù)的位數(shù)要求必須相同。例如:

MOVCL,ALMOVDH,BHMOVDX,CXMOVDS,AX2.尋址方式

(3)存儲器尋址(續(xù))匯編語言源程序中,存儲地址是以邏輯地址形式表示,即段基值和偏移量,其中,段基值在段寄存器,偏移量表示存儲單元與段起始地址的偏移,又稱有效地址(EA)。有效地址由三個地址分量組合構(gòu)成,三個地址分量是:

●位移量指令中以變量名或標(biāo)號給出的8位或16位數(shù)。匯編后,這些操作數(shù)名的偏移量被轉(zhuǎn)換為指令代碼中的位移量。2.尋址方式

(3)存儲器尋址(續(xù))②基地址由基址寄存器BX或基址指針BP所提供。③變址

由源變址SI或目的變址DI提供的內(nèi)容。三個地址分量組合時,若出現(xiàn)兩個或兩個以上分量時,則需進(jìn)行以216為模的16位加法運算。正是因為三個地址分量的不同組合,才會出現(xiàn)對存儲器操作數(shù)尋址的多種不同的尋址方式。2.尋址方式

①直接尋址

這是存儲器尋址方式中最簡單的,有效地址EA直接由位移量給出,如圖2-2-2所示。這種方式不涉及其它寄存器(段寄存器除外),主要用于存、取簡單變量。在指令中,直接尋址方式可以用符號或常數(shù)來表示。例:MOVAL,[3000H];EA=3000H;PH=(DS)*16+EA2.尋址方式

①直接尋址(續(xù))

☆用符號表示

MOVBL,VAR

該指令等價于:MOVBX,DS。它是將變量VAR(隱含使用段寄存器DS)所指的字單元內(nèi)容傳送給BX寄存器。

MOVCL,DA+3

該指令是把由DA地址偏移三個字節(jié)單元的那個單元的內(nèi)容送給CL寄存器。2.尋址方式

②寄存器間接尋址

操作數(shù)地址直接從基址或變址寄存器中獲得,如圖2-2-3所示。例:

MOVAX,[BX]MOVBH,[BP]上述4條指令分別等價于:

MOVAX,DS:[BX]MOVBH,SS:[BP]2.尋址方式

③基址尋址和變址尋址操作數(shù)的有效地址EA是基址或變址寄存器與指令中給出的位移量兩個地址分量之和,如圖2-2-4所示。若使用BX或BP稱基址尋址,使用SI或DI稱變址尋址。使用BP時,隱含使用SS。其他,隱含使用DS。例:

MOVAX,10[SI]MOVBX,ARRAY[BX]MOVTABLE[DI],AL2.尋址方式

④基址變址尋址

操作數(shù)的有效地址是三個地址分量之和,即基址寄存器,變址寄存器與位移量之和,如圖2-2-5所示。兩個地址分量可以修改,是最為靈活的尋址方式。例:

MOVAX,ARRAY[BX][SI]MOVBX,TABLE[BX][DI]MOVDATA[BP][SI],CXMOVWORR[B

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論