版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、微機(jī)原理及其應(yīng)用普通高等教育“十一五”國家級(jí)規(guī)劃教材 作者 丁新民2007年5月微機(jī)原理及其應(yīng)用普通高等教育“十一五”國家級(jí)規(guī)劃教材 作者 第二章8086微處理器與匯編語言(上) 第二章學(xué)習(xí)目標(biāo) 1、識(shí)記8086微處理器的基本結(jié)構(gòu)、系統(tǒng)總線周期、基本工作原理。 2、理解通用寄存器、段寄存器、標(biāo)志和指針寄存器、基址和變址寄存器的功能和作用。 3、理解8086存儲(chǔ)器的地址分段和結(jié)構(gòu),數(shù)據(jù)和程序地址的計(jì)算方法。 4、識(shí)記8086系統(tǒng)最大和最小模式,及其在不同方式下的工作時(shí)序要求。 5、理解80X86尋址方法的區(qū)別和應(yīng)用要求。學(xué)習(xí)目標(biāo) 1、識(shí)記8086微處理器的基本結(jié)構(gòu)、系統(tǒng)總第二章微處理器與匯編語言
2、(上)2.1 8086系統(tǒng)結(jié)構(gòu)2.2 尋址方式第二章微處理器與匯編語言(上)2.1 8086系統(tǒng)結(jié)構(gòu)一、8086系統(tǒng)結(jié)構(gòu)1. 8086內(nèi)部結(jié)構(gòu)2. 寄存器組3. 引腳及其功能4. 總線周期5. 存儲(chǔ)器組織6. 輸入/輸出組織7. 最小與最大模式系統(tǒng) 一、8086系統(tǒng)結(jié)構(gòu)1. 8086內(nèi)部結(jié)構(gòu)第一節(jié)8086內(nèi)部結(jié)構(gòu)第一節(jié) 8086分為總線接口部件BIU和執(zhí)行部件EU兩個(gè)部分,如圖2-1-1所示。內(nèi)部通訊ESIPSSDSCSAH ALCH CLSPSIDIBPDH DL標(biāo)志位ALU EU控制器1 2 3 4 5 6指令隊(duì)列執(zhí)行部件總線接口部件圖2-1-1 8086 CPU內(nèi)部結(jié)構(gòu)暫存器16位ALU
3、數(shù)據(jù)線總線控制邏輯8086總線BH BL16位數(shù)據(jù)線20位地址線寄存器 8086分為總線接口部件BIU和執(zhí)行部件EU1總線接口部件BIU 提供16位雙向數(shù)據(jù)總線和20位地址總線。具體功能是:取指令、指令排隊(duì)、讀操作數(shù)和寫操作數(shù)、地址形成和總線控制。BIU由段寄存器和指令指針I(yè)P,指令隊(duì)列緩存器,地址加法器和總線控制邏輯部件等組成。 (1)段寄存器 8086最大可尋址1MB存儲(chǔ)空間,將1MB空間劃分成若干個(gè)邏輯段,每個(gè)段最大為64KB,用段寄存器來存放段起始地址。內(nèi)設(shè)CS、DS、SS和ES段寄存器,分別用來存放代碼段、數(shù)據(jù)段、堆棧段和擴(kuò)展數(shù)據(jù)段的基地址。 1總線接口部件BIU 提供16位雙向數(shù)據(jù)
4、1總線接口部件BIU (2)指令指針 指令指針(IP)的功能類似于程序計(jì)數(shù)器PC,用來存放下一條要執(zhí)行指令的偏移地址。指令地址由CS和IP構(gòu)成。但是,程序是不能直接訪問IP,只能由BIU自動(dòng)修改。 (3)地址加法器 地址加法器用來計(jì)算20位存儲(chǔ)地址。當(dāng)執(zhí)行部件計(jì)算出尋址單元的偏移量后,就與左移4位后的段寄存器內(nèi)容一起送地址加法器進(jìn)行相加,得到一個(gè)20位的存儲(chǔ)地址。尋址單元的偏移地址可以來自IP,也可以來自其他寄存器。 1總線接口部件BIU (2)指令指針1總線接口部件BIU (4)指令隊(duì)列緩存器 指令隊(duì)列緩存器是用來暫存從存儲(chǔ)器中取出的指令。指令隊(duì)列緩存器為6個(gè)字節(jié)。指令隊(duì)列采用FIFO的管理
5、方式,預(yù)取6字節(jié)的指令代碼。在執(zhí)行指令的同時(shí),從存儲(chǔ)器中取下一條指令或幾條指令,填充指令隊(duì)列緩存器。這樣,CPU的取指令和執(zhí)行指令操作是并行的。 當(dāng)指令隊(duì)列中有一條指令或填滿指令時(shí),執(zhí)行部件EU就從該隊(duì)列中取出指令執(zhí)行。EU從指令隊(duì)列的輸出端取出指令后,BIU自動(dòng)調(diào)整指令隊(duì)列輸出端指針,并作指令預(yù)取操作。1總線接口部件BIU (4)指令隊(duì)列緩存器1總線接口部件BIU (4)指令隊(duì)列緩存器(續(xù)) EU從指令隊(duì)列取出指令,經(jīng)指令譯碼分析后,向BIU申請(qǐng)從存儲(chǔ)器或I/O端口讀寫操作數(shù)。只要收到EU送來的邏輯地址,BIU就通過專用的地址加法器,以現(xiàn)行的段寄存器和邏輯地址產(chǎn)生一個(gè)20位的存儲(chǔ)地址送地址總
6、線。當(dāng)EU執(zhí)行轉(zhuǎn)移、調(diào)用或返回指令時(shí),BIU將自動(dòng)清除指令隊(duì)列中原有的內(nèi)容,重新填充指令隊(duì)列。 (5)總線控制邏輯 總線控制邏輯用于產(chǎn)生存儲(chǔ)器讀/寫、I/O讀/寫控制信號(hào)。 1總線接口部件BIU (4)指令隊(duì)列緩存器(續(xù))2執(zhí)行部件EU EU的主要功能是完成指令譯碼和執(zhí)行指令的工作。由ALU、標(biāo)志寄存器、通用寄存器組、暫存器、控制部件等組成。 (1)ALU 16位的ALU用來對(duì)8位或16位操作數(shù)進(jìn)行算術(shù)或邏輯運(yùn)算。另外,16位的暫存器也可以參加運(yùn)算。 (2)標(biāo)志寄存器 16位標(biāo)志寄存器用來表示ALU運(yùn)算后的結(jié)果特征,為下一條指令的執(zhí)行提供操作信息。 2執(zhí)行部件EU EU的主要功能是完成指令譯2
7、執(zhí)行部件EU (3)通用寄存器組 通用寄存器組共有八個(gè)16位寄存器。其中,四個(gè)寄存器可用作存放數(shù)據(jù)或地址,四個(gè)為指針和變址寄存器。這些都可以參加算術(shù)和邏輯運(yùn)算,具體內(nèi)容將在下一節(jié)介紹 。 (4)控制部件 主要用于取指令的控制和時(shí)序控制。 2執(zhí)行部件EU (3)通用寄存器組第二節(jié)寄存器組第二節(jié)2寄存器組 如圖2-1-2所示為8086的寄存器結(jié)構(gòu),共分為四組16位寄存器,它們分別是通用寄存器、指針和變址寄存器、段寄存器和標(biāo)志位寄存器。通用寄存器: 段寄存器: 15 8 7 0 15 0AXBXCXDXAHAL累加器 CS代碼段寄存器數(shù)據(jù)段寄存器堆棧段寄存器附加段寄存器BHBL基址寄存器 DSCHC
8、L計(jì)數(shù)寄存器 SSDHDL數(shù)據(jù)寄存器 ES指針和變址寄存器: 指令指針和標(biāo)志寄存器: 15 0 15 0SP BPSIDI堆棧指針 IP基址指針 FLAGS源變址寄存器目標(biāo)變址寄存器圖2-1-2 8086寄存器結(jié)構(gòu) 2寄存器組 如圖2-1-2所示為8086的寄2寄存器組 (1)通用寄存器組 通用寄存器組由八個(gè)16位寄存器構(gòu)成,按用途可分為數(shù)據(jù)寄存器和指針/變址寄存器兩大類 。它們都可以參加算術(shù)和邏輯運(yùn)算。 數(shù)據(jù)寄存器 由四個(gè)16位的AX、BX、CX和DX寄存器組成。每個(gè)寄存器可作為一個(gè)獨(dú)立的16位寄存器使用,也可以分別編址成兩個(gè)8位寄存器使用。這樣,每個(gè)數(shù)據(jù)寄存器對(duì)應(yīng)的高8位寄存器是AH、BH
9、、CH和DH;低8位寄存器是AL、BL、CL和DL。 2寄存器組 (1)通用寄存器組2寄存器組 數(shù)據(jù)寄存器(續(xù))表2-1-1 8086通用寄存器的特殊用法寄存器操 作隱含性質(zhì)隱含使用AX、AL在輸入輸出指令中作數(shù)據(jù)寄存器不能隱含DS在乘法指令中存放被乘數(shù)或積隱含在除法指令中存放被除數(shù)或商隱含AH在LAHF指令中作目標(biāo)寄存器隱含DSAL在XLAT指令中作累加寄存器隱含DS在BCD碼運(yùn)算指令中作累加寄存器不能隱含在ASC運(yùn)算指令中作累加寄存器不能隱含BX在間接尋址中作基址寄存器不能隱含DS在XLAT指令中作基址寄存器隱含CX在串指令和LOOP指令中作計(jì)數(shù)寄存器隱含DSCL在位移/循環(huán)位移指令中作計(jì)
10、數(shù)寄存器不能隱含DS在乘法指令中存放乘積隱含在除法指令中存放被除數(shù)高位或余數(shù)隱含在間接尋址中作變址寄存器不能隱含SP在堆棧尋址中作堆棧指針隱含SSBP在間接尋址中作基址指針不能隱含SSSI在字符串操作指令中作源變址寄存器在間接尋址中作變址寄存器隱含不能隱含DSDI在字符串操作指令中作目標(biāo)變址寄存器在間接尋址中作變址寄存器隱含不能隱含DS2寄存器組 數(shù)據(jù)寄存器(續(xù))表2-1-1 8086通2寄存器組 指針和變址寄存器 由四個(gè)16位的寄存器SP、BP、SI和DI組成。這些寄存器存放段內(nèi)的偏移量,用來形成操作數(shù)的存儲(chǔ)地址。SP為堆棧指針、BP為基址指針、SI為源變址、DI為目標(biāo)變址。 SP和BP使用
11、SS堆棧段。若不特別指明某個(gè)段,則被認(rèn)為使用現(xiàn)行堆棧段。SP始終指向棧頂。BP可指向堆棧段的任意單元。 SI和DI稱為變址寄存器,通常與DS數(shù)據(jù)段一起使用。串操作指令中, 規(guī)定SI使用DS數(shù)據(jù)段, DI使用ES擴(kuò)展數(shù)據(jù)段。2寄存器組 指針和變址寄存器2寄存器組 (2)段寄存器組 段寄存器組由CS、DS、SS和ES四個(gè)16位的寄存器構(gòu)成。表2-1-2 段寄存器和現(xiàn)行段的對(duì)應(yīng)關(guān)系寄存器含 義隱含識(shí)別的現(xiàn)行段CS代碼段寄存器現(xiàn)行代碼段DS數(shù)據(jù)段寄存器現(xiàn)行數(shù)據(jù)段SS堆棧段寄存器ES附加段寄存器現(xiàn)行附加段現(xiàn)行堆棧段2寄存器組 (2)段寄存器組表2-1-2 段寄存器和現(xiàn)行2寄存器組 (2)段寄存器組(續(xù))
12、 8086通過CS得到執(zhí)行指令的段基地址,加上指令指針I(yè)P中的指令偏移量,產(chǎn)生20位的存儲(chǔ)器地址。例如CS4000H、IP004AH。那么,20位物理地址應(yīng)該是4004AH單元。 40000 CS代碼段內(nèi)容左移4位 004A IP的段內(nèi)偏移量 4004AH 下一條指令的存儲(chǔ)地址 操作數(shù)所在段,可以在指令前加段前綴,若缺省前綴,則規(guī)定使用DS。對(duì)于BP和SP,系統(tǒng)默認(rèn)使用SS。2寄存器組 (2)段寄存器組(續(xù))2寄存器組 (3)指令指針 16位的指令指針I(yè)P,用來存放下一條指令在CS中的偏移量。IP的內(nèi)容由總線接口部件BIU自動(dòng)修改。指令順序執(zhí)行時(shí),存放下一條待執(zhí)行指令的偏移量;發(fā)生中斷或調(diào)用時(shí)
13、,BIU自動(dòng)將IP的偏移量壓入堆棧保存。程序不能直接訪問IP。 (4)標(biāo)志寄存器 16位的標(biāo)志寄存器含有九個(gè)有效標(biāo)志位,分為條件標(biāo)志位/程序狀態(tài)字和控制標(biāo)志位兩個(gè)部分。2寄存器組 (3)指令指針2寄存器組 (4)標(biāo)志寄存器(續(xù))15 12 11 10 9 8 7 6 4 2 0OFDFIFTFSFZFAFPFCF圖2-1-3 8086 標(biāo)志寄存器 條件標(biāo)志位 CF進(jìn)位標(biāo)志位:運(yùn)算中發(fā)生進(jìn)位或借位時(shí),CF為“1”;否則,CF為“0”。用STC指令可設(shè)置CF為“1”、CLC指令置CF為“0”、CMC指令對(duì)CF求反;循環(huán)指令也會(huì)影響該標(biāo)志位狀態(tài)。 2寄存器組 (4)標(biāo)志寄存器(續(xù))15 2寄存器組
14、(4)標(biāo)志寄存器(續(xù)) 條件標(biāo)志位(續(xù)) AF輔助進(jìn)位標(biāo)志位:在運(yùn)算結(jié)果的低4位向高4位有進(jìn)位或借位時(shí),AF為“1”;反之,AF為“0”。 OF溢出標(biāo)志位:運(yùn)算結(jié)果超出機(jī)器表示范圍時(shí),OF為“1”;否則,OF為“0”。帶符號(hào)數(shù)的操作,若字節(jié)運(yùn)算結(jié)果超過-128+127范圍或者字運(yùn)算結(jié)果超過-32768+32767范圍時(shí),OF為“1”。2寄存器組 (4)標(biāo)志寄存器(續(xù))2寄存器組 (4)標(biāo)志寄存器(續(xù)) 條件標(biāo)志位(續(xù)) ZF零標(biāo)志位:運(yùn)算結(jié)果為零時(shí),ZF為“1”;否則,ZF為“0” 。 SF符號(hào)標(biāo)志位:運(yùn)算結(jié)果負(fù)數(shù)時(shí),SF為“1”;否則,SF為“0”。 PF奇偶標(biāo)志位:運(yùn)算結(jié)果的低8位中有偶數(shù)
15、個(gè)“1”時(shí),PF為“1”;否則,ZP為“0” 。2寄存器組 (4)標(biāo)志寄存器(續(xù))2寄存器組 (4)標(biāo)志寄存器(續(xù)) 控制標(biāo)志位 DF方向標(biāo)志位:DF為“0”時(shí),變址地址指針SI、DI自動(dòng)作增量操作,字節(jié)操作增量為1,字操作增量為2;DF為“1”時(shí),作減量操作??捎肧TD、CLD指令設(shè)置DF。 IF中斷允許標(biāo)志位:IF為“1”時(shí),允許CPU響應(yīng)中斷請(qǐng)求;IF為“0”時(shí),禁止響應(yīng)。用STI 、 CLI指令設(shè)置IF。 TF陷阱標(biāo)志位:TF為“1”時(shí),CPU每執(zhí)行完一條指令就產(chǎn)生一個(gè)內(nèi)部中斷。2寄存器組 (4)標(biāo)志寄存器(續(xù))第三節(jié)引腳及其功能第三節(jié)3引腳及其功能 8086微處理器芯片采用雙列直插式
16、40條引腳的封裝結(jié)構(gòu),設(shè)有20條的地址線和16條的數(shù)據(jù)線,如圖2-1-4 所示。為了減少芯片的引線,部分引腳具有雙重功能,采用分時(shí)復(fù)用方式工作。 3引腳及其功能 8086微處理器芯片采用雙3引腳及其功能 (1)數(shù)據(jù)和地址總線 AD15AD0 地址/數(shù)據(jù)復(fù)用總線(輸入/輸出、三態(tài))。 A19/S6A16/S3 地址/狀態(tài)復(fù)用總線(輸出、三態(tài))。 BHE/S7 數(shù)據(jù)總線高位允許/狀態(tài)復(fù)用引腳(輸出、三態(tài))。 (2)控制和狀態(tài)線 RD 讀控制(輸出、三態(tài))。 RAEDY 外部準(zhǔn)備就緒(輸入)。3引腳及其功能 (1)數(shù)據(jù)和地址總線 3引腳及其功能 (2)控制和狀態(tài)線(續(xù)) INTR 可屏蔽中斷(輸入)
17、。 TEST 等待測(cè)試(輸入)。 NMI 不可屏蔽中斷(輸入)。 RESET 系統(tǒng)復(fù)位(輸入)。 CLK 時(shí)鐘(輸入)。 Vcc (5V)電源(輸入)。 GND 接地(輸入)。 MN/MX 最小/最大模式選擇(輸入)。3引腳及其功能 (2)控制和狀態(tài)線(續(xù)) 3引腳及其功能 (3) 最小模式(MN/MXVcc)控制和線狀態(tài) M/IO 存儲(chǔ)器或輸入/輸出控制(輸出、三態(tài))。 WR 寫控制(輸出、三態(tài))。 INTA中斷響應(yīng)(輸出)。 ALE 地址鎖存允許(輸出)。 DT/R 數(shù)據(jù)發(fā)送/接收(輸出、三態(tài))。 DEN 數(shù)據(jù)傳輸允許(輸出、三態(tài))。 HOLD 總線請(qǐng)求(輸入)。 HLDA 總線響應(yīng)(輸出
18、)。3引腳及其功能 (3) 最小模式(MN/MXVcc)控3引腳及其功能 (4) 最大模式(MN/MXGND)控制和線狀態(tài) S2、S1、S0 總線周期狀態(tài)(輸出、三態(tài))。 RQ/GT0、RQ/GT1 總線請(qǐng)求/總線允許(輸入/輸出)。 LOCK總線鎖定信號(hào)(輸出、三態(tài))。 QS1、QS0 指令隊(duì)列狀態(tài)(輸出)。S2 S1 S0特 性特 性0 0 0中斷響應(yīng)1 0 0取指令0 0 1讀I/O端口1 0 1讀存儲(chǔ)器0 1 0寫I/O端口1 1 0寫存儲(chǔ)器0 1 1暫停1 1 1不作用3引腳及其功能 (4) 最大模式(MN/MXGND)控第四節(jié)總線周期第四節(jié)4總線周期 8086的時(shí)鐘脈沖(CLK)由
19、時(shí)鐘發(fā)生器(如8284A)來提供,例如若機(jī)器的主頻為10MHz,那么一個(gè)時(shí)鐘周期為100ns。 8086CPU完成一個(gè)機(jī)器周期(將處理一條指令劃分為幾個(gè)不同的階段,每個(gè)階段稱為一個(gè)機(jī)器周期)需要用四個(gè)時(shí)鐘周期,即T1、T2、T3和T4狀態(tài)。 典型的一個(gè)總線周期操作如圖2-1-5所示,圖中RD信號(hào)表示讀總線周期,WR信號(hào)表示寫總線周期,DT/R和DEN信號(hào)控制總線收發(fā)的傳送方向和何時(shí)允許傳送。 4總線周期 8086的時(shí)鐘脈沖(CLK)由時(shí)4總線周期A15A0 數(shù)據(jù) 無效 A15A0 數(shù)據(jù) 無效A19A16 狀態(tài) S7S3 A19-A16 狀態(tài) S7S3圖2-1-5 8086總線周期存儲(chǔ)器訪問期間
20、CLK T1 T2 T3 Tw T4 T1 T2 T3 Tw T4機(jī)器周期機(jī)器周期DT/RALEADDR/STATUSADDR/DATAS2 S0RD、INTAREADYWRDENWaitReady4總線周期A15A0 數(shù)4總線周期 總線周期T1、T2、T3和T4的操作: T1狀態(tài),CPU發(fā)送地址信號(hào),指出存儲(chǔ)單元或I/O端口地址。同時(shí),發(fā)出地址鎖存允許信號(hào)ALE,地址送入地址鎖存器。 T2狀態(tài),CPU撤銷地址,為讀入數(shù)據(jù)作準(zhǔn)備??偩€高4位輸出總線周期狀態(tài)信息。 T3狀態(tài),總線高4位信息狀態(tài)不變,地址總線低16位輸出數(shù)據(jù)或從I/O端口或存儲(chǔ)器輸入數(shù)據(jù)。若末準(zhǔn)備就緒,插入等待狀態(tài)Tw,直到準(zhǔn)備就
21、緒。 在T4狀態(tài),總線周期結(jié)束。4總線周期 總線周期T1、T2、T3和T4的操作:第五節(jié)存儲(chǔ)器組織第五節(jié)5存儲(chǔ)器組織 (1)存儲(chǔ)器基本結(jié)構(gòu) 8086存儲(chǔ)器按字節(jié)編址,尋址范圍為0220-1,存儲(chǔ)器最大容量為1MB。按0000H0FFFFH編址,存儲(chǔ)地址從低到高編址,如圖2-1-6所示。 地址 存儲(chǔ)器 0000H 0段 64KB 0FFFH0F0000H 15段 64KB0FFFFFH 圖2-1-6 存儲(chǔ)器結(jié)構(gòu) 存儲(chǔ)器中任何兩個(gè)相鄰的字節(jié)單元被定義為一個(gè)字,每個(gè)字節(jié)都有各自的字節(jié)地址。字節(jié)地址較小的作為字地址。字存放時(shí),高位字節(jié)5存儲(chǔ)器組織 (1)存儲(chǔ)器基本結(jié)構(gòu) 地址 5存儲(chǔ)器組織 (1)存儲(chǔ)器
22、基本結(jié)構(gòu)(續(xù)) 存放在高地址,低位字節(jié)存放在低地址中。先存放低位字節(jié),后存放高位字節(jié)。 8086是以地址編址為單位訪問的,對(duì)于奇地址編址存取操作,就必須訪問存儲(chǔ)器兩次,并且還要作調(diào)整操作。因此,要求字編址應(yīng)被2整除;雙字編址應(yīng)被4整除;字節(jié)地址沒有要求。 (2)存儲(chǔ)器地址的分段 8086內(nèi)部寄存器的寬度16位,尋址范圍為64KB。為支持尋址20位物理空間,將1MB存儲(chǔ)5存儲(chǔ)器組織 (1)存儲(chǔ)器基本結(jié)構(gòu)(續(xù))5存儲(chǔ)器組織 (2)存儲(chǔ)器地址的分段(續(xù)) 空間劃分成若干邏輯段,每個(gè)邏輯段最多包含64KB。邏輯段可在存儲(chǔ)器中任意定義。邏輯段相互獨(dú)立,可連續(xù)或相互重疊。 存儲(chǔ)器 代碼段寄存器 16位 代
23、碼段 216字節(jié) 16位 附加段寄存器 附加段 216字節(jié) 堆棧段寄存器 16位 堆棧段 216字節(jié) 16位 數(shù)據(jù)段寄存器 數(shù)據(jù)段 216字節(jié) 圖2-1-7 存儲(chǔ)器分段示例 邏輯段基址能被16整除,各自有對(duì)應(yīng)的段寄存器。由此,存儲(chǔ)地址由段基址和段內(nèi)偏移量構(gòu)成的,如圖2-1-7所示。 5存儲(chǔ)器組織 (2)存儲(chǔ)器地址的分段(續(xù)) 5存儲(chǔ)器組織 (3)物理地址的形成 CPU訪問存儲(chǔ)器的20位地址,就是物理地址。邏輯地址是程序地址,它由段基地址和偏移量組成。它們之間的地址變換公式為 20位物理地址段基址24偏移地址 段基址 0000 16位偏移量 20位物理地址 圖2-1-8 物理地址的形成 如圖2-
24、1-8所示,將段基址值左移4位,加上16位的偏移量,形成20位物理地址。地址變換是由BIU部件的地址加法器完成。 5存儲(chǔ)器組織 (3)物理地址的形成 段基址 0005存儲(chǔ)器組織 (4)8086 存儲(chǔ)器分體結(jié)構(gòu) 存儲(chǔ)空間按奇地址和偶地址劃分成兩個(gè)存儲(chǔ)體,每個(gè)存儲(chǔ)體容量為512KB。通過地址線AD0和數(shù)據(jù)總線高位允許BHE來選擇存儲(chǔ)體。當(dāng)AD00和BHE1時(shí)選偶地址存儲(chǔ)體,與數(shù)據(jù)總線的低8位相連;當(dāng)AD01和BHE0時(shí)選奇地址存儲(chǔ)體,與數(shù)據(jù)總線的高8位相連;在AD00和BHE0時(shí),偶地址存儲(chǔ)體和奇地址存儲(chǔ)體同時(shí)工作。存儲(chǔ)體的體內(nèi)地址都是由A19A16和AD15AD1決定。如圖2-1-9所示為存儲(chǔ)體
25、與總線的連接。 5存儲(chǔ)器組織 (4)8086 存儲(chǔ)器分體結(jié)構(gòu) 5存儲(chǔ)器組織 (4)8086 存儲(chǔ)器分體結(jié)構(gòu)(續(xù))D7D0偶地址存儲(chǔ)體SEL A18A0D7D0奇地址存儲(chǔ)體SEL A18A0 數(shù)據(jù)DA7DA0 總線DA15DA8 BHE AD0A19A16、AD15AD1圖2-1-9 存儲(chǔ)體與總線連接圖 CPU與存儲(chǔ)器的存取操作,偶地址的數(shù)據(jù)通過低8位數(shù)據(jù)總線、奇地址經(jīng)高8位數(shù)據(jù)總線。傳送一個(gè)字節(jié),無論地址是偶數(shù)還是奇數(shù),數(shù)據(jù)總線只能使用8位,另外8位被忽略掉。 5存儲(chǔ)器組織 (4)8086 存儲(chǔ)器分體結(jié)構(gòu)(續(xù))D7D第六節(jié)輸入/輸出組織第六節(jié)6輸入/輸出組織 8086系統(tǒng)和外部設(shè)備進(jìn)行數(shù)據(jù)通訊
26、的連接電路叫接口,就是I/O芯片上的一個(gè)或若干個(gè)端口。每個(gè)端口都有獨(dú)立的地址,分別對(duì)應(yīng)一個(gè)寄存器。8086提供有64KB個(gè)8位端口,每個(gè)端口有惟一的編號(hào),取值范圍0000H0FFFFH之間。相鄰的兩個(gè)8位端口可組成一個(gè)16位端口。 IN指令作讀操作,CPU芯片引腳RD和M/IO同時(shí)為低電平狀態(tài);OUT指令作寫操作,引腳WR和M/IO同時(shí)為低電平。端口尋址不使用段寄存器。6輸入/輸出組織 8086系統(tǒng)和外部設(shè)備進(jìn)行第七節(jié)最小與最大模式系統(tǒng)第七節(jié)7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng) 系統(tǒng)中只有一個(gè)微處理器,并且CPU芯片引腳MN/MXVcc時(shí),這就是最小模式系統(tǒng);此時(shí),系統(tǒng)所有的控制信號(hào)全部由
27、8086CPU提供。在最小模式系統(tǒng)中,除了CPU、存儲(chǔ)器以及I/O接口電路外,還要配置時(shí)鐘發(fā)生器、地址鎖存器和數(shù)據(jù)總線收發(fā)器等電路,如圖2-1-10所示。 7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng) 7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù))圖2-1-10 8086最小模式系統(tǒng)配置 82823OETSTB DO7DO0DI7DI0 OEB7B0A7A082862控制總線存儲(chǔ)器 I/O接口數(shù)據(jù)總線地址總線 BHE+5V 8284ACLK RESET READY MN/MX ALE BHE A19- A16 AD15-AD0 8086 DEN DT/R M/IO WR HOLD HLDA INT
28、R INTA 7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù))圖2-1-7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng) 時(shí)鐘產(chǎn)生器8284A 8284A為CPU提供內(nèi)部和外部的時(shí)間基準(zhǔn)時(shí)鐘信號(hào)CLK,還為系統(tǒng)外部信號(hào)READY和系統(tǒng)RESET提供同步。如圖2-1-11所示,晶體振蕩器連接在8284A的輸入端X1和X2,F(xiàn)/C端接地。8284A在CLK上輸出占空比為1/3的時(shí)鐘信號(hào),連接到CPU的CLK引腳??偩€的READY和RESET引腳連接芯片的RDY和RES引腳。7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù)) 時(shí)鐘產(chǎn)生器8284A(續(xù)) X1 8284A X
29、2 CLK CLK F/C RESET RESET READY READY 8086 EFI RDY RES 控制總線 圖2-1-11 8284A時(shí)鐘產(chǎn)生器與8086的連接 8284A在F/C端接高電平時(shí),可以直接使用脈沖發(fā)生器的信號(hào)。這時(shí)可將脈沖發(fā)生器的信號(hào)與芯片的EFI引腳相連。外部設(shè)備時(shí)鐘可以提供占空比為1/2的外部時(shí)鐘。 7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù)) 7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù)) 地址鎖存器8282/8283 由于地址和數(shù)據(jù)的復(fù)用,鎖存器須帶有三態(tài)緩沖。選通信號(hào)STB與CPU的ALE相連,STB有效時(shí),輸入端DI7DI0上的8位數(shù)據(jù)被鎖存。當(dāng)OE有效
30、時(shí),鎖存器輸出;反之,為高阻狀態(tài)。 系統(tǒng)中,要用三片作地址鎖存器。CPU在讀/寫總線周期T1狀態(tài),將地址和BHE信號(hào)送到總線,并在ALE有效時(shí),將地址鎖存。7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù))7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù)) 數(shù)據(jù)總線收發(fā)器8286/8287 8286/8287芯片是8位的、輸出帶有三態(tài)控制的、雙向驅(qū)動(dòng)的數(shù)據(jù)緩沖器。數(shù)據(jù)總線16位,需要用兩片8286/8287芯片。 OE引腳是芯片的輸出控制,它與CPU的DEN相連。當(dāng)OE0時(shí),允許;反之,禁止,并設(shè)置為高阻狀態(tài)。T引腳是收、發(fā)方向控制,與CPU的DT/R相連。T0時(shí),A7A0為輸入;反之,輸出。A7A0
31、直接與數(shù)據(jù)總線相連。 7最小與最大模式系統(tǒng) (1)最小模式系統(tǒng)(續(xù))7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng) CPU芯片引腳MN/MX接地時(shí),系統(tǒng)為最大模式。此時(shí),系統(tǒng)是由多個(gè)微處理器/協(xié)處理器構(gòu)成的多機(jī)系統(tǒng)。系統(tǒng)資源是由各處理器共享,控制信號(hào)是通過總線控制器來產(chǎn)生。系統(tǒng)增加了總線控制器、總線裁決器,如圖2-1-12所示。CPU輸出的狀態(tài)信息S2、S1、S0同時(shí)送到總線控制器和總線裁決器??偩€裁決器負(fù)責(zé)控制總線使用權(quán),并根據(jù)使用總線的優(yōu)先權(quán)來分配使用。 7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng)7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng)(續(xù))CLK S2S1S0 8289 AEN 圖2-1-12
32、8086最大模式系統(tǒng)配置T 8286OEA7A0存儲(chǔ)器 I/O接口STB 82823 OEDI7DI0CLK AENS2S1S0 INTA 8288 MRDC DEN MWTC DT/R IOWC ALE IORC系統(tǒng)總線 8284A RESET READY CLK MN/MX S2S1S0 8086 BHE A19-A16 AD15-AD07最小與最大模式系統(tǒng) (2)最大模式系統(tǒng)(續(xù))CLK 7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng)(續(xù)) 總線控制器8288 圖2-1-13給出了總線控制器8288的引腳,表2-1-7給出總線狀態(tài)與輸出信號(hào)的對(duì)應(yīng)關(guān)系。 表2-1-7 8288提供的總線周期的輸
33、出信號(hào)S2 S1 S0 CPU狀態(tài)8288輸出命令0 0 0 中斷響應(yīng)INTA0 0 1 讀I/O端口IORC0 1 0 寫I/O端口IOWC、AIOWC0 1 1 暫停無1 0 0 取指令MRDC1 0 1 讀存儲(chǔ)器MRDC1 1 0 寫存儲(chǔ)器MWTC、AMWC1 1 1 無作用無圖2-1-13 總線控制器8288引腳1234567891020191817161514131211IOBCLKS1DT/RALEAENMRDCAMWCMWTCGNDVcc(5V)S0S2MCE/PDENDENCENINTAIORCAIOWCIOWC7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng)(續(xù))表2-1-7最小與最
34、大模式系統(tǒng) (2)最大模式系統(tǒng)(續(xù)) 總線控制器8288 (續(xù)) 讀存儲(chǔ)器MRDC(輸出) 寫存儲(chǔ)器MWTC和AMWC(輸出) 讀I/O端口IORC(輸出) 寫I/O端口IOWC和AIOWC(輸出) 中斷響應(yīng)INTA(輸出)7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng)(續(xù))7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng) 總線裁決器8289 總線忙BUSY(輸入/輸出) 公共總線請(qǐng)求CBRQ(輸入/輸出) 總線優(yōu)先權(quán)輸出BPRO 總線優(yōu)先權(quán)輸入BPRN 總線請(qǐng)求輸出BREQ 總線時(shí)鐘信號(hào)輸入BCLK圖2-1-14 總線裁決器8298引腳Vcc(5V)S1S0CLKLOCKCRQLCKIANYRQSTAEN
35、CBRQBUSY1234567891020191817161514131211S2IOBSYSB/RESBRESBBCLKINITBREQBPROBPRNGND7最小與最大模式系統(tǒng) (2)最大模式系統(tǒng)圖2-1-14 1、指令的基本格式2、尋址方式 二、尋址方式1、指令的基本格式 二、尋址方式第一節(jié)指令的基本格式第一節(jié)1指令的基本格式 指令包括操作碼和操作數(shù)兩個(gè)部分,如圖2-2-1所示。其中,操作碼表示機(jī)器的命令,如傳送、加、減等操作。操作數(shù)用來指出參加運(yùn)算的數(shù)據(jù)地址,故又稱地址碼。 操作碼操作數(shù)圖2-2-1指令的基本格式 操作數(shù)有零操作數(shù)、一操作數(shù)和二操作數(shù)三種形式。確定操作數(shù)存儲(chǔ)地址的過程也
36、不相同,稱尋找操作數(shù)有效地址的方法為尋址方式。操作數(shù)有寄存器、存儲(chǔ)器、立即數(shù)和輸入輸出端口四種類型。1指令的基本格式 指令包括操作碼和操作數(shù)兩個(gè)第二節(jié)尋址方式第二節(jié)2尋址方式 (1)立即數(shù)尋址 指令所需的操作數(shù)直接包含在指令代碼中,立即數(shù)可以是8位,也可以是16位。例如: MOV AX,1234H MOV AH,0ABH 立即數(shù)作為指令的一部分直接從BIU的指令序列中取出,不需要占用總線周期,故執(zhí)行速度快。但這種尋址方式的使用受到一定的限制。2尋址方式 (1)立即數(shù)尋址 2尋址方式 (2)寄存器尋址 指令所需的操作數(shù)在CPU內(nèi)的某個(gè)寄存器中,存取操作不占總線周期,執(zhí)行速度快。 指令中直接書寫寄
37、存器名,如AX、BX、AL、CH、DS、ES等,寄存器可以是8位或16位,同一條指令中,源操作數(shù)和目的操作數(shù)的位數(shù)要求必須相同。例如: MOV CL,AL MOV DH,BH MOV DX,CX MOV DS,AX2尋址方式 (2)寄存器尋址 2尋址方式 (2)寄存器尋址(續(xù)) 匯編語言源程序中,存儲(chǔ)地址是以邏輯地址形式表示,即段基值和偏移量,其中,段基值在段寄存器,偏移量表示存儲(chǔ)單元與段起始地址的偏移。有效地址由三個(gè)地址分量組合構(gòu)成,三個(gè)地址分量是: 位移量 指令中以變量名或標(biāo)號(hào)給出的8位或16位數(shù)。匯編后,這些操作數(shù)名的偏移量被轉(zhuǎn)換為指令代碼中的位移量。2尋址方式 (2)寄存器尋址(續(xù))
38、2尋址方式 (2)寄存器尋址(續(xù)) 基地址 由基址寄存器BX或基址指針BP所提供。 變址 由源變址SI或目的變址DI提供的內(nèi)容。 三個(gè)地址分量組合時(shí),若出現(xiàn)兩個(gè)或兩個(gè)以上分量時(shí),則需進(jìn)行以216為模的16位加法運(yùn)算。正是因?yàn)槿齻€(gè)地址分量的不同組合,才會(huì)出現(xiàn)對(duì)存儲(chǔ)器操作數(shù)尋址的多種不同的尋址方式。 2尋址方式 (2)寄存器尋址(續(xù)) 2尋址方式 (3)直接尋址 這是存儲(chǔ)器尋址方式中最簡(jiǎn)單的,有效地址EA直接由位移量給出,如圖2-2-2所示。 這種方式不涉及其它寄存器(段寄存器除外),主要用于存、取簡(jiǎn)單變量。在指令中,直接尋址方式可以用符號(hào)或常數(shù)來表示。 操作碼 位移量 EA 圖2-2-2 直接尋
39、址方式 2尋址方式 (3)直接尋址 操作碼 2尋址方式 (3)直接尋址(續(xù)) 用符號(hào)表示 MOV BX,VAR 該指令等價(jià)于:MOV BX,DS。它是將變量VAR(隱含使用段寄存器DS)所指的字單元內(nèi)容傳送給BX寄存器。 MOV CL,DA+3 該指令是把由DA地址偏移三個(gè)字節(jié)單元的那個(gè)單元的內(nèi)容送給CL寄存器。2尋址方式 (3)直接尋址(續(xù)) 2尋址方式 (3)直接尋址(續(xù)) 用常數(shù)表示 MOV AX,DS:100H 該指令是把由當(dāng)前數(shù)據(jù)段偏移100H個(gè)字節(jié)的那個(gè)字單元的內(nèi)容送給AX寄存器。 注意:用常數(shù)表示位移量時(shí),段寄存器必須指明,不能缺省。 2尋址方式 (3)直接尋址(續(xù)) 2尋址方式 (4)寄存器間接尋址 操作數(shù)地址直接從基址或變址寄存器中獲得,如圖2-2-3所示。如: MOV AX,BX MOV BH,BP MOV CL,SI MOV DI,BX 上述4條指令分別等價(jià)于: MOV AX,DS:BX MOV BH,SS:BP MOV CL,DS:SI MOV DS:DI,BX 操作碼 MOD REG R/M BX BP EA SI DI 圖2-2-3 寄存器尋址方式 2尋址方式 (4)寄存器間接尋址 操作碼 2尋址方式 (5)基址尋址和變址尋址 操作數(shù)的有效
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度企業(yè)退休技術(shù)人員返聘技術(shù)合作協(xié)議
- 鞍山八年級(jí)上冊(cè)數(shù)學(xué)試卷
- 2025年度3D建模設(shè)計(jì)師勞動(dòng)合同升級(jí)版
- 2025年度貸款中介服務(wù)收費(fèi)標(biāo)準(zhǔn)及傭金合同
- 2025年度住宅裝修質(zhì)量驗(yàn)收標(biāo)準(zhǔn)合同
- 2025年度電商虛擬商品代運(yùn)營與數(shù)字貨幣合作框架協(xié)議
- 二零二五年度水稻繁殖產(chǎn)業(yè)人才引進(jìn)與培養(yǎng)合同
- 2025年度新能源車庫租賃及轉(zhuǎn)讓一體化合同
- 二零二五年度物流園區(qū)車位購置及倉儲(chǔ)服務(wù)合同范本
- 水生和沉生植物施工方案
- 2025年長沙穗城軌道交通有限公司招聘筆試參考題庫含答案解析
- 人教版物理八年級(jí)下冊(cè) 專項(xiàng)訓(xùn)練卷 (一)力、運(yùn)動(dòng)和力(含答案)
- 山東省房屋市政工程安全監(jiān)督機(jī)構(gòu)人員業(yè)務(wù)能力考試題庫-中(多選題)
- 重慶市2023-2024學(xué)年七年級(jí)上學(xué)期期末考試數(shù)學(xué)試題(含答案)
- 2024年中考語文滿分作文6篇(含題目)
- 北師大版 2024-2025學(xué)年四年級(jí)數(shù)學(xué)上冊(cè)典型例題系列第三單元:行程問題“拓展型”專項(xiàng)練習(xí)(原卷版+解析)
- 2023年譯林版英語五年級(jí)下冊(cè)Units-1-2單元測(cè)試卷-含答案
- 施工管理中的文檔管理方法與要求
- DL∕T 547-2020 電力系統(tǒng)光纖通信運(yùn)行管理規(guī)程
- 種子輪投資協(xié)議
- 執(zhí)行依據(jù)主文范文(通用4篇)
評(píng)論
0/150
提交評(píng)論