微型計算機(jī)基礎(chǔ)課件_第1頁
微型計算機(jī)基礎(chǔ)課件_第2頁
微型計算機(jī)基礎(chǔ)課件_第3頁
微型計算機(jī)基礎(chǔ)課件_第4頁
微型計算機(jī)基礎(chǔ)課件_第5頁
已閱讀5頁,還剩135頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第二章微型計算機(jī)基礎(chǔ)2.1微型計算機(jī)基本結(jié)構(gòu)微型計算機(jī)又稱為PC機(jī),由硬件系統(tǒng)和軟件系統(tǒng)兩大部分組成。第二章微型計算機(jī)基礎(chǔ)2.1微型計算機(jī)基本結(jié)構(gòu)12.1.1微型計算機(jī)的概念結(jié)構(gòu)如圖所示,是微型計算機(jī)的典型組成結(jié)構(gòu)示意圖,從圖中我們可以看出,微型計算機(jī)由微處理器CPU①、一定容量的內(nèi)部存儲器(包括②ROM、RAM)、③輸入/輸出接口電路組成。各功能部件之間通過④總線有機(jī)地連接在一起,其中微處理器是整個微型計算機(jī)的核心部件。2.1.1微型計算機(jī)的概念結(jié)構(gòu)21.硬件系統(tǒng)1)微處理器(centralprocessingunite)簡稱為CPU,又名中央處理器和中央處理單元用途:解釋指令并進(jìn)行運(yùn)算指標(biāo):能否超頻、工作溫度組成:運(yùn)算器、控制器、(CPU內(nèi)部)寄存器組運(yùn)算器:用于完成數(shù)據(jù)的算術(shù)和邏輯運(yùn)算控制器:通常由指令寄存器、指令譯碼器和控制電路組成(CPU內(nèi)部)寄存器組:暫存參加運(yùn)算的操作數(shù)和運(yùn)算結(jié)果分為專用寄存器和通用寄存器工作原理:猶如一個工廠系統(tǒng)中的生產(chǎn)車間對產(chǎn)品的加工過程1.硬件系統(tǒng)32)存儲器(又叫內(nèi)存或主存)組成:通常由CPU之外的半導(dǎo)體存儲器芯片組成用途:存放程序、原始操作數(shù)、運(yùn)算的中間結(jié)果數(shù)據(jù)、最終結(jié)果數(shù)據(jù)(1)內(nèi)存單元的地址和內(nèi)容地址——每個存儲單元編上不同的且唯一的號碼,一般用十六進(jìn)制數(shù)表示內(nèi)容——每個存儲器地址中又存放著的那一組二進(jìn)制(或十六進(jìn)制)表示的數(shù)兩者關(guān)系:前者為某一個房間號碼,后者為此房間里住的人2)存儲器(又叫內(nèi)存或主存)4(2)數(shù)據(jù)在內(nèi)存儲器中的存儲方式(板書分析)第一,內(nèi)存儲器是有唯一地址的字節(jié)的有序陣列第二,對于一個字的數(shù)據(jù)存儲,占用兩個相鄰存儲單元,高字節(jié)放高地址,低字節(jié)放低地址,以低地址命名為此字?jǐn)?shù)據(jù)的地址。

(3)內(nèi)存的操作

CPU對內(nèi)存的操作有讀/寫兩種。讀操作:CPU將內(nèi)存單元的內(nèi)容取到CPU內(nèi)部,不改變被讀單元的內(nèi)容寫操作:CPU將內(nèi)部信息傳送到內(nèi)存單元保存起來,改變被寫單元的內(nèi)容。(2)數(shù)據(jù)在內(nèi)存儲器中的存儲方式(板書分析)5例如:讀出地址為04H內(nèi)存單元中的內(nèi)容讀出信息操作過程如下圖所示例如:CPU將數(shù)據(jù)26H寫入地址為08H的存儲單元向存儲器寫入信息的操作過程如上圖所示例如:讀出地址為04H內(nèi)存單元中的內(nèi)容6(4)內(nèi)存的分類

按工作方式不同,可將存儲器分為隨機(jī)存取存儲器(又稱讀寫存儲器)、只讀存儲器兩種形式。(4)內(nèi)存的分類73)輸入/輸出設(shè)備及其接口電路輸入/輸出(input/output縮寫I/O)設(shè)備稱為外部設(shè)備輸入任務(wù):將程序、原始數(shù)據(jù)及現(xiàn)場信息計算機(jī)自動計算和處理輸出任務(wù):計算機(jī)中的計算和處理結(jié)果/回答信號以人能識別的各種形式表示出來接口電路的主要職責(zé):將微處理器和輸入/輸出設(shè)備之間的信息

統(tǒng)一和聯(lián)系起來接口電路的種類:常用的有8255可編程并行接口電路、8253可編程定時/計數(shù)電路等3)輸入/輸出設(shè)備及其接口電路84)總線微型計算機(jī)大多采用總線結(jié)構(gòu),因為在微型計算機(jī)系統(tǒng)中,無論是各部件之間的信息傳送,還是處理器內(nèi)部信息的傳送,都是通過總線進(jìn)行的,系統(tǒng)中各功能部件之間的相互關(guān)系變?yōu)楦鱾€部件面向總線的單一關(guān)系。問題:什么是總線所謂總線,是連接多個功能部件或多個裝置的一組公共信號線,用作微機(jī)各部分傳遞信息所共同使用的“高速信息公路”。

按在系統(tǒng)中的不同位置,總線可以分為內(nèi)部總線和外部總線。內(nèi)部總線是CPU內(nèi)部各功能部件和寄存器之間的連線;外部總線是連接系統(tǒng)的總線,即連接CPU、存儲器和I/O接口的總線,又稱為系統(tǒng)總線。4)總線9解釋:三總線結(jié)構(gòu)按所傳送信息的不同類型,總線可以分為數(shù)據(jù)總線DB(DataBus)、地址總線AB(AddressBus)和控制總線CB(ControlBus)三種類型,通常稱微型計算機(jī)采用三總線結(jié)構(gòu)。①地址總線(AddressBus)

地址總線是微型計算機(jī)用來傳送地址信息的信號線。地址總線的位數(shù)決定了CPU可以直接尋址的內(nèi)存空間的大小。因為地址總是從CPU發(fā)出的,所以地址總線是單向的、三態(tài)總線。單向指信息只能沿一個方向傳送,三態(tài)指除了輸出高、低電平狀態(tài)外,還可以處于高阻抗?fàn)顟B(tài)(浮空狀態(tài))。

解釋:三總線結(jié)構(gòu)10②數(shù)據(jù)總線(DataBus)

數(shù)據(jù)總線是CPU用來傳送數(shù)據(jù)信息的信號線(雙向、三態(tài))。數(shù)據(jù)總線是雙向三態(tài)總線,即數(shù)據(jù)既可以從CPU送到其它部件,也可以從其它部件傳送給CPU,數(shù)據(jù)總線的位數(shù)和處理器的位數(shù)相對應(yīng)。③控制總線(ControlBus)控制總線是用來傳送控制信號的一組總線。這組信號線比較復(fù)雜,由它來實(shí)現(xiàn)CPU對外部功能部件(包括存儲器和I/O接口)的控制及接收外部傳送給CPU的狀態(tài)信號,不同的微處理器采用不同的控制信號??刂瓶偩€的信號線,有的為單向,有的為雙向或三態(tài),有的為非三態(tài),取決于具體的信號線,但作為整體是雙向的,以雙向線表示。②數(shù)據(jù)總線(DataBus)112.微處理器、微型計算機(jī)與微型計算機(jī)系統(tǒng)三者之間的關(guān)系微處理器、微型計算機(jī)與微型計算機(jī)系統(tǒng)三者之間的關(guān)系如下:2.微處理器、微型計算機(jī)與微型計算機(jī)系統(tǒng)三者之間的關(guān)系123.軟件系統(tǒng)軟件系統(tǒng)包括系統(tǒng)軟件和應(yīng)用軟件兩大類。系統(tǒng)軟件包括操作系統(tǒng)和系統(tǒng)實(shí)用程序。應(yīng)用軟件是用戶為解決各種實(shí)際問題而編制的程序。3.軟件系統(tǒng)132.1.2微型計算機(jī)的工作過程

我們已經(jīng)介紹了微型計算機(jī)的組成及系統(tǒng)結(jié)構(gòu),并且分析討論了作為微型計算機(jī)核心部件的CPU的內(nèi)部結(jié)構(gòu),在這一基礎(chǔ)上,討論微型計算機(jī)系統(tǒng)的工作過程。1.存儲程序計算機(jī)

(1)程序與指令指令就是能被計算機(jī)識別的并能執(zhí)行的基本操作命令,以二進(jìn)制代碼的形式出現(xiàn)的。程序就是實(shí)現(xiàn)既定任務(wù)的指令序列。(2)程序存儲把執(zhí)行一項信息處理任務(wù)的程序代碼,以字節(jié)為單位,按順序存放在存儲器的一段連續(xù)的存儲區(qū)域內(nèi),這就是程序存儲的概念。2.1.2微型計算機(jī)的工作過程142.計算機(jī)工作過程的實(shí)質(zhì)計算機(jī)之所以能在沒有人直接干預(yù)的情況下,自動地完成各種信息處理任務(wù),是因為人們事先為它編制了各種工作程序,計算機(jī)的工作過程,就是執(zhí)行程序的過程,包括取指令與執(zhí)行指令兩個基本階段。簡單地講,微型計算機(jī)系統(tǒng)的工作過程是取指令(代碼)→分析指令(譯碼)→執(zhí)行指令的不斷循環(huán)的過程。2.計算機(jī)工作過程的實(shí)質(zhì)152.28086/8088微處理器

2.2.18086/8088微處理器概述1.引言8086/8088微處理器是Intel公司推出的第三代CPU芯片,它們的內(nèi)部結(jié)構(gòu)基本相同,都采用16位結(jié)構(gòu)進(jìn)行操作及存儲器尋址,但外部性能有所差異,兩種處理器都封裝在相同的40腳雙列直插組件(DIP)中。2.8086微處理器的一般性能特點(diǎn):

16位的內(nèi)部結(jié)構(gòu),16位雙向數(shù)據(jù)信號線;

20位地址信號線,可尋址1M字節(jié)存儲單元;較強(qiáng)的指令系統(tǒng);利用16位的地址總線來進(jìn)行I/O端口尋址,可尋址64K個I/O端口;2.28086/8088微處理器

2.2.18086/816中斷功能強(qiáng),可處理內(nèi)部軟件中斷和外部中斷,中斷源可達(dá)256個;

單一的+5V電源,單相時鐘5MHz。另外,Intel公司同期推出的Intel8088微處理器是一種準(zhǔn)16位微處理器,其內(nèi)部寄存器,內(nèi)部操作等均按16位處理器設(shè)計,與Intel8086微處理器基本上相同,不同的是其對外的數(shù)據(jù)線只有8位,目的是為了方便地與8位I/O接口芯片相兼容。中斷功能強(qiáng),可處理內(nèi)部軟件中斷和外部中斷,中斷172.2.28086/8088的功能結(jié)構(gòu)及指令流水線1.8086/8088的功能結(jié)構(gòu)(又稱為編程結(jié)構(gòu))如右圖所示是8086/8088CPU的內(nèi)部功能結(jié)構(gòu)。從功能上來看,8086/8088CPU可分為兩部分,即總線接口部件BIU(BusInterfaceUnit)和執(zhí)行部件EU(ExecutionUnit)2.2.28086/8088的功能結(jié)構(gòu)及指令流水線18(1)執(zhí)行部件(EU)功能:負(fù)責(zé)指令的執(zhí)行。組成:包括①ALU(算術(shù)邏輯單元)、②通用寄存器組③標(biāo)志寄存器等,主要進(jìn)行8位及16位的各種運(yùn)算(2)總線接口部件(BIU)功能:負(fù)責(zé)與存儲器及I/O接口之間的數(shù)據(jù)傳送操作。具體來看,完成取指令送指令隊列,配合執(zhí)行部件的動作,從內(nèi)存單元或I/O端口取操作數(shù),或者將操作結(jié)果送內(nèi)存單元或者I/O端口。組成:它由①段寄存器(DS、CS、ES、SS)、②16位指令指針寄存器IP(指向下一條要取出的指令代碼)、③20位地址加法器(用來產(chǎn)生20位地址)和④6字節(jié)(8088為4字節(jié))指令隊列緩沖器組成。(1)執(zhí)行部件(EU)19(3)8086/8088BIU的特點(diǎn)①指令流隊列是一個內(nèi)部的存儲器陣列,類似一個先進(jìn)先出的倉庫。8086/8088的指令流隊列最多能保存分別為6/4個字節(jié),且只要隊列出現(xiàn)2/1個空字節(jié),同時EU也未要求BUI進(jìn)入存取操作數(shù)的總線周期,BIU便自動從內(nèi)存單元順序取指令字節(jié),并填滿指令流隊列。若數(shù)據(jù)存取請求與預(yù)取指令請求同時發(fā)生,BIU將優(yōu)先處理數(shù)據(jù)存取操作,可以提高CPU的工作效率。②地址加法器用來產(chǎn)生20位物理地址。8086/8088可用20位地址尋址1M字節(jié)的內(nèi)存空間,而CPU內(nèi)部的寄存器都是16位,因此需要由一個附加的機(jī)構(gòu)來計算出20位的物理地址,這個機(jī)構(gòu)就是20位的地址加法器。例如:CS=0FE00H,IP=0400H,則表示要取指令代碼的物理地址為0FE400H。(3)8086/8088BIU的特點(diǎn)20(4)BIU與EU的動作協(xié)調(diào)原則:總線接口部件(BIU)和執(zhí)行部件(EU)按以下流水線技術(shù)原則協(xié)調(diào)工作,共同完成所要求的信息處理任務(wù):①每當(dāng)8086的指令隊列中有兩個空字節(jié),或8088的指令隊列中有一個空字節(jié)時,BIU就會自動把指令取到指令隊列中。其取指的順序是按指令在程序中出現(xiàn)的前后順序。②每當(dāng)EU準(zhǔn)備執(zhí)行一條指令時,它會從BIU部件的指令隊列前部取出指令的代碼,然后用幾個時鐘周期去執(zhí)行指令。在執(zhí)行指令的過程中,如果必須訪問存儲器或者I/O端口,那么EU就會請求BIU,進(jìn)入總線周期,完成訪問內(nèi)存或者I/O端口的操作;如果此時BIU正好處于空閑狀態(tài),會立即響應(yīng)EU的總線請求。如BIU正將某個指令字節(jié)取到指令隊列中,則BIU將首先完成這個取指令的總線周期,然后再去響應(yīng)EU發(fā)出的訪問總線的請求。(4)BIU與EU的動作協(xié)調(diào)原則:21③當(dāng)指令隊列已滿,且EU又沒有總線訪問請求時,BIU便進(jìn)入空閑狀態(tài)。④在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時,由于待執(zhí)行指令的順序發(fā)生了變化,則指令隊列中已經(jīng)裝入的字節(jié)被自動消除,BIU會接著往指令隊列裝入轉(zhuǎn)向的另一程序段中的指令代碼。從上述BIU與EU的動作管理原則中,不難看出,它們兩者的工作是不同步的,正是這種既相互獨(dú)立又相互配合的關(guān)系,使得8086/8088可以在執(zhí)行指令的同時,進(jìn)行取指令代碼的操作,也就是說BIU與EU是一種并行工作方式,改變了以往計算機(jī)取指令→譯碼→執(zhí)行指令的串行工作方式,大大提高了工作效率,這正是8086/8088獲得成功的原因之一。

③當(dāng)指令隊列已滿,且EU又沒有總線訪問請求時,B228086/8088CPU80286CPU80386CPU主要性能

8086CPU為典型的16位CPU,具有16位內(nèi)部DB和16位外部DB,8088也具有16位內(nèi)部DB但外DB只有8位,故稱為準(zhǔn)16位機(jī),其他方面幾乎完全相同。40條引腳,20位地址總線(AB)可尋址1MB的內(nèi)存地址空間和64KB的I/O地址空間,工作方式為實(shí)地址方式

比8086/8088更先進(jìn)的16位CPU,有68個引腳,分開設(shè)置16條數(shù)據(jù)線和24條地址線,具有存儲器管理和保護(hù)機(jī)構(gòu),采用分段的方法管理存儲器,有兩種工作方式:實(shí)地址和虛地址。

32位CPU,132條引腳,DB和AB各32條,有3種工作方式:實(shí)地址、虛地址和虛擬8086方式

2、8086/8088、80286、80386CPU對比表8086/8088CPU80286CPU80386C238086/80888028680386功能結(jié)構(gòu)

兩部分:執(zhí)行部件EU和總線接口部件BIUEU包括:ALU(算術(shù)邏輯單元)、16位標(biāo)志寄存器、寄存器陣列、指令譯碼器及控制電路BIU包括:4個16位段寄存器、一個16位指令指針、一個地址加法器、一個指令流隊列和總線控制電路

四個部分:EU、AU、IU、BIUAU:地址部件,包括物理地址發(fā)生器、段寄存器、段描述符高速緩沖存儲器等IU:指令部件,包括指令譯碼器和已譯碼指令隊列EU:包括ALU及標(biāo)志寄存器、通用寄存器陣列(用來暫存操作數(shù)和運(yùn)算結(jié)果)和控制電路等BIU:包括總線接口電路、預(yù)取器和6字節(jié)的預(yù)取隊列每個部件都可與其他部件異步并行操作

六個部分:總線接口部件指令預(yù)取部件指令譯碼部件執(zhí)行部件分段部件分頁部件8086/8088802868038243.80386CPU基本寄存器包括4個32位通用寄存器、2個32位變址寄存器、3個32位指針寄存器、6個16位段寄存器和1個32位標(biāo)志寄存器,它們組成了一個基本寄存器集。①通用寄存器(EAX、EBX、ECX、EDX)②變址寄存器(ESI、EDI)③指針寄存器(EBP、ESP、EIP)④段寄存器(CS、DS、SS、ES、FS、GS)使用約定表3.80386CPU基本寄存器25約定表如下:約定表如下:26⑤標(biāo)志寄存器(EFLAGS)其為32位寄存器,有6位狀態(tài)標(biāo)志、3位控制標(biāo)志、2位保護(hù)方式標(biāo)志及兩個新增的標(biāo)志。⑤標(biāo)志寄存器27a.狀態(tài)標(biāo)志:6個狀態(tài)標(biāo)志表示前一步操作(如加、減等)執(zhí)行以后,ALU所處的狀態(tài),后續(xù)操作可以根據(jù)這些狀態(tài)標(biāo)志進(jìn)行判斷,實(shí)現(xiàn)轉(zhuǎn)移。

(0)CF—進(jìn)位標(biāo)志位,做加法時最高位出現(xiàn)進(jìn)位或做減法時最高位出現(xiàn)借位,該位置1,反之為0。

(2)PF—奇偶標(biāo)志位,當(dāng)運(yùn)算結(jié)果的低8位中l(wèi)的個數(shù)為偶數(shù)時,則該位置1,反之為0。

(4)AF—半進(jìn)位標(biāo)志位,做字節(jié)加法時,當(dāng)?shù)退奈挥邢蚋咚奈坏倪M(jìn)位,或在做減法時,低四位有向高四位的借位時,該標(biāo)志位就置1。

(6)ZF—零標(biāo)志位,運(yùn)算結(jié)果為0時,該標(biāo)志位置1,否則清0。a.狀態(tài)標(biāo)志:6個28(7)SF—符號標(biāo)志位,當(dāng)運(yùn)算結(jié)果的最高位為1,該標(biāo)志位置1,否則清0。即與運(yùn)算結(jié)果的最高位相同。

(11)OF—溢出標(biāo)志位,OF溢出的判斷方法如下:加法運(yùn)算:若兩個加數(shù)的最高位為0,而和的最高位為1,則產(chǎn)生上溢出;若兩個加數(shù)的最高位為1,而和的最高位為0,則產(chǎn)生下溢出;兩個加數(shù)的最高位不相同時,不可能產(chǎn)生溢出。減法運(yùn)算:若被減數(shù)的最高位為0,減數(shù)的最高位為1,而差的最高位為1,則產(chǎn)生上溢出;若被減數(shù)的最高位為1,減數(shù)的最高位為0,而差的最高位為0,則產(chǎn)生下溢出;被減數(shù)及減數(shù)的最高位相同時,不可能產(chǎn)生溢出。

(7)SF—符號標(biāo)志位,當(dāng)運(yùn)算結(jié)果的最高位為1,該標(biāo)志位置29如果所進(jìn)行的運(yùn)算是帶符號數(shù)的運(yùn)算,則溢出標(biāo)志恰好能夠反映運(yùn)算結(jié)果是否超出了8位或16位帶符號數(shù)所能表達(dá)的范圍,即字節(jié)運(yùn)算大于十127或小于-128時,字運(yùn)算大于十32767或小于-32768時,該位置1,反之為0。

舉例:CF=0、AF=1、PF=1、ZF=0、SF=1、OF=1(兩正數(shù)相加結(jié)果為負(fù))一般來講,不是每次運(yùn)算后所有的標(biāo)志都改變,只是在某些操作之后,才對其中某個標(biāo)志進(jìn)行檢查。

0101010000111001+

01000101011010101001100110100011如果所進(jìn)行的運(yùn)算是帶符號數(shù)的運(yùn)算,則溢出標(biāo)志恰30b.控制標(biāo)志控制標(biāo)志可以通過指令人為設(shè)置,用以對某一種特定的功能起控制作用(如中斷屏蔽等),反映了人們對微機(jī)系統(tǒng)工作方式的可控制性。與8086/8088、80286兼容的控制標(biāo)志位3個

(8)TF—陷阱標(biāo)志位(單步標(biāo)志位、跟蹤標(biāo)志),當(dāng)該位置1時,將進(jìn)入單步工作方式,通常用于程序的調(diào)試。

(9)IF—中斷允許標(biāo)志位,若該位置1,則處理器可以響應(yīng)可屏蔽中斷,否則就不能響應(yīng)可屏蔽中斷。

(10)DF—方向標(biāo)志位,若該位置1,則串操作指令的地址修改為自動減量方向,反之,為自動增量方向。b.控制標(biāo)志31保護(hù)方式標(biāo)志只在保護(hù)方式下有效,8086仿真方式(實(shí)方式)下無效,可用程序來設(shè)置以便控制處理器的運(yùn)行,也屬控制標(biāo)志(13、12)IOPL—輸入/輸出特權(quán)級標(biāo)志,占用兩位二進(jìn)制位,四個狀態(tài)來確定需要執(zhí)行的I/O操作的特權(quán)級。當(dāng)為00時,表示特權(quán)級最高,當(dāng)為11時,表示特權(quán)級最低。若當(dāng)前特權(quán)級在數(shù)值上小于或等于IOPL(高于等于),I/O指令可以執(zhí)行,否則,便產(chǎn)生一個保護(hù)異常。(14)NT—嵌套任務(wù)標(biāo)志,若為0,表明發(fā)生中斷或執(zhí)行調(diào)用指令時無任務(wù)切換。若為1,表明發(fā)生中斷或執(zhí)行調(diào)用指令時有任務(wù)切換。保護(hù)方式標(biāo)志32c.80386新增的控制標(biāo)志:2個(16)RF—重新啟動標(biāo)志,又稱調(diào)整恢復(fù)標(biāo)志,若為0,調(diào)試故障被接受并應(yīng)答。若為1,調(diào)試故障被忽略。(17)VM—虛擬8086方式標(biāo)志,

若為0,處理器在一般方式下運(yùn)行若為1,處理器在虛擬8086方式下運(yùn)行c.80386新增的控制標(biāo)志:2個332.2.38086/8088的存儲器組織1.存儲容量8088/8086有20根地址總線,因此,它可以直接尋址的存儲器單元數(shù)為220=1Mbyte2.物理地址8088/8086可直接尋址1Mbyte的存儲空間,其地址區(qū)域為00000H—FFFFFH,與存儲單元一一對應(yīng)的20位地址,我們稱之為存儲單元的物理地址。3.存儲器的分段及段地址由于CPU內(nèi)部的寄存器都是16位的,為了能夠提供20位的物理地址,系統(tǒng)中采用了存儲器分段的方法。規(guī)定存儲器的一個段為64KB,由段寄存器來確定存儲單元的段地址,由指令提供該單元相對于相應(yīng)段起始地址的16位偏移量。這樣,系統(tǒng)的整個存儲空間可分為16個互不重疊的邏輯段。2.2.38086/8088的存儲器組織34如下圖所示,系統(tǒng)的整個存儲空間可分為16個互不重疊的邏輯段,存儲器的每個段的容量為64KB,并允許在整個存儲空間內(nèi)浮動,非常靈活。存儲空間段結(jié)構(gòu)分段邏輯結(jié)構(gòu)如下圖所示,系統(tǒng)的整個存儲空間可分為16個互不重疊354.偏移地址偏移地址是某存儲單元相對其所在段起始位置的偏移字節(jié)數(shù),或簡稱偏移量。它是一個16位的地址,根據(jù)指令的不同,它可以來自于CPU中不同的16位寄存器(IP、SP、BP、SI、DI、BX等)。5.邏輯地址與物理地址的形成段基址和段內(nèi)偏移稱為邏輯地址,寫成段基址:偏移地址的形式。物理地址是由段地址與偏移地址共同決定的,段地址來自于段寄存器(CS、DS、ES、SS),是十六位地址,由段地址及偏移地址計算物理地址的表達(dá)式如下:物理地址=段基址×16+偏移地址4.偏移地址36例如:系統(tǒng)啟動后,指令的物理地址由CS的內(nèi)容與IP的內(nèi)容共同決定,由于系統(tǒng)啟動的CS=0FFFFH,IP=0000H,所以初始指令的物理地址為0FFFF0H,我們可以在0FFFF0H單元開始的幾個單元中,固化一條無條件轉(zhuǎn)移指令的代碼,即轉(zhuǎn)移到系統(tǒng)初始化程序部分。例如:系統(tǒng)啟動后,指令的物理地址由CS的內(nèi)容與IP的376.特殊的內(nèi)存區(qū)域8088/8086系統(tǒng)中,有些內(nèi)存區(qū)域的作用是固定的,用戶不能隨便使用,如:①中斷矢量區(qū):00000H—003FFH共1K字節(jié),用以存放256種中斷類型的中斷矢量,每個中斷矢量占用4個字節(jié),共256×4=1024=1K②

顯示緩沖區(qū):B0000H—B0F9FH約4000(25×80×2)字節(jié),是單色顯示器的顯示緩沖區(qū),存放文本方式下,所顯示字符的ASCII碼及屬性碼;B8000H—BBF3FH約16K字節(jié),是彩色顯示器的顯示緩沖區(qū),放圖形方式下,屏幕顯示象素的代碼。③啟動區(qū):0FFFF0H—0FFFFFH共16個單元,用以存放一條無條件轉(zhuǎn)移指令的代碼,轉(zhuǎn)移到系統(tǒng)的初始化部分。

6.特殊的內(nèi)存區(qū)域382.2.48086/8088微處理器的外部引腳及其功能

1.8086/8088CPU的兩種工作模式為了適應(yīng)各種使用場合,在設(shè)計8088/8086CPU芯片時,就考慮了其應(yīng)能夠使它工作在兩種模式下,即最小模式與最大模式。所謂最小模式,就是系統(tǒng)中只有一個8088/8086微處理器,在這種情況下,所有的總線控制信號,都是直接由8088/8086CPU產(chǎn)生的,系統(tǒng)中的總線控制邏輯電路被減到最少,該模式適用于規(guī)模較小的微機(jī)應(yīng)用系統(tǒng)。最大模式是相對于最小模式而言的,最大模式用在中、大規(guī)模的微機(jī)應(yīng)用系統(tǒng)中,在最大模式下,系統(tǒng)中至少包含兩個微處理器,其中一個為主處理器,即8086/8086CPU,其它的微處理器稱之為協(xié)處理器,它們是協(xié)助主處理器工作的。2.2.48086/8088微處理器的外部引腳及其功能139與8088/8086CPU配合工作的協(xié)處理器有兩類,一類是數(shù)值協(xié)處理器8087另一類是輸入/輸出協(xié)處理器8089。

8087是一種專用于數(shù)值運(yùn)算的協(xié)處理器,它能實(shí)現(xiàn)多種類型的數(shù)值運(yùn)算以大大提高主處理器的運(yùn)行速度。8089協(xié)處理器它有一套專門用于輸入/輸出操作的指令系統(tǒng),它可以直接為輸入/輸出設(shè)備服務(wù),使主處理器不再承擔(dān)這類工作。在系統(tǒng)中增加8089協(xié)處理器之后,會明顯提高主處理器的效率,尤其是在輸入/輸出操作比較頻繁的系統(tǒng)中。與8088/8086CPU配合工作的協(xié)處理器有兩402.8086/8088CPU的引腳信號和功能(1).引言如圖1-12所示,是8088CPU的外部結(jié)構(gòu),即引腳信號圖,注意:在不同的工作模式下,其中一部分引腳的名稱和功能可能不一致。2.8086/8088CPU的引腳信號和功能418088/8086CPU芯片都是雙列直插式集成電路芯片,都有40個引腳,其中32個引腳在兩種工作模式下的名稱和功能是相同的,還有8個引腳在不同的工作模式下,具有不同的名稱和功能。下面,我們來介紹8088CPU引腳的輸入/輸出信號及其功能(2).兩種模式下,名稱和功能相同的32個引腳VCC、GND:電源、接地引腳(3個),8088/8086CPU采用單一的+5V電源,但有兩個接地引腳。AD0—AD7(AddressDataBus):地址/數(shù)據(jù)復(fù)用信號輸入/輸出引腳(8個),分時輸出8位地址信號及進(jìn)行數(shù)據(jù)信號的輸入/輸出。

A8—A15,,地址輸出,三態(tài)。8088/8086CPU芯片都是雙列直插式集成電路芯42

A19/s6—A15/s3(AddressStatusBus):地址/狀態(tài)復(fù)用信號輸出引腳(4個),分時輸出地址的高4位及狀態(tài)信息,其中s6為0用以指示8086/8088CPU當(dāng)前與總線連通;s5為1表明8086/8088CPU可以響應(yīng)可屏蔽中斷;s4、s3共有四個組態(tài),用以指明當(dāng)前使用的段寄存器,00—ES,01—SS,10—CS或不使用,11—DS。NMI(Non-MaskableInterrupt)、INTR(InterruptRequest):中斷請求信號輸入引腳(2),引入中斷源向CPU提出的中斷請求信號,高電平有效,前者為非屏蔽中斷請求,后者為可屏蔽中斷請求信號。

(Read):讀控制輸出信號引腳(1),低電平有效,用以指明要執(zhí)行一個對內(nèi)存單元或I/O端口的讀操作,具體是讀內(nèi)存單元,還是讀I/O端口,取決于M/IO控制信號。A19/s6—A15/s3(Address43CLK(Clock):時鐘信號輸入引腳(1),時鐘信號的方波信號,8088的時鐘頻率(又稱為主頻)為4.77MHz,即從該引腳輸入的時鐘信號的頻率為4.77MHz。Reset(Reset):復(fù)位信號輸入引腳(1),高電平有效。8088/8086CPU要求復(fù)位信號至少維持4個時鐘周期才能起到復(fù)位的效果,復(fù)位信號輸入之后,CPU結(jié)束當(dāng)前操作,并對處理器的標(biāo)志寄存器、IP、DS、SS、ES寄存器及指令隊列進(jìn)行清零操作,而將CS設(shè)置為0FFFFH。READY(Ready):“準(zhǔn)備好”狀態(tài)信號輸入引腳(1),高電平有效,“Ready”輸入引腳接收來自于內(nèi)存單元或I/O端口向CPU發(fā)來的“準(zhǔn)備好”狀態(tài)信號,表明內(nèi)存單元或I/O端口已經(jīng)準(zhǔn)備好進(jìn)行讀寫操作。該信號是協(xié)調(diào)CPU與內(nèi)存單元或I/O端口之間進(jìn)行信息傳送的聯(lián)絡(luò)信號。CLK(Clock):時鐘信號輸入引腳(1),時鐘信44(Minimum/MaximumModelControl)最小/最大模式設(shè)置信號輸入引腳(1),該輸入引腳電平的高、低決定了CPU工作在最小模式還是最大模式,當(dāng)該引腳接+5V時,CPU工作于最小模式下,當(dāng)該引腳接地時,CPU工作于最大模式下。(3).最小模式下的24--31引腳當(dāng)8088/8086CPU的引腳固定接+5V時,CPU處于最小模式下,這時候剩余的引腳的名稱及功能如下:/SS0:系統(tǒng)狀態(tài)信號輸出引腳(1個),與和信號決定最小模式下當(dāng)前總線周期的狀態(tài),三者的組合所表示的處理器操作見下表。(Min45

性能100中斷響應(yīng)101讀I/O端口110寫I/O端口111暫停(Halt)000取指令操作碼001讀存儲器010寫存儲器011無作用

46(InterruptAcknowledge)中斷響應(yīng)信號輸出引腳(1),低電平有效,該引腳是CPU響應(yīng)中斷請求后,向中斷源發(fā)出的認(rèn)可信號,用以通知中斷源,以便提供中斷類型碼,該信號為兩個連續(xù)的負(fù)脈沖。ALE(AddressLockEnable):地址鎖存允許輸出信號引腳(1),高電平有效,CPU通過該引腳向地址鎖存器8282/8283發(fā)出地址鎖存允許信號,把當(dāng)前地址/數(shù)據(jù)復(fù)用總線上輸出的是地址信息,鎖存到地址鎖存器8282/8283中去。注意:ALE信號不能被浮空。微型計算機(jī)基礎(chǔ)課件47(DataEnable):數(shù)據(jù)允許輸出信號引腳,低電平有效,為總線收發(fā)器8286提供一個控制信號,表示CPU當(dāng)前準(zhǔn)備發(fā)送或接收一項數(shù)據(jù)。(DataTransmit/Receive):數(shù)據(jù)收發(fā)控制信號輸出引腳(1),CPU通過該引腳發(fā)出控制數(shù)據(jù)傳送方向,在使用8286/8287作為數(shù)據(jù)總線收發(fā)器時,信號用以控制數(shù)據(jù)傳送的方向,當(dāng)該信號為高電平時,表示數(shù)據(jù)由CPU經(jīng)總線收發(fā)器8286/8287輸出,否則,數(shù)據(jù)傳送方向相反

(DataEnable):數(shù)據(jù)允許輸出信48(Memory/Input&Output):存儲器/I/O端口選擇信號輸出引腳(1),這是CPU區(qū)分進(jìn)行存儲器訪問還是I/O訪問的輸出控制信號。當(dāng)該引腳輸出高電平時,表明CPU要進(jìn)行I/O端口的讀寫操作,低位地址總線上出現(xiàn)的是I/O端口的地址;當(dāng)該引腳輸出低電平時,表明CPU要進(jìn)行存儲器的讀寫操作,地址總線上出現(xiàn)的是訪問存儲器的地址。

(Write):寫控制信號輸出引腳(1),低電平有效,與配合實(shí)現(xiàn)對存儲單元、I/O端口所進(jìn)行的寫操作控制。

(Test):測試信號輸入引腳(1),低電平有效,TEST信號與WAIT指令結(jié)合起來使用,CPU執(zhí)行WAIT指令后,處于等待狀態(tài),當(dāng)TEST引腳輸入低電平時,系統(tǒng)脫離等待狀態(tài),繼續(xù)執(zhí)行被暫停執(zhí)行的指令。(Memory/Input&Outpu49

HOLD(HoldRequest):總線保持請求信號輸入引腳(1),高電平有效。這是系統(tǒng)中的其它總線部件向CPU發(fā)來的總線請求信號輸入引腳。HLDA(HoldAcknowledge):總線保持響應(yīng)信號輸出引腳,高電平有效,表示CPU認(rèn)可其他總線部件提出的總線占用請求,準(zhǔn)備讓出總線控制權(quán)。

(4)最大模式下的引腳當(dāng)8088/8086CPU的引腳固定接地時,CPU處于最大模式下,這時候剩余的24—31共8個引腳的名稱及功能如下:①

QS1、QS0(InstructionQueueStatus):指令隊列狀態(tài)信號輸出引腳(2),HOLD(HoldRequest):總線50這兩個信號的組合給出了前一個T狀態(tài)中指令隊列的狀態(tài),以便于外部8088/8086CPU內(nèi)部指令隊列的動作跟蹤,如下表示:00無操作01從指令隊列的第一個字節(jié)取走代碼10隊列為空11除第一個字節(jié)外,還取走了后續(xù)字節(jié)中的代碼性能這兩個信號的組合給出了前一個T狀態(tài)中指令隊列的狀態(tài),051②/S2、/S1、/S0:總線周期狀態(tài)信號輸出引腳(3),低電平的信號輸出端,這些信號組合起來,可以指出當(dāng)前總線周期中,所進(jìn)行數(shù)據(jù)傳輸過程的類型,總線控制器8288利用這些信號來產(chǎn)生對存儲單元、I/O端口的控制信號。/S2、/S1、/S0代碼組合及對應(yīng)的操作,如下表所示。表/S2—/S0的狀態(tài)編碼性能000中斷響應(yīng)001讀I/O端口010寫I/O端口011暫停11100取指101讀存儲器110寫存儲器111無作用②/S2、/S1、/S0:總線周期狀態(tài)信號輸出引腳(3)52(Lock):總線封鎖輸出信號引腳(1),低電平有效,當(dāng)該引腳輸出低電平時,系統(tǒng)中其它總線部件就不能占用系統(tǒng)總線。信號是由指令前綴LOCK產(chǎn)生的,在LOCK前綴后面的一條指令執(zhí)行完畢之后,便撤消信號。、(Request/Grant):總線請求信號輸入/總線允許信號輸出引腳(2)。這兩個引腳都是雙向的,請求與應(yīng)答信號在同一引腳上分時傳輸,方向相反;這兩個信號端可供CPU以外的兩個處理器,用來發(fā)出使用總線的請求信號和接收CPU對總線請求信號的應(yīng)答。其中比的優(yōu)先級高。HIGH:在最大模式下始終為高電平輸出。

(Lock):總線封鎖輸出信號引腳(1),53(4)相關(guān)問題的說明1、除了個別引腳外,8088/8086的控制信號引腳的定義是一致的,有差別的是,8088的第28腳為,8086為,主要是為了使前者能與8位微處理器8080/8085相兼容的緣故。8088的第34引腳為,8086為/S7,這是因為8086有16根數(shù)據(jù)線,可以用高、低8位總線分別進(jìn)行一個字節(jié)的傳送,也可以同時進(jìn)行兩個字節(jié)的傳送,正是為了指明這幾類操作而設(shè)置的,而8088的數(shù)據(jù)線只有8根,就不存在這一要求,因此就不需要引腳了。2、8088/8086的數(shù)據(jù)線與地址線、狀態(tài)線是分時復(fù)用的,即在某一時刻,總線上出現(xiàn)的是輸出地址信息,在另一時刻,總線上是所需讀、寫的數(shù)據(jù)信息,或狀態(tài)信息。(4)相關(guān)問題的說明54

3、Reset引腳是復(fù)位信號輸入端,系統(tǒng)啟動、或在系統(tǒng)運(yùn)行過程中,CPU在接收到Reset信號后,會使系統(tǒng)復(fù)位。復(fù)位后,CPU處于如下狀態(tài):CPU的標(biāo)志寄存器、指令指針寄存器IP、段寄存器DS、ES、SS和指令隊列均被清零,代碼段寄存器CS被置為0FFFFH,CPU將從0FFFF0H處開始執(zhí)行指令。4、CPU與內(nèi)存、I/O端口之間在時間上的匹配主要靠“READY”信號。5、信號與(或)配合使用,指明從內(nèi)存或者I/O端口讀信息6、高4位地址線與狀態(tài)線分時復(fù)用,在T1狀態(tài),輸出地址信息,在其余狀態(tài),輸出狀態(tài)信息。3、Reset引腳是復(fù)位信號輸入端,系統(tǒng)啟動55(6)8086/8088CPU的引腳分類8086/8088CPU的40個引腳可以分成下列幾大類:(1)數(shù)據(jù)/地址復(fù)用線、地址線、地址/狀態(tài)復(fù)用線――AD0~AD7、A8~A15、A16~A19/S3~S6;(2)常規(guī)信號――GND(2個)、、CLK;(3)常用信號――ALE、、、;(4)中斷――INTR、NMI、;(5)、READY、RESET;(6)HOLD、HLDA;(7)(8086)(8088)、、、。(6)8086/8088CPU的引腳分類562.2.58086/8088CPU典型時序分析一、

相關(guān)的基本概念1.

什么是時序

時序是計算機(jī)操作運(yùn)行的時間順序。2.指令周期、總線周期及時鐘周期

微機(jī)系統(tǒng)的工作,必須嚴(yán)格按照一定的時間關(guān)系來進(jìn)行,CPU定時所用的周期有三種,即指令周期、總線周期和時鐘周期。(1).指令周期

一條指令從其代碼被從內(nèi)存單元中取出到其所規(guī)定的操作執(zhí)行完畢,所用的時間,稱為相應(yīng)指令的指令周期。

2.2.58086/8088CPU典型時序分析57由于指令的類型、功能不同,因此,不同指令所要完成的操作也不同,相應(yīng)地,其所需的時間也不相同。也就是說,指令周期的長度因指令的不同而不同。(2).時鐘周期時鐘周期是微機(jī)系統(tǒng)工作的最小時間單元,它取決于系統(tǒng)的主頻率,系統(tǒng)完成任何操作所需要的時間,均是時鐘周期的整數(shù)倍。時鐘周期又稱為T狀態(tài)。

時鐘周期是基本定時脈沖的兩個沿之間的時間間隔,而基本定時脈沖是由外部振蕩器產(chǎn)生的,通過CPU的CLK輸入端輸入,基本定時脈沖的頻率,我們稱之為系統(tǒng)的主頻率。一個基本的總線周期由4個T狀態(tài)組成,我們分別稱為4個狀態(tài),在每個T狀態(tài)下,CPU完成不同的動作。由于指令的類型、功能不同,因此,不同指令所要完成的操58(3).總線周期我們把CPU通過總線與內(nèi)存或I/O端口之間,進(jìn)行一個字節(jié)數(shù)據(jù)交換所進(jìn)行的操作,稱為一次總線操作,相應(yīng)于某個總線操作的時間即為總線周期。雖然,每條指令的功能不同,所需要進(jìn)行的操作也不同,指令周期的長度也必不相同。但是,我們可以對不同指令所需進(jìn)行的操作進(jìn)行分解,它們又都是由一些基本的操作組合而成的。如存儲器的讀/寫操作、I/O端口的讀/寫操作、中斷響應(yīng)等,這些基本的操作都要通過系統(tǒng)總線實(shí)現(xiàn)對內(nèi)存或I/O端口的訪問的。不同的指令所要完成的操作,是由一系列的總線操作組合而成的,而總線操作的數(shù)量及排列順序因指令的不同而不同。8088的總線操作,就是8088CPU利用總線(AB、DB、CB)與內(nèi)存及I/O端口進(jìn)行信息交換的過程,與這些過程相對應(yīng)的總線上的信號變化的相對時間關(guān)系,就是相應(yīng)總線操作的時序。(3).總線周期593.8086/8088微機(jī)系統(tǒng)的主要操作8086/8088微機(jī)系統(tǒng),能夠完成的操作有下列幾種主要類型:

系統(tǒng)的復(fù)位與啟動操作;

暫停操作;

總線操作;(I/O讀、I/O寫、存貯器讀、存貯器寫)

中斷操作;

最小模式下的總線保持;

最大模式下的總線請求/允許。

3.8086/8088微機(jī)系統(tǒng)的主要操作60二、

典型的8088時序分析

1.最小模式下的典型時序CPU為了與存貯器或I/O端口進(jìn)行一個字節(jié)的數(shù)據(jù)交換,需要執(zhí)行一次總線操作,按數(shù)據(jù)傳輸?shù)姆较騺矸?,可將總線操作分為讀操作和寫操作兩種類型;按照讀/寫的不同對象,總線操作又可分為存貯器讀/寫與I/O讀/寫操作,下面我們就最小模式下的總線讀/寫操作時序,來進(jìn)行具體分析。二、典型的8088時序分析61(1).最小模式下的總線讀操作時序一個最基本的讀周期包含有4個狀態(tài),即、、、,必要時可插入1個或幾個。

狀態(tài)①有效,用來指出本次讀周期是存貯器讀還是I/O讀,它一直保持到有效。②20位地址線信號有效,由高4位通過地址/狀態(tài)線送出,和低8位通過地址/數(shù)據(jù)線送出,用來指出操作對象的地址,即存貯器單元地址或I/O端口地址。③ALE有效,在最小模式的系統(tǒng)配置中我們講過,地址信號通過地址鎖存器8282鎖存,ALE即為8282的鎖存信號,下降沿有效。

(1).最小模式下的總線讀操作時序62當(dāng)系統(tǒng)中配有總線驅(qū)動器時,使變低,用來表示本周期為讀周期,并通知總線驅(qū)動器接收數(shù)據(jù)()

狀態(tài)⑤高四位地址/狀態(tài)線送出狀態(tài)信息,。⑥低8位地址/數(shù)據(jù)線浮空,為下面?zhèn)魉蛿?shù)據(jù)準(zhǔn)備。⑦有效,表示要對存貯器/I/O端口進(jìn)行讀。⑧有效,使得總線收發(fā)器(驅(qū)動器)可以傳輸數(shù)據(jù)()

微型計算機(jī)基礎(chǔ)課件63

狀態(tài)

從存貯器/I/O端口讀出的數(shù)據(jù)送上數(shù)據(jù)總線。

狀態(tài)

若存貯器或外設(shè)速度較慢,不能及時送上數(shù)據(jù),則通過READY線通知CPU,CPU在的前沿(即結(jié)束末的下降沿)檢測READY,若發(fā)現(xiàn)READY=0,則在結(jié)束后自動插入1個或幾個,并在每個的前沿處檢測READY,等到READY變高后,則自動脫離進(jìn)入。

狀態(tài)64

狀態(tài)

在與(或)的交界處(下降沿),采集數(shù)據(jù),使各控制及狀態(tài)線進(jìn)入無效。

狀態(tài)65(2).最小模式下的總線寫操作時序

時序如圖所示,最基本的總線寫周期也包括四個狀態(tài)必要時插入。

(2).最小模式下的總線寫操作時序66

T1狀態(tài)基本上同讀周期,只有此時為高不是低。T2狀態(tài)與讀周期有兩點(diǎn)不同:變成;

AD0~AD7不是浮空,而是發(fā)出要寫入存貯器/I/O端口的數(shù)據(jù)。

T3狀態(tài)、TW狀態(tài)、T4狀態(tài)三個狀態(tài)同讀周期。已完成CPU→存貯器/I/O端口的數(shù)據(jù)傳送,使數(shù)據(jù)線上的數(shù)據(jù)無效,同時,使各控制與狀態(tài)信號無效。T1狀態(tài)67

(3).中斷響應(yīng)周期(對可屏蔽中斷)波形圖如圖所示,由兩個連續(xù)的總線周期所組成。說明:①要求INTR信號是一個高電平信號,并且維持兩個T,因為CPU在一條指令的最后一個T采樣INTR,進(jìn)入中斷響應(yīng)后,它在第一個周期的T1仍需采樣INTR。

(3).中斷響應(yīng)周期(對可屏蔽中斷)68②在最小模式下,中斷應(yīng)答信號來自8086的引腳③第一個總線周期通過用來通知外設(shè),CPU準(zhǔn)備響應(yīng)中斷,第二個總線周期通過通知外設(shè)送中斷類型碼,該類型碼通過數(shù)據(jù)總線的低8位傳送,來自中斷源。CPU據(jù)此轉(zhuǎn)入中斷服務(wù)子程序。④在中斷響應(yīng)期間,為低,數(shù)據(jù)/地址線浮空,數(shù)據(jù)/狀態(tài)線浮空。在兩個中斷響應(yīng)周期之間可安排2~3個空閑周期(8086)或沒有(8088)。

②在最小模式下,中斷應(yīng)答信號來自8086的引69(4).系統(tǒng)的復(fù)位和啟動操作(對最大小模式都一樣)8086/8088的復(fù)位和啟動操作,是通過RESET引腳上的觸發(fā)信號來執(zhí)行的,當(dāng)RESET引腳上有高電平時,CPU就結(jié)束當(dāng)前操作,進(jìn)入初始化(復(fù)位)過程,包括把各內(nèi)部寄存器(除CS)清0,標(biāo)志寄存器清0,指令隊列清0,將FFFFH送CS。重新啟動后,系統(tǒng)從FFFF0H開始執(zhí)行指令。重新啟動的動作是當(dāng)RESET從高到低跳變時觸發(fā)CPU內(nèi)部的一個復(fù)位邏輯電路,經(jīng)過7個T狀態(tài),CPU即自動啟動。要注意的是,由于在復(fù)位操作時,標(biāo)志寄存器被清0,因此其中的中斷標(biāo)志IF也被清0,這樣就阻止了所有的可屏蔽中斷請求,都不能響應(yīng),即復(fù)位以后,若需要必需用開中斷指令來重新設(shè)置IF標(biāo)志。(4).系統(tǒng)的復(fù)位和啟動操作(對最大小模式都一樣)70第二章微型計算機(jī)基礎(chǔ)2.1微型計算機(jī)基本結(jié)構(gòu)微型計算機(jī)又稱為PC機(jī),由硬件系統(tǒng)和軟件系統(tǒng)兩大部分組成。第二章微型計算機(jī)基礎(chǔ)2.1微型計算機(jī)基本結(jié)構(gòu)712.1.1微型計算機(jī)的概念結(jié)構(gòu)如圖所示,是微型計算機(jī)的典型組成結(jié)構(gòu)示意圖,從圖中我們可以看出,微型計算機(jī)由微處理器CPU①、一定容量的內(nèi)部存儲器(包括②ROM、RAM)、③輸入/輸出接口電路組成。各功能部件之間通過④總線有機(jī)地連接在一起,其中微處理器是整個微型計算機(jī)的核心部件。2.1.1微型計算機(jī)的概念結(jié)構(gòu)721.硬件系統(tǒng)1)微處理器(centralprocessingunite)簡稱為CPU,又名中央處理器和中央處理單元用途:解釋指令并進(jìn)行運(yùn)算指標(biāo):能否超頻、工作溫度組成:運(yùn)算器、控制器、(CPU內(nèi)部)寄存器組運(yùn)算器:用于完成數(shù)據(jù)的算術(shù)和邏輯運(yùn)算控制器:通常由指令寄存器、指令譯碼器和控制電路組成(CPU內(nèi)部)寄存器組:暫存參加運(yùn)算的操作數(shù)和運(yùn)算結(jié)果分為專用寄存器和通用寄存器工作原理:猶如一個工廠系統(tǒng)中的生產(chǎn)車間對產(chǎn)品的加工過程1.硬件系統(tǒng)732)存儲器(又叫內(nèi)存或主存)組成:通常由CPU之外的半導(dǎo)體存儲器芯片組成用途:存放程序、原始操作數(shù)、運(yùn)算的中間結(jié)果數(shù)據(jù)、最終結(jié)果數(shù)據(jù)(1)內(nèi)存單元的地址和內(nèi)容地址——每個存儲單元編上不同的且唯一的號碼,一般用十六進(jìn)制數(shù)表示內(nèi)容——每個存儲器地址中又存放著的那一組二進(jìn)制(或十六進(jìn)制)表示的數(shù)兩者關(guān)系:前者為某一個房間號碼,后者為此房間里住的人2)存儲器(又叫內(nèi)存或主存)74(2)數(shù)據(jù)在內(nèi)存儲器中的存儲方式(板書分析)第一,內(nèi)存儲器是有唯一地址的字節(jié)的有序陣列第二,對于一個字的數(shù)據(jù)存儲,占用兩個相鄰存儲單元,高字節(jié)放高地址,低字節(jié)放低地址,以低地址命名為此字?jǐn)?shù)據(jù)的地址。

(3)內(nèi)存的操作

CPU對內(nèi)存的操作有讀/寫兩種。讀操作:CPU將內(nèi)存單元的內(nèi)容取到CPU內(nèi)部,不改變被讀單元的內(nèi)容寫操作:CPU將內(nèi)部信息傳送到內(nèi)存單元保存起來,改變被寫單元的內(nèi)容。(2)數(shù)據(jù)在內(nèi)存儲器中的存儲方式(板書分析)75例如:讀出地址為04H內(nèi)存單元中的內(nèi)容讀出信息操作過程如下圖所示例如:CPU將數(shù)據(jù)26H寫入地址為08H的存儲單元向存儲器寫入信息的操作過程如上圖所示例如:讀出地址為04H內(nèi)存單元中的內(nèi)容76(4)內(nèi)存的分類

按工作方式不同,可將存儲器分為隨機(jī)存取存儲器(又稱讀寫存儲器)、只讀存儲器兩種形式。(4)內(nèi)存的分類773)輸入/輸出設(shè)備及其接口電路輸入/輸出(input/output縮寫I/O)設(shè)備稱為外部設(shè)備輸入任務(wù):將程序、原始數(shù)據(jù)及現(xiàn)場信息計算機(jī)自動計算和處理輸出任務(wù):計算機(jī)中的計算和處理結(jié)果/回答信號以人能識別的各種形式表示出來接口電路的主要職責(zé):將微處理器和輸入/輸出設(shè)備之間的信息

統(tǒng)一和聯(lián)系起來接口電路的種類:常用的有8255可編程并行接口電路、8253可編程定時/計數(shù)電路等3)輸入/輸出設(shè)備及其接口電路784)總線微型計算機(jī)大多采用總線結(jié)構(gòu),因為在微型計算機(jī)系統(tǒng)中,無論是各部件之間的信息傳送,還是處理器內(nèi)部信息的傳送,都是通過總線進(jìn)行的,系統(tǒng)中各功能部件之間的相互關(guān)系變?yōu)楦鱾€部件面向總線的單一關(guān)系。問題:什么是總線所謂總線,是連接多個功能部件或多個裝置的一組公共信號線,用作微機(jī)各部分傳遞信息所共同使用的“高速信息公路”。

按在系統(tǒng)中的不同位置,總線可以分為內(nèi)部總線和外部總線。內(nèi)部總線是CPU內(nèi)部各功能部件和寄存器之間的連線;外部總線是連接系統(tǒng)的總線,即連接CPU、存儲器和I/O接口的總線,又稱為系統(tǒng)總線。4)總線79解釋:三總線結(jié)構(gòu)按所傳送信息的不同類型,總線可以分為數(shù)據(jù)總線DB(DataBus)、地址總線AB(AddressBus)和控制總線CB(ControlBus)三種類型,通常稱微型計算機(jī)采用三總線結(jié)構(gòu)。①地址總線(AddressBus)

地址總線是微型計算機(jī)用來傳送地址信息的信號線。地址總線的位數(shù)決定了CPU可以直接尋址的內(nèi)存空間的大小。因為地址總是從CPU發(fā)出的,所以地址總線是單向的、三態(tài)總線。單向指信息只能沿一個方向傳送,三態(tài)指除了輸出高、低電平狀態(tài)外,還可以處于高阻抗?fàn)顟B(tài)(浮空狀態(tài))。

解釋:三總線結(jié)構(gòu)80②數(shù)據(jù)總線(DataBus)

數(shù)據(jù)總線是CPU用來傳送數(shù)據(jù)信息的信號線(雙向、三態(tài))。數(shù)據(jù)總線是雙向三態(tài)總線,即數(shù)據(jù)既可以從CPU送到其它部件,也可以從其它部件傳送給CPU,數(shù)據(jù)總線的位數(shù)和處理器的位數(shù)相對應(yīng)。③控制總線(ControlBus)控制總線是用來傳送控制信號的一組總線。這組信號線比較復(fù)雜,由它來實(shí)現(xiàn)CPU對外部功能部件(包括存儲器和I/O接口)的控制及接收外部傳送給CPU的狀態(tài)信號,不同的微處理器采用不同的控制信號??刂瓶偩€的信號線,有的為單向,有的為雙向或三態(tài),有的為非三態(tài),取決于具體的信號線,但作為整體是雙向的,以雙向線表示。②數(shù)據(jù)總線(DataBus)812.微處理器、微型計算機(jī)與微型計算機(jī)系統(tǒng)三者之間的關(guān)系微處理器、微型計算機(jī)與微型計算機(jī)系統(tǒng)三者之間的關(guān)系如下:2.微處理器、微型計算機(jī)與微型計算機(jī)系統(tǒng)三者之間的關(guān)系823.軟件系統(tǒng)軟件系統(tǒng)包括系統(tǒng)軟件和應(yīng)用軟件兩大類。系統(tǒng)軟件包括操作系統(tǒng)和系統(tǒng)實(shí)用程序。應(yīng)用軟件是用戶為解決各種實(shí)際問題而編制的程序。3.軟件系統(tǒng)832.1.2微型計算機(jī)的工作過程

我們已經(jīng)介紹了微型計算機(jī)的組成及系統(tǒng)結(jié)構(gòu),并且分析討論了作為微型計算機(jī)核心部件的CPU的內(nèi)部結(jié)構(gòu),在這一基礎(chǔ)上,討論微型計算機(jī)系統(tǒng)的工作過程。1.存儲程序計算機(jī)

(1)程序與指令指令就是能被計算機(jī)識別的并能執(zhí)行的基本操作命令,以二進(jìn)制代碼的形式出現(xiàn)的。程序就是實(shí)現(xiàn)既定任務(wù)的指令序列。(2)程序存儲把執(zhí)行一項信息處理任務(wù)的程序代碼,以字節(jié)為單位,按順序存放在存儲器的一段連續(xù)的存儲區(qū)域內(nèi),這就是程序存儲的概念。2.1.2微型計算機(jī)的工作過程842.計算機(jī)工作過程的實(shí)質(zhì)計算機(jī)之所以能在沒有人直接干預(yù)的情況下,自動地完成各種信息處理任務(wù),是因為人們事先為它編制了各種工作程序,計算機(jī)的工作過程,就是執(zhí)行程序的過程,包括取指令與執(zhí)行指令兩個基本階段。簡單地講,微型計算機(jī)系統(tǒng)的工作過程是取指令(代碼)→分析指令(譯碼)→執(zhí)行指令的不斷循環(huán)的過程。2.計算機(jī)工作過程的實(shí)質(zhì)852.28086/8088微處理器

2.2.18086/8088微處理器概述1.引言8086/8088微處理器是Intel公司推出的第三代CPU芯片,它們的內(nèi)部結(jié)構(gòu)基本相同,都采用16位結(jié)構(gòu)進(jìn)行操作及存儲器尋址,但外部性能有所差異,兩種處理器都封裝在相同的40腳雙列直插組件(DIP)中。2.8086微處理器的一般性能特點(diǎn):

16位的內(nèi)部結(jié)構(gòu),16位雙向數(shù)據(jù)信號線;

20位地址信號線,可尋址1M字節(jié)存儲單元;較強(qiáng)的指令系統(tǒng);利用16位的地址總線來進(jìn)行I/O端口尋址,可尋址64K個I/O端口;2.28086/8088微處理器

2.2.18086/886中斷功能強(qiáng),可處理內(nèi)部軟件中斷和外部中斷,中斷源可達(dá)256個;

單一的+5V電源,單相時鐘5MHz。另外,Intel公司同期推出的Intel8088微處理器是一種準(zhǔn)16位微處理器,其內(nèi)部寄存器,內(nèi)部操作等均按16位處理器設(shè)計,與Intel8086微處理器基本上相同,不同的是其對外的數(shù)據(jù)線只有8位,目的是為了方便地與8位I/O接口芯片相兼容。中斷功能強(qiáng),可處理內(nèi)部軟件中斷和外部中斷,中斷872.2.28086/8088的功能結(jié)構(gòu)及指令流水線1.8086/8088的功能結(jié)構(gòu)(又稱為編程結(jié)構(gòu))如右圖所示是8086/8088CPU的內(nèi)部功能結(jié)構(gòu)。從功能上來看,8086/8088CPU可分為兩部分,即總線接口部件BIU(BusInterfaceUnit)和執(zhí)行部件EU(ExecutionUnit)2.2.28086/8088的功能結(jié)構(gòu)及指令流水線88(1)執(zhí)行部件(EU)功能:負(fù)責(zé)指令的執(zhí)行。組成:包括①ALU(算術(shù)邏輯單元)、②通用寄存器組③標(biāo)志寄存器等,主要進(jìn)行8位及16位的各種運(yùn)算(2)總線接口部件(BIU)功能:負(fù)責(zé)與存儲器及I/O接口之間的數(shù)據(jù)傳送操作。具體來看,完成取指令送指令隊列,配合執(zhí)行部件的動作,從內(nèi)存單元或I/O端口取操作數(shù),或者將操作結(jié)果送內(nèi)存單元或者I/O端口。組成:它由①段寄存器(DS、CS、ES、SS)、②16位指令指針寄存器IP(指向下一條要取出的指令代碼)、③20位地址加法器(用來產(chǎn)生20位地址)和④6字節(jié)(8088為4字節(jié))指令隊列緩沖器組成。(1)執(zhí)行部件(EU)89(3)8086/8088BIU的特點(diǎn)①指令流隊列是一個內(nèi)部的存儲器陣列,類似一個先進(jìn)先出的倉庫。8086/8088的指令流隊列最多能保存分別為6/4個字節(jié),且只要隊列出現(xiàn)2/1個空字節(jié),同時EU也未要求BUI進(jìn)入存取操作數(shù)的總線周期,BIU便自動從內(nèi)存單元順序取指令字節(jié),并填滿指令流隊列。若數(shù)據(jù)存取請求與預(yù)取指令請求同時發(fā)生,BIU將優(yōu)先處理數(shù)據(jù)存取操作,可以提高CPU的工作效率。②地址加法器用來產(chǎn)生20位物理地址。8086/8088可用20位地址尋址1M字節(jié)的內(nèi)存空間,而CPU內(nèi)部的寄存器都是16位,因此需要由一個附加的機(jī)構(gòu)來計算出20位的物理地址,這個機(jī)構(gòu)就是20位的地址加法器。例如:CS=0FE00H,IP=0400H,則表示要取指令代碼的物理地址為0FE400H。(3)8086/8088BIU的特點(diǎn)90(4)BIU與EU的動作協(xié)調(diào)原則:總線接口部件(BIU)和執(zhí)行部件(EU)按以下流水線技術(shù)原則協(xié)調(diào)工作,共同完成所要求的信息處理任務(wù):①每當(dāng)8086的指令隊列中有兩個空字節(jié),或8088的指令隊列中有一個空字節(jié)時,BIU就會自動把指令取到指令隊列中。其取指的順序是按指令在程序中出現(xiàn)的前后順序。②每當(dāng)EU準(zhǔn)備執(zhí)行一條指令時,它會從BIU部件的指令隊列前部取出指令的代碼,然后用幾個時鐘周期去執(zhí)行指令。在執(zhí)行指令的過程中,如果必須訪問存儲器或者I/O端口,那么EU就會請求BIU,進(jìn)入總線周期,完成訪問內(nèi)存或者I/O端口的操作;如果此時BIU正好處于空閑狀態(tài),會立即響應(yīng)EU的總線請求。如BIU正將某個指令字節(jié)取到指令隊列中,則BIU將首先完成這個取指令的總線周期,然后再去響應(yīng)EU發(fā)出的訪問總線的請求。(4)BIU與EU的動作協(xié)調(diào)原則:91③當(dāng)指令隊列已滿,且EU又沒有總線訪問請求時,BIU便進(jìn)入空閑狀態(tài)。④在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時,由于待執(zhí)行指令的順序發(fā)生了變化,則指令隊列中已經(jīng)裝入的字節(jié)被自動消除,BIU會接著往指令隊列裝入轉(zhuǎn)向的另一程序段中的指令代碼。從上述BIU與EU的動作管理原則中,不難看出,它們兩者的工作是不同步的,正是這種既相互獨(dú)立又相互配合的關(guān)系,使得8086/8088可以在執(zhí)行指令的同時,進(jìn)行取指令代碼的操作,也就是說BIU與EU是一種并行工作方式,改變了以往計算機(jī)取指令→譯碼→執(zhí)行指令的串行工作方式,大大提高了工作效率,這正是8086/8088獲得成功的原因之一。

③當(dāng)指令隊列已滿,且EU又沒有總線訪問請求時,B928086/8088CPU80286CPU80386CPU主要性能

8086CPU為典型的16位CPU,具有16位內(nèi)部DB和16位外部DB,8088也具有16位內(nèi)部DB但外DB只有8位,故稱為準(zhǔn)16位機(jī),其他方面幾乎完全相同。40條引腳,20位地址總線(AB)可尋址1MB的內(nèi)存地址空間和64KB的I/O地址空間,工作方式為實(shí)地址方式

比8086/8088更先進(jìn)的16位CPU,有68個引腳,分開設(shè)置16條數(shù)據(jù)線和24條地址線,具有存儲器管理和保護(hù)機(jī)構(gòu),采用分段的方法管理存儲器,有兩種工作方式:實(shí)地址和虛地址。

32位CPU,132條引腳,DB和AB各32條,有3種工作方式:實(shí)地址、虛地址和虛擬8086方式

2、8086/8088、80286、80386CPU對比表8086/8088CPU80286CPU80386C938086/80888028680386功能結(jié)構(gòu)

兩部分:執(zhí)行部件EU和總線接口部件BIUEU包括:ALU(算術(shù)邏輯單元)、16位標(biāo)志寄存器、寄存器陣列、指令譯碼器及控制電路BIU包括:4個16位段寄存器、一個16位指令指針、一個地址加法器、一個指令流隊列和總線控制電路

四個部分:EU、AU、IU、BIUAU:地址部件,包括物理地址發(fā)生器、段寄存器、段描述符高速緩沖存儲器等IU:指令部件,包括指令譯碼器和已譯碼指令隊列EU:包括ALU及標(biāo)志寄存器、通用寄存器陣列(用來暫存操作數(shù)和運(yùn)算結(jié)果)和控制電路等BIU:包括總線接口電路、預(yù)取器和6字節(jié)的預(yù)取隊列每個部件都可與其他部件異步并行操作

六個部分:總線接口部件指令預(yù)取部件指令譯碼部件執(zhí)行部件分段部件分頁部件8086/8088802868038943.80386CPU基本寄存器包括4個32位通用寄存器、2個32位變址寄存器、3個32位指針寄存器、6個16位段寄存器和1個32位標(biāo)志寄存器,它們組成了一個基本寄存器集。①通用寄存器(EAX、EBX、ECX、EDX)②變址寄存器(ESI、EDI)③指針寄存器(EBP、ESP、EIP)④段寄存器(CS、DS、SS、ES、FS、GS)使用約定表3.80386CPU基本寄存器95約定表如下:約定表如下:96⑤標(biāo)志寄存器(EFLAGS)其為32位寄存器,有6位狀態(tài)標(biāo)志、3位控制標(biāo)志、2位保護(hù)方式標(biāo)志及兩個新增的標(biāo)志。⑤標(biāo)志寄存器97a.狀態(tài)標(biāo)志:6個狀態(tài)標(biāo)志表示前一步操作(如加、減等)執(zhí)行以后,ALU所處的狀態(tài),后續(xù)操作可以根據(jù)這些狀態(tài)標(biāo)志進(jìn)行判斷,實(shí)現(xiàn)轉(zhuǎn)移。

(0)CF—進(jìn)位標(biāo)志位,做加法時最高位出現(xiàn)進(jìn)位或做減法時最高位出現(xiàn)借位,該位置1,反之為0。

(2)PF—奇偶標(biāo)志位,當(dāng)運(yùn)算結(jié)果的低8位中l(wèi)的個數(shù)為偶數(shù)時,則該位置1,反之為0。

(4)AF—半進(jìn)位標(biāo)志位,做字節(jié)加法時,當(dāng)?shù)退奈挥邢蚋咚奈坏倪M(jìn)位,或在做減法時,低四位有向高四位的借位時,該標(biāo)志位就置1。

(6)ZF—零標(biāo)志位,運(yùn)算結(jié)果為0時,該標(biāo)志位置1,否則清0。a.狀態(tài)標(biāo)志:6個98(7)SF—符號標(biāo)志位,當(dāng)運(yùn)算結(jié)果的最高位為1,該標(biāo)志位置1,否則清0。即與運(yùn)算結(jié)果的最高位相同。

(11)OF—溢出標(biāo)志位,OF溢出的判斷方法如下:加法運(yùn)算:若兩個加數(shù)的最高位為0,而和的最高位為1,則產(chǎn)生上溢出;若兩個加數(shù)的最高位為1,而和的最高位為0,則產(chǎn)生下溢出;兩個加數(shù)的最高位不相同時,不可能產(chǎn)生溢出。減法運(yùn)算:若被減數(shù)的最高位為0,減數(shù)的最高位為1,而差的最高位為1,則產(chǎn)生上溢出;若被減數(shù)的最高位為1,減數(shù)的最高位為0,而差的最高位為0,則產(chǎn)生下溢出;被減數(shù)及減數(shù)的最高位相同時,不可能產(chǎn)生溢出。

(7)SF—符號標(biāo)志位,當(dāng)運(yùn)算結(jié)果的最高位為1,該標(biāo)志位置99如果所進(jìn)行的運(yùn)算是帶符號數(shù)的運(yùn)算,則溢出標(biāo)志恰好能夠反映運(yùn)算結(jié)果是否超出了8位或16位帶符號數(shù)所能表達(dá)的范圍,即字節(jié)運(yùn)算大于十127或小于-128時,字運(yùn)算大于十32767或小于-32768時,該位置1,反之為0。

舉例:CF=0、AF=1、PF=1、ZF=0、SF=1、OF=1(兩正數(shù)相加結(jié)果為負(fù))一般來講,不是每次運(yùn)算后所有的標(biāo)志都改變,只是在某些操作之后,才對其中某個標(biāo)志進(jìn)行檢查。

0101010000111001+

01000101011010101001100110100011如果所進(jìn)行的運(yùn)算是帶符號數(shù)的運(yùn)算,則溢出標(biāo)志恰100b.控制標(biāo)志控制標(biāo)志可以通過指令人為設(shè)置,用以對某一種特定的功能起控制作用(如中斷屏蔽等),反映了人們對微機(jī)系統(tǒng)工作方式的可控制性。與8086/8088、80286兼容的控制標(biāo)志位3個

(8)TF—陷阱

溫馨提示

  • 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

提交評論