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

下載本文檔

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

文檔簡介

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

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

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

4、: 運算器運算器 控制器控制器 寄存器組寄存器組人們常說的16位機,32位機指的是內(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)和特點各內(nèi)部寄存器的功能8088 / 8086的工作時序 第二章 微處理器與總線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)時鐘頻率為5MHz 外部特性:40個引腳,+5V電源供電最大/最小兩種工作模式 第二章 微處理器與總線2.2 8088/8086微處理器8086 CPU的特點的特點程序的一般執(zhí)行過程:取指令指令譯碼讀取操作數(shù) 執(zhí)行指令存放結(jié)果程序: 具有一定功能的指令的有序集合指令: 由人向計算機發(fā)出的、能夠為計算機所識別的命令。第二章 微處理器與總線2.2 8088/8086微處理器8086 CPU的特點的特點8086的指令流水線的指令流水線 采用并行流水線工作方式: 通過設置指令預取隊列實現(xiàn)串行工作方式: 控制器和運算器交替工作,按順序完成上述指令執(zhí)行過程。并行工作方式: 運算器和控制

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

8、最小模式和最大模式。最小模式:單處理機模式,控制信號較少,一般可不必接總線控制器。最大模式:多處理機模式,控制信號較多,須通過總線控制器與總線相連。第二章 微處理器與總線2.2 8088/8086微處理器8088CPU的引線及功能的引線及功能 8086采用雙列直插式封裝,有40個引腳(如右圖所示),但總線信號數(shù)量卻大于40,故8086采用了分時復用技術(shù),部分引腳傳送兩種總線信號。8086的引腳信號注:括號內(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ù)信號分時復 用。傳送地址信號時為單向,傳送數(shù)據(jù)信號時為雙向。A15 A8 :輸出8位地址信號。 A

10、19A16/S3 S6:高4位地址信號,狀態(tài)分時復用。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)信號WR(Write): 寫信號RD(Read): 讀信號IO/M(IO/Memory):“0”表示訪問內(nèi)存 “1”表示訪問接口DEN(Data Enable): 低電平有效時,允許進行讀/寫操作RESET:復位信號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第二章 微處理器與總線例:當當WR=1WR=1,RD=0RD=0,IO/M=0IO/M=0時,時, 表示表示CPUCPU當前正在進行當前正在進行 操作操作 讀存儲器讀存儲器第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:ALE(A

13、ddress Latch Enable):地址鎖存允許信號,在任一個總線周期的T1狀態(tài),ALE輸出有效電平,表示地址/數(shù)據(jù)復用總線上輸出的是地址信息,地址鎖存器將ALE作為鎖存信號,對地址進行鎖存DT/R(Data Transmit/Receive):數(shù)據(jù)傳輸方向控制信號,高電平時CPU發(fā)送信號,低電平時接收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設備發(fā)出,當其為高電平時,表示內(nèi)存或I/O已準備好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第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:中斷請求和響應信號中斷請求和響應信號INTR(Interup

16、t Request): 可屏蔽中斷請求輸入端NMI(Unmasked Interrupt ): 非屏蔽中斷請求輸入端INTA (Interupt Answer) : 中斷響應輸出端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第二章 微處理器與總線最小模式下主要引線:最小模式下主要引線:總線保持信號總線保持信號HOLD: 總線保持請求信號輸入端。當CPU以外的其他設備要求占用總線時,通過該引腳向CPU發(fā)出請求HLDA: 總線保持響應信號輸出端。CPU對HOLD信號的響應信號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部件部件由段寄存器段寄存器、指令指針指令指針、地址加法器地址加法器、指指令隊列緩沖器令隊列緩沖器和控制電路控制電路等部分組成。(2) EU部件部件 由ALU、通用寄存器通用寄存器、標志寄存器標志寄存器和控制電控制電路路組成,負責指令的執(zhí)行。ALU、寄存器和數(shù)據(jù)傳輸通路均是16bit的。第二章 微處理器與總線執(zhí)行部分執(zhí)行部分控制電路控制電路ALU標志寄存器標志寄存器 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、制電路外部總線外部總線地址地址加法加法器器指令隊列指令隊列總線接口部件總線接口部件 (BIU)20位位8位位8位位執(zhí)行部件執(zhí)行部件 (EU)BIU包括:包括:段寄存器段寄存器、指令指針指令指針、地址加法地址加法器器、指令隊列緩沖器指令隊列緩沖器和控制電路控制電路功能:功能:1)地址加法器產(chǎn)生20位物理地址段寄存器存放段首地址,20位的物理地址的計算第二章 微處理器與總線執(zhí)行部分執(zhí)行部分控制電路控制電路ALU標志寄存器標志寄存器 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、入/輸出輸出控制電路控制電路外部總線外部總線地址地址加法加法器器指令隊列指令隊列總線接口部件總線接口部件 (BIU)20位位8位位8位位執(zhí)行部件執(zhí)行部件 (EU)BIU功能:功能:2)從內(nèi)存取指令到指令預取隊列 在執(zhí)行指令時,如要取操作數(shù),則也由BIU從內(nèi)存或I/O接口指定區(qū)域取出,送給EU部件去執(zhí)行。 在執(zhí)行轉(zhuǎn)移程序時,BIU使指令隊列復位,從指定的新地址取指令,并立即傳給執(zhí)行單元執(zhí)行。第二章 微處理器與總線執(zhí)行部分執(zhí)行部分控制電路控制電路ALU標志寄存器標志寄存器 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輸入輸入/輸出輸出控制電路控制電路外部總線外部總線地址地址加法加法器器指令隊列指令隊列總線接口部件總線接口部件 (BIU)20位位8位位8位位執(zhí)行部件執(zhí)行部件 (EU)EU功能:功能:指令的執(zhí)行:從指令隊列中取指令代碼 譯碼 在ALU中完成數(shù)據(jù)的運算 運算結(jié)果 的特征保存在標志寄存器FLAGS中。 當指令要求將數(shù)據(jù)寫寫到存儲存儲器器和I/OI/O電路電路,或需從存儲存儲器器和I/OI/O電路電路中讀讀取數(shù)據(jù)時,EU向BIU發(fā)出請求,BIU自動完成這些操作。第二章 微處理器與總線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)當指令隊列中有2字節(jié)空閑時,總線接口部件就自動將指令從內(nèi)存中預取到指令隊列中。2)每當EU部件要執(zhí)行一條指令時,它就從指令隊列頭部取出指令,后續(xù)指令自動向前推進。EU要花幾個時鐘周期執(zhí)行指令,指令執(zhí)行中若需要訪問內(nèi)存或I/O設備,EU就向BIU申請總線周期,若BIU總線空閑,則立即響應,若BIU正在取一條指令,則待取指令操作完成后再響應EU的總線請求。第二章 微處理器與總線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)當指令隊列已滿

24、,EU又沒有申請總線時,則總線空閑。4)遇到轉(zhuǎn)移、調(diào)用及返回指令時,原先預取到指令隊列中的指令已不再有用,BIU就自動清除指令隊列中已有內(nèi)容,從轉(zhuǎn)移、調(diào)用或返回的新地址開始,重新從內(nèi)存中預讀取指令并填充指令隊列。 第二章 微處理器與總線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é)論: 指令預取隊列的存在使EU和BIU兩個部分可同時進行工作,從而 提高了CPU的效率 降低了對存儲器存取速度的要求第二章 微處理器與總線8088的指令執(zhí)行過程第二章 微處理器與總線2.2 8088/8086微處理

25、器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器含14個16位寄存器,按功能可分為三類 8個通用寄存器個通用寄存器 4個段寄存器個段寄存器 2個控制寄存器個控制寄存器深入理解:深入理解:每個寄存器中數(shù)據(jù)的含義每個寄存器中數(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個16位數(shù)據(jù)寄存器,它們又可分為8個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與接口傳送信息,中間運算結(jié)果也多放于AX中BX:基址寄存器。在間接尋址中用于存放基地址;CX:計數(shù)寄存器。用于在循環(huán)或串操作指令中存放計數(shù)值DX:數(shù)據(jù)寄存器。在間接尋址的I/O指令中存放I/O端口地址;在32位乘

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

28、寄存器的內(nèi)部寄存器通用寄存器通用寄存器變址寄存器(變址寄存器(SP,BP) SI:源變址寄存器DI:目標變址寄存器變址寄存器常用于指令的間接尋址或變址尋址。特別變址寄存器常用于指令的間接尋址或變址尋址。特別是在串操作指令中,用是在串操作指令中,用SI存放源操作數(shù)的偏移地址,而存放源操作數(shù)的偏移地址,而用用DI存放目標操作數(shù)的偏移地址。存放目標操作數(shù)的偏移地址。第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的內(nèi)部寄存器的內(nèi)部寄存器段寄存器段寄存器用于存放相應邏輯段的段基地址用于存放相應邏輯段的段基地址 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:標志寄存器,存放運算結(jié)果的:標志寄存器,存放運算結(jié)果的 特征特征 6個狀態(tài)標志位(個狀態(tài)標志位(CF,SF,AF,PF,OF,ZF) 用于寄存程序運行的狀態(tài)信息。不應人為設置用于寄存

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

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

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

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

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

35、邏輯地址。第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的存儲器組織的存儲器組織20位物理地址的形成 在BIU的地址加法器中形成20位的物理地址. DSESSSCSIP地址總線地址總線AB地地址址加加法法器器四個段寄存器四個段寄存器CS: 代碼段代碼段寄存器DS:數(shù)據(jù)段:數(shù)據(jù)段寄存器SS:堆棧段:堆棧段寄存器ES:附加段:附加段寄存器可以存放偏移地址的寄存器很多第二章 微處理器與總線2.2 8088/8086微處理器8086/8088CPU的存儲器組織的存儲器組織地址加法器的工作原理物理地址物理地址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ù)據(jù)段,則操作數(shù)的物理地址為:設操作數(shù)在數(shù)據(jù)段,則操作數(shù)的物理地址為: 250AH 16+0204H = 250A0H +0204H = 252A4H第二章 微處理器與總線 某內(nèi)存單元的段地址由DS、偏移地址由BX給出。 若( DS) = 2000H, ( BX) = 1000H,計算其物理地址。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根地址線根地址線:第二章 微處理器與總線物理地址信號在地址總線上傳送:地址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標志標志寄存器寄存器執(zhí)行部件控制電路執(zhí)行部件控制電路指令譯碼器指令譯碼器AXBXCXDXAHBHCHDHSIDIBPSPALBLCLDL寄存器組寄存器組指指令令隊隊列列總線總線接口接口控制控制電路電路運運算算器器地地址址加加法法器器、指令指令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兩個寄存器決定。 (代碼段寄存器和指令指針寄存器) 開機開機或或RESET復位后,復位后,( CS ) = FFFFH,( IP ) = 0故故8086/8088執(zhí)行的執(zhí)行的第一條指令第一條指令所在內(nèi)存的地址為:所在內(nèi)存的地址為: PA = ( CS ) 10H + ( IP ) = FFFF H 10H + 0 = FFFF

41、0H第二章 微處理器與總線操作類型操作類型正常使用(隱含)正常使用(隱含)段基址段基址可替換可替換段地址段地址偏移偏移地址地址物理地址計算物理地址計算取指令取指令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)目標字符串目標字符串ES無無DI(ES) 16d+(DI)邏輯地址來源:邏輯地址來源:第二章 微處理器與總線堆棧及堆棧段的使用

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

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

溫馨提示

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

評論

0/150

提交評論