微機(jī)原理與接口技術(shù)課件_第1頁
微機(jī)原理與接口技術(shù)課件_第2頁
微機(jī)原理與接口技術(shù)課件_第3頁
微機(jī)原理與接口技術(shù)課件_第4頁
微機(jī)原理與接口技術(shù)課件_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第2章微處理器微處理器,又稱中央處理單元(CentralProcessingUnit,CPU)是采用大規(guī)模(LSI)或超大規(guī)模集成電路(VLSI)技術(shù)制成的半導(dǎo)體芯片。它將控制單元,寄存器組,算術(shù)邏輯單元(ALU)及內(nèi)部總線集成在芯片上,組成具有運(yùn)算器和控制器功能的部件。2.18086微處理器的結(jié)構(gòu)8086是Intel系列的第三代16位微處理器,采用了HMOS高密度工藝,每片集成4萬多只晶體管,單一+5v電源,主頻為5MHz/10MHz。它的內(nèi)部和外部的數(shù)據(jù)總線寬度是16位,地址總線寬度20位,可尋址空間達(dá)220,即1MB。2.1.18086的功能結(jié)構(gòu)

8086微處理器的內(nèi)部功能結(jié)構(gòu)(如圖)由兩個(gè)獨(dú)立的工作部件——執(zhí)行部件EU(ExecutionUnit)和總線接口部件BIU(BusInterfaceUnit)構(gòu)成:1.執(zhí)行部件EU:由運(yùn)算器、寄存器組、控制器等組成,負(fù)責(zé)指令的執(zhí)行

2.總線接口部件BIU:由指令隊(duì)列、地址加法器、總線控制邏輯等組成,負(fù)責(zé)與系統(tǒng)總線打交道數(shù)據(jù)寄存器指針和變址寄存器AHALBHBLCHCLDHDLSPBPSIDIAXBXCXDX暫存寄存器ALU標(biāo)志寄存器FREU控制器ALU數(shù)據(jù)總線(16位)指令隊(duì)列緩沖器123456總線控制邏輯8086總線地址加法器CSDSSSESIP內(nèi)部暫存器AB(20位)執(zhí)行部件(EU)總線接口部件(BIU)DB(16位)(8位)隊(duì)列總線

8086CPU的內(nèi)部功能結(jié)構(gòu)框圖1.執(zhí)行部件EU

(1)EU的功能:A.從BIU的指令隊(duì)列緩沖器中取出指令,由EU控制器的指令譯碼器譯碼產(chǎn)生相應(yīng)的操作控制信號(hào)給各部件B.對(duì)操作數(shù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算,并將運(yùn)算結(jié)果的狀態(tài)特征保存到狀態(tài)寄存器FR中C.EU不直接與CPU外部系統(tǒng)相連,當(dāng)需要與主存儲(chǔ)器或I/O設(shè)備交換數(shù)據(jù)時(shí),EU向BIU發(fā)出命令,并提供給BIU16位有效地址及所需傳送的數(shù)據(jù)(2)執(zhí)行部件EU的組成A.EU由算術(shù)邏輯單元ALUB.通用數(shù)據(jù)寄存器組(4個(gè)16位通用寄存器)

AX、BX、CX、DXC.地址指針和變址寄存器(4個(gè)16位專用寄存器)

SP、BP、SI、DID.標(biāo)志寄存器(FR/PSW)E.數(shù)據(jù)暫存寄存器F.EU控制器組成(3)EU的特點(diǎn):A.通用數(shù)據(jù)寄存器AX,BX,CX,DX,既可以作16位寄存器使用,也可以分成高、低8位分別作兩個(gè)8位寄存器使用。地址指針BP,SP和變址寄存器SI,DI都是16位寄存器。B.ALU的核心是16位二進(jìn)制加法器C.16位狀態(tài)標(biāo)志寄存器(7位未用)存放操作后的狀態(tài)特征和設(shè)置的控制標(biāo)志。如下圖所示:D.EU控制器是執(zhí)行指令的控制電路,實(shí)現(xiàn)從隊(duì)列中取指令、譯碼、產(chǎn)生控制信號(hào)等。D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0CFPFAFZFSFTFIFDFOFPSW

2.總線接口部件BIU(1)

BIU的功能:1)BIU從主存取指令送到指令隊(duì)列緩沖器2)CPU執(zhí)行指令時(shí),總線接口單元要配合EU從指定的主存單元或外設(shè)端口中取數(shù)據(jù),將數(shù)據(jù)傳送給EU或把EU的操作結(jié)果傳送到指定的主存單元或外設(shè)端口中3)計(jì)算并形成訪問存儲(chǔ)器的20位物理地址(3)BIU的組成:1)4個(gè)16位段寄存器DS、ES、CS、SS2)16位指令指針寄存器(IP)3)20位物理地址加法器4)6字節(jié)指令隊(duì)列及總線控制邏輯(3)BIU的特點(diǎn):1)指令隊(duì)列是由6個(gè)字節(jié)的寄存器組成(8088指令隊(duì)列由4個(gè)字節(jié)組成),采用“先進(jìn)先出”原則。(3)BIU的特點(diǎn):

2)地址加法器是用來產(chǎn)生20位存儲(chǔ)器物理地址的。物理地址的計(jì)算公式為:物理地址(20位)=段基址(16位)×16+偏移地址(16位){由尋址方式計(jì)算出的有效地址EA(EffectiveAddress)}3)8086分配20條引腳線分時(shí)傳送20位地址,16位數(shù)據(jù)和4位狀態(tài)信息。2.1.28086的寄存器結(jié)構(gòu)8086CPU內(nèi)部設(shè)有三組信息寄存器(通用數(shù)據(jù)寄存器組,地址指針和變址寄存器,段寄存器組)和一個(gè)標(biāo)志寄存器及一個(gè)指令指針寄存器IP。1.通用數(shù)據(jù)寄存器EU中設(shè)置了四個(gè)16位通用寄存器,它們分別是AX,BX,CX和DX。它們可以拆成兩個(gè)獨(dú)立的8位寄存器使用。通用寄存器可參與算術(shù)和邏輯運(yùn)算,但它們還有各自特殊的用途。它們的具體用法如圖所示:寄存器一般用法隱含用法AX16位累加器(Accumulator)字乘時(shí)提供一個(gè)操作數(shù)并存放積的低字;字除時(shí)提供被除數(shù)的低字并存放商ALAX的低8位字節(jié)乘時(shí)提供一個(gè)操作數(shù)并存放積的低字節(jié);字節(jié)除時(shí)提供被除數(shù)的低字節(jié)并存放商;BCD碼運(yùn)算指令和XLAT指令中作累加器;字節(jié)I/O操作中存放8位輸入/輸出數(shù)據(jù)AHAX的高8位字節(jié)乘時(shí)提供一個(gè)操作數(shù)并存放積的高字節(jié);字節(jié)除時(shí)提供被除數(shù)的高字節(jié)并存放余數(shù);LAHF指令中充當(dāng)目的操作數(shù)BX基址(Base)寄存器,支持多種尋址,常用作地址寄存器XLAT指令中提供被查表格中源操作數(shù)的間接地址CX16位計(jì)數(shù)器(Counter)串操作時(shí)用作串長(zhǎng)計(jì)數(shù)器;循環(huán)操作中用作循環(huán)次數(shù)計(jì)數(shù)器CL8位計(jì)數(shù)器移位或循環(huán)移位時(shí)用作移位次數(shù)計(jì)數(shù)器DX16位數(shù)據(jù)(Data)寄存器在間接尋址的I/O指令中提供端口地址;字乘時(shí)存放積的高字,字除時(shí)提供被除數(shù)高字并存放余數(shù)表2-18086中通用寄存器的一般用法和隱含用法2.指針及變址寄存器(4個(gè)16位寄存器)EU中有兩個(gè)地址指針寄存器和兩個(gè)變址寄存器,它們分別為:SP(StackPointer),堆棧指針寄存器BP(BasePointer),基址指針寄存器SI(SourceIndex),源變址寄存器DI(DestinationIndex),目的變址寄存器它們的應(yīng)用如圖所示:寄存器一般用法隱含用法SP堆棧指針(StackPointer),與SS配合指示堆棧棧頂?shù)奈恢脡簵?、出棧操作中指示棧頂BP基址指針(BasePointer),它支持間接尋址、基址尋址、基址加變址等多種尋址手段。在子程序調(diào)用時(shí),常用它來取壓棧的參數(shù)SI源變址(SourceIndex)寄存器。它支持間接尋址、變址尋址、基址加變址尋址等多種尋址串操作時(shí)用作源變址寄存器,指示數(shù)據(jù)段(段默認(rèn))或其他段(段超越)中源操作數(shù)的偏移地址DI目的變址(DestinationIndex)寄存器。它支持間接尋址、變址尋址、基址加變址尋址等多種尋址串操作時(shí)用作目的變址寄存器,指示附加段(段默認(rèn))中目的操作數(shù)的偏移地址表2-28086中地址寄存器的一般用法和隱含用法8086寄存器的特別說明:(1)8086的堆棧及堆棧操作有以下特點(diǎn):雙字節(jié)操作。即每次進(jìn)、出棧的數(shù)據(jù)均為兩字節(jié)。且高位字節(jié)對(duì)應(yīng)高地址,低位字節(jié)對(duì)應(yīng)低地址。無論是源操作數(shù)還是目的操作數(shù),也無論是存儲(chǔ)器操作數(shù)還是寄存器操作數(shù),都必須按這個(gè)原則執(zhí)行。堆棧向低地址方向生成。數(shù)據(jù)每次進(jìn)棧時(shí)堆棧指針SP向低地址方向移動(dòng)(減2);反之,數(shù)據(jù)出棧時(shí),SP向高地址方向移動(dòng)(加2)(2)BP、BX都被稱為基址指針,但兩者用法不同。BP只能尋址堆棧段(段缺省),不允許段跨越;BX可以尋址數(shù)據(jù)段(段缺省),也可以尋址附加段(段跨越)。(3)由于大多數(shù)算術(shù)和邏輯運(yùn)算中又可以使用BP、SP和變址寄存器,因而也將這4個(gè)寄存器歸入通用寄存器組。使用中應(yīng)該注意這4個(gè)寄存器只能用于16位的存取操作3.段寄存器8086CPU中有4個(gè)段寄存器,用于存放當(dāng)前程序所用的各段的起始地址,也稱為段的基地址。1.代碼段寄存器CS(CodeSegment)其內(nèi)容左移4位再加上指令指針I(yè)P的內(nèi)容,就形成下一條要執(zhí)行的指令存放的實(shí)際物理地址。2.數(shù)據(jù)段寄存器DS(DataSegment)DS中的內(nèi)容左移4位再加上按指令中存儲(chǔ)器尋址方式計(jì)算出來的偏移地址,即為數(shù)據(jù)段指定的單元進(jìn)行讀寫的地址。3.堆棧段寄存器SS(StackSegment)堆棧是按“后進(jìn)先出”原則組織的一個(gè)特別存儲(chǔ)區(qū)。操作數(shù)的存放地址是由SS的內(nèi)容左移4位再加上SP的內(nèi)容而形成的。4.附加段寄存器ES(ExtendedSegment)附加段是在進(jìn)行字符串操作時(shí)作為目的區(qū)地址使用的一個(gè)附加數(shù)據(jù)段。在字符串操作指令中SI作為源變址寄存器,DI作為目的變址寄存器,其內(nèi)容都是偏移地址。

SP,BP,SI,DI與段寄存器聯(lián)用說明(1)SP,BP與SS聯(lián)用→確定堆棧段中某一存儲(chǔ)器單元的地址,SP用來表示棧頂?shù)钠频刂?,BP可作為堆棧區(qū)中的一個(gè)基地址以便訪問堆棧中的其他信息。(2)SI,DI與DS聯(lián)用→確定數(shù)據(jù)段中某一存儲(chǔ)器單元的地址,SI和DI有自動(dòng)增量和自動(dòng)減量的功能。在串處理指令中,SI和DI作為隱含的源變址和目的變址寄存器,SI和DS聯(lián)用,DI和ES聯(lián)用,分別達(dá)到在數(shù)據(jù)段和附加段中尋址的目的。(3)DF為1,SI、DI減量,由高地址向低地址處理;DF為0,SI、DI增量,由低地址向高地址處理4.指令指針寄存器和標(biāo)志寄存器(1)指令指針寄存器IP指令指針寄存器IP是一個(gè)16位的表示地址指針的寄存器

(2)標(biāo)志寄存器FR(FlagRegister)標(biāo)志寄存器也稱為程序狀態(tài)字PSW(ProgramStatusWord)寄存器,它是一個(gè)16位的標(biāo)志寄存器,但僅使用其中的9位。其中CF,OF,AF,ZF,SF,PF為6個(gè)狀態(tài)標(biāo)志位;DF,IF和TF為3個(gè)控制標(biāo)志位。如下圖所示:D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0CFPFAFZFSFTFIFDFOFPSW

圖2-28086CPU標(biāo)志寄存器

狀態(tài)信息由中央處理機(jī)根據(jù)計(jì)算機(jī)的結(jié)果自動(dòng)設(shè)置,6位狀態(tài)位的意義說明如下:OF(OverFlag)溢出標(biāo)志:溢出為18位帶符號(hào)數(shù)范圍+127~~-12816位帶符號(hào)數(shù)范圍+32767~~-32768SF(SignFlag)符號(hào)標(biāo)志:負(fù)為1,取最高有效位ZF(ZeroFlag)零標(biāo)志:是0為1CF(CarryFlag)進(jìn)位標(biāo)志:有進(jìn)位為1AF(AuxiliaryFlag)輔助進(jìn)位標(biāo)志:第3位有進(jìn)位置1(半字節(jié))PF(ParityFlag)奇偶進(jìn)位標(biāo)志:結(jié)果中低8位1的個(gè)數(shù)為偶數(shù)置1??刂菩畔⒂上到y(tǒng)程序或用戶程序根據(jù)需要用指令設(shè)置,控制標(biāo)志(3個(gè)):DF(DirectionFlag)方向標(biāo)志:DF為1,SI、DI減量,由高地址向低地址處理;DF為0,SI、DI增量,由低地址向高地址處理IF(InteruptFlag)中斷標(biāo)志:IF為1時(shí)允許中斷TF(TrapFlag)陷阱標(biāo)志(又叫跟蹤標(biāo)志):每執(zhí)行一條指令就引起一個(gè)內(nèi)部中斷。用于單步方式操作,TF為1,指令執(zhí)行完后產(chǎn)生陷阱,由系統(tǒng)控制計(jì)算機(jī);TF為0,CPU不產(chǎn)生陷阱,正常工作.在本書第三章中介紹的匯編程序調(diào)試軟件DEBUG中提供了測(cè)試標(biāo)志位的方法,標(biāo)志位0或1是用兩個(gè)字母來表示的。標(biāo)志位OFDFIFSFZFAFPFCF1/0OV/NVDN/UPEI/DING/PLZR/NZAC/NAPE/POCY/NC4.指令指針寄存器和標(biāo)志寄存器例題例1:MOVAX,2345HMOVBX,3219HADDAX,BX

指令執(zhí)行后,(AX)=555EHOF=0,CF=0,ZF=0,SF=0,AF=0,PF=0例2:MOVAX,0FFFFHMOVBX,1ADDAX,BX

指令執(zhí)行后,(AX)=0OF=0,CF=1,ZF=1,SF=0,AF=1,PF=1答案1:0010001101000101001100100001100101010101

01011110指令執(zhí)行后,(AX)=555EH

OF=1,CF=0,ZF=0,SF=0,AF=0,PF=05.存儲(chǔ)器組織與分段所謂存儲(chǔ)器分段技術(shù)就是把1MB空間分成若干邏輯段,每個(gè)邏輯段的容量≤64KB。段內(nèi)地址是連續(xù)的,段與段之間是互相獨(dú)立的。邏輯段可以在整個(gè)存儲(chǔ)空間浮動(dòng),即段的排列可以連續(xù)、分開、部分重疊或完全重疊,非常靈活。這里所謂的重疊是指存儲(chǔ)單元可以分屬于不同的邏輯段。存儲(chǔ)器的邏輯分段斷開排列A段B段C段D段E段40000H50000H60000H70000H連續(xù)排列部分重疊完全重疊

∑偏移地址段基址地址加法器物理地址段寄存器15150190圖2-8存儲(chǔ)器物理地址的形成存儲(chǔ)器物理地址的形成例題例3:設(shè)(DS)=1200H(SI)=0345H

物理地址:12345H 例4:設(shè)(CS)=4235H,(IP)=0A66H

物理地址:42DB6H6.I/O組織8086系統(tǒng)和外部設(shè)備之間是通過I/O接口進(jìn)行相互傳輸信息的。每個(gè)I/O接口都有一個(gè)或幾個(gè)I/O端口,一個(gè)端口往往對(duì)應(yīng)于接口上一個(gè)寄存器或一組寄存器。微機(jī)要為每個(gè)I/O端口分配一個(gè)地址,稱端口地址。端口地址和存儲(chǔ)單元地址一樣,應(yīng)具有惟一的地址編碼。微機(jī)I/O端口有兩種編址方式(1)統(tǒng)一編址(2)獨(dú)立編址編址方式統(tǒng)一編址這種編址方式是將I/O端口和存儲(chǔ)單元統(tǒng)一編址,即把I/O端口置于存儲(chǔ)器空間,也看作是存儲(chǔ)單元。因此,存儲(chǔ)器的各種尋址方式均可用來尋址I/O端口。在這種方式下I/O端口操作功能強(qiáng),使用起來也很靈活,I/O接口與CPU的連接和存儲(chǔ)器與CPU的連接相似。但是I/O端口占用了一定的存儲(chǔ)空間,而且執(zhí)行I/O操作時(shí),因地址位數(shù)長(zhǎng),速度較慢。獨(dú)立編址這種編址方法是將I/O端口進(jìn)行獨(dú)立編址,I/O端口空間與存儲(chǔ)器空間相互獨(dú)立。這就需要設(shè)置專門的輸入、輸出指令對(duì)I/O端口進(jìn)行操作。8086系統(tǒng)采用的就是這種獨(dú)立的I/O編址方式。端口地址說明8086使用A15~A0這16根地址線作為I/O端口地址線,可訪問端口最多可達(dá)64K個(gè)8位端口或32K個(gè)16位端口。和存儲(chǔ)器的字單元一樣,對(duì)于奇地址的16位端口的訪問,要進(jìn)行兩次操作才能完成。16位的I/O端口地址無需經(jīng)過地址加法器產(chǎn)生,因而不使用段寄存器。從AB總線上發(fā)出的端口地址仍為20位,只不過最高四位A19~A16為0。練習(xí)1:MOVAX,6A3EHMOVBX,26A7HADDAX,BX

指令執(zhí)行后,(AX)=?,OF=?,CF=?,ZF=?,SF=?,AF=?,PF=?2:設(shè)(CS)=4500H,(IP)=2122H

求物理地址?答案1:011010100011111000100110101001111001000

溫馨提示

  • 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論