ch2 微處理器與總線_第1頁
ch2 微處理器與總線_第2頁
ch2 微處理器與總線_第3頁
ch2 微處理器與總線_第4頁
ch2 微處理器與總線_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、授課教師:王磊齊魯工業(yè)大學(xué)電氣學(xué)院辦公室:機(jī)電樓C320E-mail:第二章 微處理器與總線回顧微機(jī)系統(tǒng)的硬件組成微機(jī)系統(tǒng)的硬件組成ROMCPURAMI/O接口外部設(shè)備電源時(shí)鐘脈沖電路ABDBCB本章學(xué)習(xí)部分本章學(xué)習(xí)部分第二章 微處理器與總線第二章 微處理器與總線本章主要內(nèi)容本章主要內(nèi)容總線的一般概念總線的一般概念80888088/ /80868086微處理器微處理器工作原理外部引腳內(nèi)部結(jié)構(gòu)存儲(chǔ)器組織工作時(shí)序第二章 微處理器與總線總線總線的由來總線的由來 在計(jì)算機(jī)中,CPU與其他功能部件之間存在大量的信息交流,其間就需要使用通信線路連接起來,通信線的設(shè)置和連接可采用兩種方式。專線式:將各個(gè)功能

2、部件分別設(shè)置與其它部件通信的線路總線式:在多個(gè)功能部件之間設(shè)置公共的通信線即總線。ABCABC 總 線 示 意 圖第二章 微處理器與總線內(nèi)部總線外部總線第二章 微處理器與總線 由于采用了分時(shí)傳送的總線結(jié)構(gòu)從而大大減少了機(jī)器中信息傳送線的數(shù)目。a. 分時(shí)傳送:分時(shí)傳送:多個(gè)部件并聯(lián)在總線上,某一時(shí)刻,只允許一路信息在總線上傳送。b. 控制復(fù)雜控制復(fù)雜: 總線的發(fā)送端及接收端均有三態(tài)門電路。 打開三態(tài)門信息經(jīng)總線傳送到目的端。 若不傳送信息,則使三態(tài)門處于高阻狀態(tài),相當(dāng)于此部件在邏輯上與總線脫離聯(lián)系。c. 系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,便于擴(kuò)展系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,便于擴(kuò)展。第二章 微處理器與總線總線總線的分類總線的分類

3、總線按信息傳送的方向可分為單向總線和雙向總線。總線按所傳信息的類別,通常分為數(shù)據(jù)總線數(shù)據(jù)總線、地址總線地址總線和控制總線控制總線。數(shù)據(jù)總線:數(shù)據(jù)總線:是微處理器與存儲(chǔ)器和I/O電路間數(shù)據(jù)交換的通道,可雙向傳送。數(shù)據(jù)總線的寬度一般與微處器處理數(shù)據(jù)的字長(zhǎng)相同,三狀態(tài)。地址總線:地址總線:是微處理器輸出地址用的總線,它將地址送到存儲(chǔ)器或I/O電路,用來確定存儲(chǔ)器中信息存放的地址或I/O電路的地址,AB一般為單向、三狀態(tài)??刂瓶偩€:控制總線:是用來傳送控制信號(hào),使各功能部件動(dòng)作同步。第二章 微處理器與總線2.1 微處理器概述微處理器簡(jiǎn)稱微處理器簡(jiǎn)稱CPU,是計(jì)算機(jī)的核心主要包括:是計(jì)算機(jī)的核心主要包括

4、: 運(yùn)算器運(yùn)算器 控制器控制器 寄存器組寄存器組人們常說的16位機(jī),32位機(jī)指的是內(nèi)部總線的寬度第二章 微處理器與總線2.2 8088/8086微處理器8088、8086屬于第三代屬于第三代CPU本節(jié)主要內(nèi)容:本節(jié)主要內(nèi)容:8088/ 8086 CPU外部引線及功能8088 / 8086 CPU的內(nèi)部結(jié)構(gòu)和特點(diǎn)各內(nèi)部寄存器的功能8088 / 8086的工作時(shí)序 第二章 微處理器與總線2.2 8088/8086微處理器概述:概述:16位微處理器位微處理器 內(nèi)部數(shù)據(jù)總線均為16位外部數(shù)據(jù)總線 8088為8位、8086內(nèi)部數(shù)據(jù)總線為16位20根地址線,可尋址內(nèi)存范圍 220=1MB內(nèi)存空間(0000

5、0H FFFFFH)時(shí)鐘頻率為5MHz 外部特性:40個(gè)引腳,+5V電源供電最大/最小兩種工作模式 第二章 微處理器與總線2.2 8088/8086微處理器8086 CPU的特點(diǎn)的特點(diǎn)程序的一般執(zhí)行過程:取指令指令譯碼讀取操作數(shù) 執(zhí)行指令存放結(jié)果程序: 具有一定功能的指令的有序集合指令: 由人向計(jì)算機(jī)發(fā)出的、能夠?yàn)橛?jì)算機(jī)所識(shí)別的命令。第二章 微處理器與總線2.2 8088/8086微處理器8086 CPU的特點(diǎn)的特點(diǎn)8086的指令流水線的指令流水線 采用并行流水線工作方式: 通過設(shè)置指令預(yù)取隊(duì)列實(shí)現(xiàn)串行工作方式: 控制器和運(yùn)算器交替工作,按順序完成上述指令執(zhí)行過程。并行工作方式: 運(yùn)算器和控制

6、器可同時(shí)工作指令執(zhí)行指令執(zhí)行和取指取指同時(shí)進(jìn)行第二章 微處理器與總線串行工作方式:80888088以前的以前的CPUCPU采用串行工作方式采用串行工作方式取指令取指令1執(zhí)行執(zhí)行1存結(jié)果存結(jié)果1取指令取指令2 取操作數(shù)取操作數(shù)執(zhí)行執(zhí)行2CPUBUS忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌第二章 微處理器與總線并行工作方式:8088CPU采用并行工作方式采用并行工作方式取指令取指令2 取操作數(shù)取操作數(shù)BIU存結(jié)果存結(jié)果取指令取指令3 取操作數(shù)取操作數(shù) 取指令取指令4執(zhí)行執(zhí)行1執(zhí)行執(zhí)行2執(zhí)行執(zhí)行3 EUBUS忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌第二章 微處理器與總線2.2 8088/8086微處

7、理器8086 CPU的特點(diǎn)的特點(diǎn)8086的內(nèi)存分段管理的內(nèi)存分段管理 將內(nèi)存分為4個(gè)段,并設(shè)置地址段寄存器,以實(shí)現(xiàn)對(duì)1MB (00000H FFFFFH)空間的尋址為什么引入分段機(jī)制?(課本P39) 8088寄存器是16位的,無法裝載20位的物理地址,因此采用將地址空間分段的方法,即把220(1M)的地址空間分為216(64K)的段,并為每個(gè)段設(shè)置段地址和段內(nèi)地址(也叫偏移地址),實(shí)際物理地址由二者通過地址加法器計(jì)算得到。 第二章 微處理器與總線2.2 8088/8086微處理器8086/8088 CPU的特點(diǎn)的特點(diǎn)8086/8088支持多處理器支持多處理器 8088可工作于兩種模式下,即:

8、最小模式和最大模式。最小模式:?jiǎn)翁幚頇C(jī)模式,控制信號(hào)較少,一般可不必接總線控制器。最大模式:多處理機(jī)模式,控制信號(hào)較多,須通過總線控制器與總線相連。第二章 微處理器與總線2.2 8088/8086微處理器8088CPU的引線及功能的引線及功能 8086采用雙列直插式封裝,有40個(gè)引腳(如右圖所示),但總線信號(hào)數(shù)量卻大于40,故8086采用了分時(shí)復(fù)用技術(shù),部分引腳傳送兩種總線信號(hào)。8086的引腳信號(hào)注:括號(hào)內(nèi)為該引腳在最大模式下的名稱12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13

9、AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET8086CPU第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:AD7AD0:低8位地址和數(shù)據(jù)信號(hào)分時(shí)復(fù) 用。傳送地址信號(hào)時(shí)為單向,傳送數(shù)據(jù)信號(hào)時(shí)為雙向。A15 A8 :輸出8位地址信號(hào)。 A

10、19A16/S3 S6:高4位地址信號(hào),狀態(tài)分時(shí)復(fù)用。12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREA

11、DYRESET8086CPU第二章 微處理器與總線S3 S6:段寄存器狀態(tài):段寄存器狀態(tài)第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:主要的控制和狀態(tài)信號(hào)WR(Write): 寫信號(hào)RD(Read): 讀信號(hào)IO/M(IO/Memory):“0”表示訪問內(nèi)存 “1”表示訪問接口DEN(Data Enable): 低電平有效時(shí),允許進(jìn)行讀/寫操作RESET:復(fù)位信號(hào)12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5

12、AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET8086CPU第二章 微處理器與總線例:當(dāng)當(dāng)WR=1WR=1,RD=0RD=0,IO/M=0IO/M=0時(shí),時(shí), 表示表示CPUCPU當(dāng)前正在進(jìn)行當(dāng)前正在進(jìn)行 操作操作 讀存儲(chǔ)器讀存儲(chǔ)器第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:ALE(A

13、ddress Latch Enable):地址鎖存允許信號(hào),在任一個(gè)總線周期的T1狀態(tài),ALE輸出有效電平,表示地址/數(shù)據(jù)復(fù)用總線上輸出的是地址信息,地址鎖存器將ALE作為鎖存信號(hào),對(duì)地址進(jìn)行鎖存DT/R(Data Transmit/Receive):數(shù)據(jù)傳輸方向控制信號(hào),高電平時(shí)CPU發(fā)送信號(hào),低電平時(shí)接收12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A

14、16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET8086CPU第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:READY: 由CPU訪問的內(nèi)存或I/O設(shè)備發(fā)出,當(dāng)其為高電平時(shí),表示內(nèi)存或I/O已準(zhǔn)備好12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13

15、AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET8086CPUT T1 1T T2 2T T3 3TwaitTwaitT T4 4第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:中斷請(qǐng)求和響應(yīng)信號(hào)中斷請(qǐng)求和響應(yīng)信號(hào)INTR(Interup

16、t Request): 可屏蔽中斷請(qǐng)求輸入端NMI(Unmasked Interrupt ): 非屏蔽中斷請(qǐng)求輸入端INTA (Interupt Answer) : 中斷響應(yīng)輸出端12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT

17、1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET8086CPU第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:總線保持信號(hào)總線保持信號(hào)HOLD: 總線保持請(qǐng)求信號(hào)輸入端。當(dāng)CPU以外的其他設(shè)備要求占用總線時(shí),通過該引腳向CPU發(fā)出請(qǐng)求HLDA: 總線保持響應(yīng)信號(hào)輸出端。CPU對(duì)HOLD信號(hào)的響應(yīng)信號(hào)12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9

18、AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/ S3A17/ S4A18/ S5A19/ S6BHE/ S7MN/MXRDHOLD (RQ/GT0)HLDA (RQ/GT1)WR (LOCK)M/IO (S2)DT/R (S1)DEN (S0)ALE (QS0)INTA (QS1)TESTREADYRESET8086CPU第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)8086從功能結(jié)構(gòu)來講,分為兩大部分,即總線接口部件BIU(Bus Interface Unit )和執(zhí)行部件EU(Ex

19、ecution Unit)。(1) BIU部件部件由段寄存器段寄存器、指令指針指令指針、地址加法器地址加法器、指指令隊(duì)列緩沖器令隊(duì)列緩沖器和控制電路控制電路等部分組成。(2) EU部件部件 由ALU、通用寄存器通用寄存器、標(biāo)志寄存器標(biāo)志寄存器和控制電控制電路路組成,負(fù)責(zé)指令的執(zhí)行。ALU、寄存器和數(shù)據(jù)傳輸通路均是16bit的。第二章 微處理器與總線執(zhí)行部分執(zhí)行部分控制電路控制電路ALU標(biāo)志寄存器標(biāo)志寄存器 AH AL BH BLCH CL DH DL SP BP SI DI通用通用寄存器寄存器16位位1 2 3 4 內(nèi)部暫存器內(nèi)部暫存器 IP ES SS DS CS輸入輸入/輸出輸出控制電路控

20、制電路外部總線外部總線地址地址加法加法器器指令隊(duì)列指令隊(duì)列總線接口部件總線接口部件 (BIU)20位位8位位8位位執(zhí)行部件執(zhí)行部件 (EU)BIU包括:包括:段寄存器段寄存器、指令指針指令指針、地址加法地址加法器器、指令隊(duì)列緩沖器指令隊(duì)列緩沖器和控制電路控制電路功能:功能:1)地址加法器產(chǎn)生20位物理地址段寄存器存放段首地址,20位的物理地址的計(jì)算第二章 微處理器與總線執(zhí)行部分執(zhí)行部分控制電路控制電路ALU標(biāo)志寄存器標(biāo)志寄存器 AH AL BH BLCH CL DH DL SP BP SI DI通用通用寄存器寄存器16位位1 2 3 4 內(nèi)部暫存器內(nèi)部暫存器 IP ES SS DS CS輸入輸

21、入/輸出輸出控制電路控制電路外部總線外部總線地址地址加法加法器器指令隊(duì)列指令隊(duì)列總線接口部件總線接口部件 (BIU)20位位8位位8位位執(zhí)行部件執(zhí)行部件 (EU)BIU功能:功能:2)從內(nèi)存取指令到指令預(yù)取隊(duì)列 在執(zhí)行指令時(shí),如要取操作數(shù),則也由BIU從內(nèi)存或I/O接口指定區(qū)域取出,送給EU部件去執(zhí)行。 在執(zhí)行轉(zhuǎn)移程序時(shí),BIU使指令隊(duì)列復(fù)位,從指定的新地址取指令,并立即傳給執(zhí)行單元執(zhí)行。第二章 微處理器與總線執(zhí)行部分執(zhí)行部分控制電路控制電路ALU標(biāo)志寄存器標(biāo)志寄存器 AH AL BH BLCH CL DH DL SP BP SI DI通用通用寄存器寄存器16位位1 2 3 4 內(nèi)部暫存器內(nèi)部

22、暫存器 IP ES SS DS CS輸入輸入/輸出輸出控制電路控制電路外部總線外部總線地址地址加法加法器器指令隊(duì)列指令隊(duì)列總線接口部件總線接口部件 (BIU)20位位8位位8位位執(zhí)行部件執(zhí)行部件 (EU)EU功能:功能:指令的執(zhí)行:從指令隊(duì)列中取指令代碼 譯碼 在ALU中完成數(shù)據(jù)的運(yùn)算 運(yùn)算結(jié)果 的特征保存在標(biāo)志寄存器FLAGS中。 當(dāng)指令要求將數(shù)據(jù)寫寫到存儲(chǔ)存儲(chǔ)器器和I/OI/O電路電路,或需從存儲(chǔ)存儲(chǔ)器器和I/OI/O電路電路中讀讀取數(shù)據(jù)時(shí),EU向BIU發(fā)出請(qǐng)求,BIU自動(dòng)完成這些操作。第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)總線

23、接口部件和執(zhí)行部件的協(xié)調(diào)管理總線接口部件和執(zhí)行部件的協(xié)調(diào)管理1)當(dāng)指令隊(duì)列中有2字節(jié)空閑時(shí),總線接口部件就自動(dòng)將指令從內(nèi)存中預(yù)取到指令隊(duì)列中。2)每當(dāng)EU部件要執(zhí)行一條指令時(shí),它就從指令隊(duì)列頭部取出指令,后續(xù)指令自動(dòng)向前推進(jìn)。EU要花幾個(gè)時(shí)鐘周期執(zhí)行指令,指令執(zhí)行中若需要訪問內(nèi)存或I/O設(shè)備,EU就向BIU申請(qǐng)總線周期,若BIU總線空閑,則立即響應(yīng),若BIU正在取一條指令,則待取指令操作完成后再響應(yīng)EU的總線請(qǐng)求。第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)總線接口部件和執(zhí)行部件的協(xié)調(diào)管理總線接口部件和執(zhí)行部件的協(xié)調(diào)管理3)當(dāng)指令隊(duì)列已滿

24、,EU又沒有申請(qǐng)總線時(shí),則總線空閑。4)遇到轉(zhuǎn)移、調(diào)用及返回指令時(shí),原先預(yù)取到指令隊(duì)列中的指令已不再有用,BIU就自動(dòng)清除指令隊(duì)列中已有內(nèi)容,從轉(zhuǎn)移、調(diào)用或返回的新地址開始,重新從內(nèi)存中預(yù)讀取指令并填充指令隊(duì)列。 第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)總線接口部件和執(zhí)行部件的協(xié)調(diào)管理總線接口部件和執(zhí)行部件的協(xié)調(diào)管理結(jié)論:結(jié)論: 指令預(yù)取隊(duì)列的存在使EU和BIU兩個(gè)部分可同時(shí)進(jìn)行工作,從而 提高了CPU的效率 降低了對(duì)存儲(chǔ)器存取速度的要求第二章 微處理器與總線8088的指令執(zhí)行過程第二章 微處理器與總線2.2 8088/8086微處理

25、器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器含14個(gè)16位寄存器,按功能可分為三類 8個(gè)通用寄存器個(gè)通用寄存器 4個(gè)段寄存器個(gè)段寄存器 2個(gè)控制寄存器個(gè)控制寄存器深入理解:深入理解:每個(gè)寄存器中數(shù)據(jù)的含義每個(gè)寄存器中數(shù)據(jù)的含義第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器通用寄存器通用寄存器 數(shù)據(jù)寄存器(AX,BX,CX,DX) 地址指針寄存器(SP,BP) 變址寄存器(SI,DI)注意:注意:寄存器的名字與用法有關(guān)寄存器的名字與用法有關(guān)第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部寄存器的

26、內(nèi)部寄存器通用寄存器通用寄存器數(shù)據(jù)寄存器(數(shù)據(jù)寄存器(AX,BX,CX,DX)4個(gè)16位數(shù)據(jù)寄存器,它們又可分為8個(gè)8位寄存器,即: AX AH,AL BX BH,BL CX CH,CL DX DH,DL第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器通用寄存器通用寄存器 數(shù)據(jù)寄存器的通常用法AX:累加器。所有I/O指令都通過AX與接口傳送信息,中間運(yùn)算結(jié)果也多放于AX中BX:基址寄存器。在間接尋址中用于存放基地址;CX:計(jì)數(shù)寄存器。用于在循環(huán)或串操作指令中存放計(jì)數(shù)值DX:數(shù)據(jù)寄存器。在間接尋址的I/O指令中存放I/O端口地址;在32位乘

27、除法運(yùn)算時(shí),存放高16位數(shù)第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器通用寄存器通用寄存器地址指針寄存器(地址指針寄存器(SP,BP) SP:堆棧指針寄存器,其內(nèi)容為棧頂?shù)钠频刂稡P:基址指針寄存器,常用于在訪問內(nèi)存時(shí)存放內(nèi)存單元的偏移地址BX與與BP在應(yīng)用上的區(qū)別:在應(yīng)用上的區(qū)別: 作為通用寄存器,二者均可用于存放數(shù)據(jù)作為通用寄存器,二者均可用于存放數(shù)據(jù) 作為基址寄存器,表示所尋找的數(shù)據(jù)所在段不一樣;作為基址寄存器,表示所尋找的數(shù)據(jù)所在段不一樣;第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部

28、寄存器的內(nèi)部寄存器通用寄存器通用寄存器變址寄存器(變址寄存器(SP,BP) SI:源變址寄存器DI:目標(biāo)變址寄存器變址寄存器常用于指令的間接尋址或變址尋址。特別變址寄存器常用于指令的間接尋址或變址尋址。特別是在串操作指令中,用是在串操作指令中,用SI存放源操作數(shù)的偏移地址,而存放源操作數(shù)的偏移地址,而用用DI存放目標(biāo)操作數(shù)的偏移地址。存放目標(biāo)操作數(shù)的偏移地址。第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器段寄存器段寄存器用于存放相應(yīng)邏輯段的段基地址用于存放相應(yīng)邏輯段的段基地址 CS:代碼段寄存器。代碼段存放指令代碼:代碼段寄存器。代碼段

29、存放指令代碼 DS:數(shù)據(jù)段寄存器:數(shù)據(jù)段寄存器 ES:附加段寄存器:附加段寄存器 SS:堆棧段寄存器:指示堆棧區(qū)域的位置:堆棧段寄存器:指示堆棧區(qū)域的位置存放操作數(shù)存放操作數(shù)第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器控制寄存器控制寄存器IP:指令指針寄存器,其內(nèi)容為下一條要執(zhí)行指令的偏移地:指令指針寄存器,其內(nèi)容為下一條要執(zhí)行指令的偏移地址址FLAGS:標(biāo)志寄存器,存放運(yùn)算結(jié)果的:標(biāo)志寄存器,存放運(yùn)算結(jié)果的 特征特征 6個(gè)狀態(tài)標(biāo)志位(個(gè)狀態(tài)標(biāo)志位(CF,SF,AF,PF,OF,ZF) 用于寄存程序運(yùn)行的狀態(tài)信息。不應(yīng)人為設(shè)置用于寄存

30、程序運(yùn)行的狀態(tài)信息。不應(yīng)人為設(shè)置 3個(gè)控制標(biāo)志位(個(gè)控制標(biāo)志位(IF,TF,DF) 用于控制機(jī)器或程序的某些運(yùn)行過程。人為設(shè)置用于控制機(jī)器或程序的某些運(yùn)行過程。人為設(shè)置第二章 微處理器與總線D15D0 OF DF IF TF SF ZF AF PF CF符符號(hào)號(hào)標(biāo)標(biāo)志志單單步步中中斷斷中中斷斷允允許許方方向向標(biāo)標(biāo)志志溢溢出出標(biāo)標(biāo)志志進(jìn)進(jìn)借借位位標(biāo)標(biāo)志志1-有進(jìn)、借位有進(jìn)、借位0-無進(jìn)、借位無進(jìn)、借位半半進(jìn)進(jìn)借借位位標(biāo)標(biāo)志志1-低低4位向高位向高4位有進(jìn)、借位位有進(jìn)、借位0-低低4位向高位向高4位無進(jìn)、借位位無進(jìn)、借位奇奇偶偶標(biāo)標(biāo)志志1-低低8位有偶數(shù)個(gè)位有偶數(shù)個(gè)10-低低8位有奇數(shù)個(gè)位有奇數(shù)個(gè)

31、11-結(jié)果為結(jié)果為00-結(jié)果不為結(jié)果不為0零零標(biāo)標(biāo)志志控制標(biāo)志位控制標(biāo)志位第二章 微處理器與總線8位二進(jìn)制加法如下,給出各狀態(tài)標(biāo) 志位的值: 1 0 1 1 0 1 0 1 被加數(shù)8位 + 1 0 0 0 1 1 1 1 加數(shù)8位進(jìn)位 1 1 1 1 1 1 1 0 1 0 0 0 1 0 0 和8位最高位最高位D7位產(chǎn)生進(jìn)位位產(chǎn)生進(jìn)位: CF = 1 D3位產(chǎn)生進(jìn)位位產(chǎn)生進(jìn)位: AF = 1相加的結(jié)果為相加的結(jié)果為44H, 不為不為0: ZF = 0結(jié)果的最高位為結(jié)果的最高位為0: SF = 0兩負(fù)數(shù)相加結(jié)果為正,溢出兩負(fù)數(shù)相加結(jié)果為正,溢出: OF = 1結(jié)果中有結(jié)果中有2個(gè)個(gè)1,偶數(shù)個(gè),

32、偶數(shù)個(gè)1: PF = 1第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的存儲(chǔ)器組織的存儲(chǔ)器組織8086/8088有20根地址線,可尋址1M的內(nèi)存單元, 編號(hào): 00000HFFFFFH,稱為物理地址。但8086/8088內(nèi)部所有的寄存器都是16位的,0000HFFFFH (64K) 解決方案:內(nèi)存分段物理地址:物理地址:存儲(chǔ)器中以字節(jié)為單位進(jìn)行編址,即每個(gè)存儲(chǔ)單元是一個(gè)字節(jié),對(duì)每個(gè)單元分配一個(gè)編號(hào),這就形成了存儲(chǔ)單元的物理地址。物理地址從0開始編號(hào),順序加1第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的存儲(chǔ)器組織的存儲(chǔ)器組織

33、1MB的存儲(chǔ)器空間劃分為任意的一些存儲(chǔ)段,一個(gè)存儲(chǔ)段是存儲(chǔ)器中可獨(dú)立尋址的一個(gè)邏輯單位,也稱邏輯段。然后用段基地址加上段內(nèi)偏移地址來訪問物理地址。邏輯地址:邏輯地址:段基地址和偏移地址又稱為邏輯地址。通常寫作:XXXXH:YYYYH第二章 微處理器與總線注意:注意:段段最大不超過216=64K,最小任意,段與段之間可以重疊、相連或分開段不能起始于任意地址,而必須起始于一個(gè)小段小段的首地址 小段:機(jī)器規(guī)定從0地址開始沒16B構(gòu)成一個(gè)小段 00000H,00001H,00002H,0000EH,0000FH; 00010H,00011H,00012H,0001EH,0001FH; 00020H,0

34、0021H,00022H,0002EH,0002FH; 第一列就是小段首地址,特征:16進(jìn)制表示的地址中最后一位是0,即形如XXXX0H的形式。第二章 微處理器與總線物理地址:物理地址:存儲(chǔ)器中每個(gè)存儲(chǔ)單元(字節(jié)單元)的實(shí)際地址,20位邏輯地址:邏輯地址:段基地址:每個(gè)邏輯段起始地址,每個(gè)段的起始地址必須是能被16整除的那些地址,即20位的起始地址的低四位應(yīng)當(dāng)是0000。用20位地址的高16位表示段的基址。偏移地址:相對(duì)段基地址的偏移量,無符號(hào)數(shù),也稱有效地址EA,是在段基址上的附加值 。* 每個(gè)存儲(chǔ)單元只有唯一的物理地址,但可以有不同每個(gè)存儲(chǔ)單元只有唯一的物理地址,但可以有不同的邏輯地址。的

35、邏輯地址。第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的存儲(chǔ)器組織的存儲(chǔ)器組織20位物理地址的形成 在BIU的地址加法器中形成20位的物理地址. DSESSSCSIP地址總線地址總線AB地地址址加加法法器器四個(gè)段寄存器四個(gè)段寄存器CS: 代碼段代碼段寄存器DS:數(shù)據(jù)段:數(shù)據(jù)段寄存器SS:堆棧段:堆棧段寄存器ES:附加段:附加段寄存器可以存放偏移地址的寄存器很多第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的存儲(chǔ)器組織的存儲(chǔ)器組織地址加法器的工作原理物理地址物理地址PA = 段地址段地址 偏移地址偏移地址 = ( 段寄存器段寄

36、存器 ) 16 + 偏移地址偏移地址 = ( 段寄存器段寄存器 ) 10H + 偏移地址偏移地址即段寄存器的內(nèi)容左移即段寄存器的內(nèi)容左移4位,加上偏移地址位,加上偏移地址第二章 微處理器與總線段基地址段基地址 =6000H段首地址段首地址偏移地址偏移地址物理地址物理地址代碼段代碼段60009H00H12H60000H0009H第二章 微處理器與總線已知已知CS=1055H, DS=250AH ES=2EF0H SS=8FF0H 某操作數(shù)偏移地址某操作數(shù)偏移地址=0204H畫出各段在內(nèi)存中的分布、畫出各段在內(nèi)存中的分布、 段首地址及操作數(shù)的物理地址段首地址及操作數(shù)的物理地址10550H250A0

37、H2EF00H8FF00HDSESSS CS第二章 微處理器與總線例題解答設(shè)操作數(shù)在數(shù)據(jù)段,則操作數(shù)的物理地址為:設(shè)操作數(shù)在數(shù)據(jù)段,則操作數(shù)的物理地址為: 250AH 16+0204H = 250A0H +0204H = 252A4H第二章 微處理器與總線 某內(nèi)存單元的段地址由DS、偏移地址由BX給出。 若( DS) = 2000H, ( BX) = 1000H,計(jì)算其物理地址。PA = ( DS ) 10H + ( BX ) = 2000H 10H + 1000H = 21000H 2 20 00 00 00 0H H+ + 1 10 00 00 0H H 2 21 10 00 00 0H

38、H 0 00 01 10 0 0 00 00 00 0 0 00 00 00 0 0 00 00 00 0 0 00 00 00 0B B + + 0 00 00 01 1 0 00 00 00 0 0 00 00 00 0 0 00 00 00 0B B 0 00 01 10 0 0 00 00 01 1 0 00 00 00 0 0 00 00 00 0 0 00 00 00 0B BA19 A16 A12 A8 A4 A020根地址線根地址線:第二章 微處理器與總線物理地址信號(hào)在地址總線上傳送:地址21000H = 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0

39、0 0 BDSESSSCSIP數(shù)據(jù)暫存器數(shù)據(jù)暫存器PSW標(biāo)志標(biāo)志寄存器寄存器執(zhí)行部件控制電路執(zhí)行部件控制電路指令譯碼器指令譯碼器AXBXCXDXAHBHCHDHSIDIBPSPALBLCLDL寄存器組寄存器組指指令令隊(duì)隊(duì)列列總線總線接口接口控制控制電路電路運(yùn)運(yùn)算算器器地地址址加加法法器器、指令指令1指令指令2指令指令3指令指令4、數(shù)據(jù)數(shù)據(jù)1數(shù)據(jù)數(shù)據(jù)2數(shù)據(jù)數(shù)據(jù)3、地址總線地址總線AB數(shù)據(jù)總線數(shù)據(jù)總線DB控制總線控制總線CB地地址址譯譯碼碼器器第二章 微處理器與總線l用用( )表示內(nèi)存單元的內(nèi)容:表示內(nèi)存單元的內(nèi)容:( 21000H ) = 0FH( 2000:1000H ) = 0FH( DS:

40、BX ) = 0FHl 內(nèi)存單元物理地址的幾種表示方法:內(nèi)存單元物理地址的幾種表示方法: PA 21000H 2000:1000H DS:BX.0FhFFh56h.21000H內(nèi)存內(nèi)存DS:BX2000:1000H第二章 微處理器與總線指令的地址指令的地址固定由CS和IP兩個(gè)寄存器決定。 (代碼段寄存器和指令指針寄存器) 開機(jī)開機(jī)或或RESET復(fù)位后,復(fù)位后,( CS ) = FFFFH,( IP ) = 0故故8086/8088執(zhí)行的執(zhí)行的第一條指令第一條指令所在內(nèi)存的地址為:所在內(nèi)存的地址為: PA = ( CS ) 10H + ( IP ) = FFFF H 10H + 0 = FFFF

41、0H第二章 微處理器與總線操作類型操作類型正常使用(隱含)正常使用(隱含)段基址段基址可替換可替換段地址段地址偏移偏移地址地址物理地址計(jì)算物理地址計(jì)算取指令取指令CS無無IP(CS) 16d+(IP)堆棧操作堆棧操作SS無無SP(SS) 16d+(SP)BP間址間址SSCS,DS,ES有效地址有效地址EA(SS) 16d+EA存取變量存取變量DSCS,ES,SS有效地址有效地址EA(DS ) 16d+EA源字符串源字符串DSCS,ES,SSSI(DS) 16d+(SI)目標(biāo)字符串目標(biāo)字符串ES無無DI(ES) 16d+(DI)邏輯地址來源:邏輯地址來源:第二章 微處理器與總線堆棧及堆棧段的使用

42、堆棧:內(nèi)存中一個(gè)特殊區(qū)域,用于存放暫時(shí)堆棧:內(nèi)存中一個(gè)特殊區(qū)域,用于存放暫時(shí)不用或需要保護(hù)的數(shù)據(jù)不用或需要保護(hù)的數(shù)據(jù)常用于響應(yīng)中斷或子程序調(diào)用常用于響應(yīng)中斷或子程序調(diào)用第二章 微處理器與總線例:若已知(若已知(SS)=1000H (SP)=2000H則堆棧段的段首地址則堆棧段的段首地址 = ?棧頂?shù)刂窏m數(shù)刂??若該段最后一個(gè)單元若該段最后一個(gè)單元 地址為地址為10100H,則棧底則棧底=?段首棧底棧頂堆棧區(qū)第二章 微處理器與總線8086系統(tǒng)內(nèi)存地址的一些專用區(qū)域0000003FFH 1KB 空間用于存放中斷向量表,可存空間用于存放中斷向量表,可存放放256個(gè)中斷服務(wù)程序的入口地址,每個(gè)地址占

43、個(gè)中斷服務(wù)程序的入口地址,每個(gè)地址占4字節(jié)。字節(jié)。 B0000B0FFFH 4KB 為單色顯示器顯示緩沖區(qū)為單色顯示器顯示緩沖區(qū) ,存,存放屏幕當(dāng)前顯示字符的放屏幕當(dāng)前顯示字符的ASCII碼。碼。 B8000BBFFFH 16KB 為彩色顯示器顯示緩沖區(qū),存為彩色顯示器顯示緩沖區(qū),存放屏幕當(dāng)前像素代碼。放屏幕當(dāng)前像素代碼。 FFFF0H 啟動(dòng)地址。一般用來存放一條無條件轉(zhuǎn)移指令,啟動(dòng)地址。一般用來存放一條無條件轉(zhuǎn)移指令,轉(zhuǎn)到系統(tǒng)初始化程序。轉(zhuǎn)到系統(tǒng)初始化程序。第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的工作時(shí)序的工作時(shí)序時(shí)序:時(shí)序:微處理器各引腳在時(shí)間上的工作關(guān)系,微處理器各引腳在時(shí)間上的工作關(guān)系,有兩種:時(shí)鐘周期和總線周期了解CPU的工作時(shí)序有利于我們?cè)诰幊虝r(shí)適當(dāng)選用指令以縮短指令的存

溫馨提示

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

評(píng)論

0/150

提交評(píng)論