![[計(jì)算機(jī)軟件及應(yīng)用]計(jì)算機(jī)組成原理.ppt_第1頁(yè)](http://file2.renrendoc.com/fileroot3/2019-1/3/56a76b9e-bbd4-4fce-8ce7-eb0488619066/56a76b9e-bbd4-4fce-8ce7-eb04886190661.gif)
![[計(jì)算機(jī)軟件及應(yīng)用]計(jì)算機(jī)組成原理.ppt_第2頁(yè)](http://file2.renrendoc.com/fileroot3/2019-1/3/56a76b9e-bbd4-4fce-8ce7-eb0488619066/56a76b9e-bbd4-4fce-8ce7-eb04886190662.gif)
![[計(jì)算機(jī)軟件及應(yīng)用]計(jì)算機(jī)組成原理.ppt_第3頁(yè)](http://file2.renrendoc.com/fileroot3/2019-1/3/56a76b9e-bbd4-4fce-8ce7-eb0488619066/56a76b9e-bbd4-4fce-8ce7-eb04886190663.gif)
![[計(jì)算機(jī)軟件及應(yīng)用]計(jì)算機(jī)組成原理.ppt_第4頁(yè)](http://file2.renrendoc.com/fileroot3/2019-1/3/56a76b9e-bbd4-4fce-8ce7-eb0488619066/56a76b9e-bbd4-4fce-8ce7-eb04886190664.gif)
![[計(jì)算機(jī)軟件及應(yīng)用]計(jì)算機(jī)組成原理.ppt_第5頁(yè)](http://file2.renrendoc.com/fileroot3/2019-1/3/56a76b9e-bbd4-4fce-8ce7-eb0488619066/56a76b9e-bbd4-4fce-8ce7-eb04886190665.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三章 處理器,3.1 處理器的指令集,3.2 處理器的組成與工作過(guò)程,3.3 CISC和RISC,3.4 80 x86系列微處理器,3. 1 處理器的指令集,07:50:28,3. 1. 1 概述 人們與計(jì)算機(jī)交流所用的“詞匯”叫做“指令(Instruction)”,所有可以采用的“詞匯”組成的集合叫做“指令集 (Instruction Set) ”,這些“詞匯”按照一定的順序組合就形成了程序(Program)。 在國(guó)內(nèi),“指令集”常稱為“指令系統(tǒng)”。,3. 1. 1 概述,07:50:28,機(jī)器指令: 計(jì)算機(jī)能直接識(shí)別的是由0和1排列而成的指令。 使用不方便。 匯編語(yǔ)言是基于英文的機(jī)器指令
2、助記符 匯編語(yǔ)言源程序按匯編語(yǔ)言書寫的程序 匯編語(yǔ)言源程序由匯編程序(Assembler)轉(zhuǎn)換成機(jī)器指令,供計(jì)算機(jī)接受并執(zhí)行,3. 1. 1 概述,07:50:28,匯編語(yǔ)言的提出是計(jì)算機(jī)技術(shù)的一大進(jìn)步,體現(xiàn)了計(jì)算思維的一個(gè)重要概念抽象。 計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的發(fā)展過(guò)程就是 不斷抽象的過(guò)程。通過(guò)抽象,程序設(shè)計(jì)語(yǔ)言具有了更好的可編程性、可移植性、可重用性。,指令系統(tǒng):,指令:,就是要計(jì)算機(jī)執(zhí)行某種操作的命令。,一臺(tái)計(jì)算機(jī)中所有機(jī)器指令的集合。,指令集:,數(shù)據(jù)表示,尋址方式,指令集,返回首頁(yè),3. 1. 2 指令的操作碼與操作數(shù),07:50:28,馮諾依曼型計(jì)算機(jī)機(jī)器指令的邏輯格式,規(guī)定了指令所具有
3、的功能,指明指令所要處理的數(shù)據(jù)。,3. 1. 2 指令的操作碼與操作數(shù),07:50:28,一條指令中,操作數(shù)可能有一個(gè)、兩個(gè)或三個(gè),甚至更多。 操作數(shù)的個(gè)數(shù)也可以是零,即指令沒(méi)有操作數(shù)。 在這些操作數(shù)中,作為處理單元輸入的叫源操作數(shù)(Source Operand),用于存放處理結(jié)果的叫目的操作數(shù)(Destination Operand)。,指令字長(zhǎng)決定于,操作碼的長(zhǎng)度,指令字長(zhǎng) = 存儲(chǔ)字長(zhǎng),2. 指令字長(zhǎng) 可變,操作數(shù)地址的長(zhǎng)度,操作數(shù)地址的個(gè)數(shù),1. 指令字長(zhǎng) 固定,按字節(jié)的倍數(shù)變化,指令字長(zhǎng):一個(gè)指令字中包含二進(jìn)制代碼的位數(shù)。 機(jī)器字長(zhǎng):計(jì)算機(jī)能直接處理的二進(jìn)制數(shù)據(jù)的位數(shù)。,返回,3.
4、1. 2 指令的操作碼與操作數(shù),07:50:28,數(shù)據(jù)表示:指令中所能表示的操作數(shù)數(shù)據(jù)類型,即能夠被計(jì)算機(jī)硬件直接辨識(shí)的操作數(shù)數(shù)據(jù)類型 定點(diǎn)數(shù)(含有符號(hào)數(shù)和無(wú)符號(hào)數(shù))、 浮點(diǎn)數(shù)(含單精度和雙精度浮點(diǎn)數(shù))、 字符、邏輯數(shù)(又稱布爾型數(shù)據(jù))。,3. 1. 2 指令的操作碼與操作數(shù),07:50:28,“堆棧(Stack)”是一個(gè)重要的數(shù)據(jù)結(jié)構(gòu),廣泛應(yīng)用于子程序調(diào)用和中斷服務(wù)等領(lǐng)域。 原則:后進(jìn)先出(Last In First Out, LIFO) “壓入(PUSH)” “彈出(POP)”,返回,3. 1. 2 指令的操作碼與操作數(shù),07:50:28,硬件堆棧:用專門的硬件設(shè)備來(lái)實(shí)現(xiàn)的堆棧,也稱為級(jí)聯(lián)
5、堆棧。 軟件堆棧:為了降低硬件成本,大多數(shù)計(jì)算機(jī)(特別是微型計(jì)算機(jī))常用軟件來(lái)實(shí)現(xiàn)堆棧,即在內(nèi)存中開辟一個(gè)堆棧區(qū),并在處理器中設(shè)置指示堆棧棧頂單元地址的“堆棧指針寄存器(Stack Pointer, SP)”來(lái)管理這個(gè)堆棧。,3. 1. 2 指令的操作碼與操作數(shù),07:50:28,相對(duì)于硬件堆棧,軟件堆棧有三個(gè)優(yōu)點(diǎn): 可以有較大的深度。 可以設(shè)置多個(gè)堆棧。 除了專門的堆棧指令PUSH和POP外,還可以使用任何訪問(wèn)主存的指令來(lái)訪問(wèn)堆棧中的數(shù)據(jù)。,3. 1. 2 指令的操作碼與操作數(shù),07:50:28,只有標(biāo)量數(shù)據(jù)表示和標(biāo)量指令的處理器叫標(biāo)量處理器,這是最常見(jiàn)、最通用的處理器。 帶有向量數(shù)據(jù)表示和
6、向量指令的處理器叫向量處理器,例如我國(guó)于20世紀(jì)80年代研制的銀河-1超級(jí)計(jì)算機(jī)就裝備有向量處理器。,返回,3. 1. 3 尋址方式,07:50:28,尋址方式 (Addressing)指的是指令按照何種方式尋找或訪問(wèn)到所需的操作數(shù)或信息。 尋址方式分為指令尋址和數(shù)據(jù)尋址 指令尋址是為了找到下一條指令 數(shù)據(jù)尋址是為了找到本條指令所需的操作數(shù),3. 1. 3 尋址方式,07:50:28,分為順序?qū)ぶ泛吞S尋址兩種。 順序?qū)ぶ罚好孔x取一次PC后,PC自動(dòng)加1,指向下一條指令。 跳躍尋址則是由當(dāng)前指令改寫PC的內(nèi)容,根據(jù)PC指向地址取下一條指令。,1. 指令尋址,07:50:28,3. 1. 3 尋
7、址方式- 指令尋址,07:50:28,改寫PC的指令有“跳轉(zhuǎn)指令(Jump )”和“分支指令(Branch )”。 這兩種指令既可直接賦予PC一個(gè)新的值,也可在PC現(xiàn)有值的基礎(chǔ)上增加或減少一定數(shù)量。,返回,3. 1. 3 尋址方式,07:50:28,2. 數(shù)據(jù)尋址,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(1)立即數(shù)尋址 (Immediate Addressing),在指令中直接給出操作數(shù)的數(shù)值。,指令執(zhí)行階段不訪存,A 的位數(shù)限制了立即數(shù)的范圍,可正可負(fù) 補(bǔ)碼,形式地址 A 就是操作數(shù),返回,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(2)直接尋址 (Direc
8、t Addressing),EA = A,尋址特征,A,ACC,執(zhí)行階段訪問(wèn)一次存儲(chǔ)器,A 的位數(shù)決定了該指令操作數(shù)的尋址范圍,操作數(shù)的地址不易修改(必須修改A),有效地址由形式地址直接給出,返回,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(3)間接尋址 (Indirect Addressing),EA =(A),有效地址由形式地址間接提供,尋址特征,A,EA,A1,EA,執(zhí)行指令階段 2 次訪存,可擴(kuò)大尋址范圍,便于編制程序,尋址特征,A,一次間址,多次間址,操作數(shù),操作數(shù),多次訪存, ,轉(zhuǎn) 子程序,轉(zhuǎn) 子程序,間接尋址編程舉例,(A) = 81,(A) = 202, 間址特征
9、,JMP A,返回,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(4)寄存器尋址 (Register Addressing),EA = Ri,執(zhí)行階段不訪存,只訪問(wèn)寄存器,執(zhí)行速度快,尋址特征,寄存器個(gè)數(shù)有限,可縮短指令字長(zhǎng),有效地址即為寄存器編號(hào),返回,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(5)寄存器間接尋址 (Register Indirect Addressing),EA = ( Ri ),有效地址在寄存器中, 操作數(shù)在存儲(chǔ)器中,執(zhí)行階段訪存,尋址特征,便于編制循環(huán)程序,有效地址在寄存器中,返回,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(6
10、)基址尋址 ( Base Addressing ),“邏輯地址”是程序員編寫程序時(shí)使用的地址 “主存物理地址”是程序段/數(shù)據(jù)段在主存中的實(shí)際存放地址 程序段/數(shù)據(jù)段每次裝入主存的起始地址是不確定的,每次運(yùn)行時(shí),某條指令或某個(gè)數(shù)據(jù)的“主存物理地址”也是不確定的 但是這條指令或這個(gè)數(shù)據(jù)的“邏輯地址”是固定的,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(6)基址尋址 ( Base Addressing ),在處理器內(nèi)部設(shè)置一個(gè)專門存放程序段/數(shù)據(jù)段在主存中起始地址的寄存器,稱起始地址為基地址,簡(jiǎn)稱“基址”,稱該寄存器為“基址寄存器”。 “邏輯地址”與基址寄存器中的值相加即得到指令或數(shù)據(jù)
11、的“主存物理地址”。 指令中給出的“邏輯地址”又稱為相對(duì)于基址的“位移量”,位移量是一個(gè)有符號(hào)的整數(shù),常用補(bǔ)碼表示。,(1) 采用專用寄存器作基址寄存器,EA = ( BR ) + A,BR 為基址寄存器,尋址特征,可擴(kuò)大尋址范圍,便于程序搬家,BR 內(nèi)容由操作系統(tǒng)或管理程序確定,在程序的執(zhí)行過(guò)程中 BR 內(nèi)容不變,形式地址 A 可變,(2) 采用通用寄存器作基址寄存器,尋址特征,R0 作基址寄存器,由用戶指定哪個(gè)通用寄存器作為基址寄存器,基址寄存器的內(nèi)容由操作系統(tǒng)確定,在程序的執(zhí)行過(guò)程中 R0 內(nèi)容不變,形式地址 A 可變,返回,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,(7)變址尋址 (Ind
12、exed Addressing),EA = ( IX ) +A,尋址特征,可擴(kuò)大尋址范圍,便于處理數(shù)組問(wèn)題,IX 的內(nèi)容由用戶給定,IX 為變址寄存器,在程序的執(zhí)行過(guò)程中 IX 內(nèi)容可變,形式地址 A 不變,通用寄存器也可以作為變址寄存器,例,設(shè)數(shù)據(jù)塊首地址為 D,求 N 個(gè)數(shù)的平均值,直接尋址,變址尋址,LDA D,ADD D + 1,ADD D + 2,ADD D + ( N -1 ),DIV # N,STA ANS,LDA # 0,LDX # 0,INX,CPX # N,BNE M,DIV # N,STA ANS,共 N + 2 條指令,共 8 條指令,X 為變址寄存器,D 為形式地址,
13、(X) 和 #N 比較,結(jié)果不為零則轉(zhuǎn),返回,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,(8)堆棧尋址,SP堆棧指針寄存器,先進(jìn)后出(一個(gè)入出口),棧頂?shù)刂?由 SP 指出, 1,1FFFH,+1,2000 H,1FFF H,2000 H,PUSH A 前,PUSH A 后,POP A 前,POP A 后,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,根據(jù)堆棧的增長(zhǎng)方向分為: 遞增堆棧(Ascending Stack) ,也稱向上增長(zhǎng)堆棧。隨著數(shù)據(jù)的壓入,這種堆棧向高地址方向增長(zhǎng); 遞減堆棧(Descending Stack) ,也稱向下增長(zhǎng)堆棧。隨著數(shù)據(jù)的壓入,這種堆
14、棧向低地址方向增長(zhǎng)。,(8)堆棧尋址,3. 1. 3 尋址方式- 數(shù)據(jù)尋址,07:50:29,根據(jù)SP所指示棧頂單元的屬性,堆棧也可分為: 滿堆棧(Full Stack) 。SP指示棧頂單元存儲(chǔ)的是最后壓入數(shù)據(jù)。 空堆棧(Empty Stack) 。SP指示棧頂單元用于接收下一個(gè)要壓入的數(shù)據(jù)。,(8)堆棧尋址,返回,07:50:29,例2:某機(jī)器字長(zhǎng)16位,主存按字節(jié)編址,轉(zhuǎn)移指令采用相對(duì)尋址,由兩個(gè)字節(jié)組成,第一字節(jié)為操作碼字段,第二字節(jié)為相對(duì)位移量字段。假定取指令時(shí),每取一個(gè)字節(jié)PC自動(dòng)加1。若某轉(zhuǎn)移指令所在主存地址為2000H,相對(duì)位移量字段的內(nèi)容為06H,則該轉(zhuǎn)移指令成功轉(zhuǎn)移后的目標(biāo)地
15、址是 。 A2006H B2007H C2008H D2009H,例1:偏移尋址通過(guò)將某個(gè)寄存器內(nèi)容與一個(gè)形式地址相加而生成有效地址。下列尋址方式中,不屬于偏移尋址的是 。 A.間接尋址 B.基址尋址 C.相對(duì)尋址 D.變址尋址,返回,3. 1. 4 指令的基本功能,07:50:29,(1)算術(shù)/邏輯/移位指令(算邏指令) (2)數(shù)據(jù)傳送指令(數(shù)傳指令) (3)控制轉(zhuǎn)移指令 (4)輸入/輸出指令 (5)處理器控制及調(diào)試指令,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(1)算邏指令,定點(diǎn)加法指令A(yù)DD 定點(diǎn)減法指令SUB 定點(diǎn)乘法指令MUL 定點(diǎn)除法指令DIV 加1指令I(lǐng)NC
16、減1指令DEC 比較指令CMP,浮點(diǎn)加法指令A(yù)DDF 浮點(diǎn)減法指令SUBF 浮點(diǎn)乘法指令MULF 浮點(diǎn)除法指令DIVF,十進(jìn)制數(shù)算術(shù)運(yùn)算指令,影響處理器狀態(tài)標(biāo)志位,算術(shù)指令,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(1)算邏指令,“與”運(yùn)算指令A(yù)ND “或”運(yùn)算指令OR “非”運(yùn)算指令NOT “異或”運(yùn)算指令XOR 位測(cè)試 位清除 位求反,算術(shù)左移指令 算術(shù)右移指令 邏輯左移指令 邏輯右移指令 帶進(jìn)位循環(huán)左移指令 不帶進(jìn)位循環(huán)左移指令 帶進(jìn)位循環(huán)右移指令 不帶進(jìn)位循環(huán)右移指令,邏輯指令,移位指令,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(2)數(shù)傳指令,根
17、據(jù)數(shù)據(jù)的流向分: 寄存器與寄存器之間的數(shù)據(jù)傳送 寄存器與主存儲(chǔ)器單元之間的數(shù)據(jù)傳送 寄存器與堆棧之間的數(shù)據(jù)傳送 堆棧與主存儲(chǔ)器單元之間的數(shù)據(jù)傳送 內(nèi)存單元與內(nèi)存單元之間的數(shù)據(jù)傳送,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(2)數(shù)傳指令,根據(jù)傳輸?shù)墓δ芊郑阂话銈魉汀⒍褩2僮?、?shù)據(jù)交換 一般傳送指令 實(shí)現(xiàn)數(shù)據(jù)復(fù)制功能,即把源操作數(shù)的內(nèi)容寫入目的操作數(shù)。其匯編語(yǔ)言助記符通常為MOV。 LOAD:內(nèi)存 寄存器 STORE:寄存器 內(nèi)存,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(2)數(shù)傳指令,根據(jù)傳輸?shù)墓δ芊郑?堆棧操作指令 壓入棧頂PUSH 彈出棧頂POP PU
18、SH的源操作數(shù)和POP指令的目的操作數(shù),一般是寄存器號(hào),也可能是主存儲(chǔ)器單元地址.,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(2)數(shù)傳指令,“數(shù)據(jù)交換指令” 實(shí)現(xiàn)兩個(gè)數(shù)據(jù)的交換 如Intel 80 x86中的XCHG指令。 源操作數(shù)和目的操作數(shù)一般都是寄存器,至多允許源操作數(shù)是主存儲(chǔ)器單元。 數(shù)據(jù)交換指令的執(zhí)行時(shí)間一般較長(zhǎng)。,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(3)控制轉(zhuǎn)移指令,跳轉(zhuǎn)指令JUMP (無(wú)條件轉(zhuǎn)移) 分支指令(條件轉(zhuǎn)移) 子程序調(diào)用CALL/返回指令RET 循環(huán)控制指令LOOP 中斷系統(tǒng)指令,返回首頁(yè),3. 1. 4 指令的基本功能,0
19、7:50:29,(3)控制轉(zhuǎn)移指令,分支指令,根據(jù)特定條件(往往是上一條指令的執(zhí)行結(jié)果),決定程序是順序執(zhí)行還是轉(zhuǎn)移到一個(gè)新的位置執(zhí)行,也稱條件轉(zhuǎn)移指令。 條件轉(zhuǎn)移指令可能依據(jù)的條件有: 為0、為正/負(fù)數(shù)、發(fā)生進(jìn)位/借位、為奇數(shù)/偶數(shù)、發(fā)生溢出或以上條件的組合。,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(3)控制轉(zhuǎn)移指令,分支指令,條件轉(zhuǎn)移指令又分為“絕對(duì)轉(zhuǎn)移”和“相對(duì)轉(zhuǎn)移”兩種。 對(duì)于“絕對(duì)轉(zhuǎn)移”,當(dāng)條件滿足時(shí),計(jì)算機(jī)將把該指令中所含操作數(shù)的內(nèi)容直接寫入PC中。 對(duì)于“相對(duì)轉(zhuǎn)移”,當(dāng)條件滿足時(shí),計(jì)算機(jī)將把該指令中所含操作數(shù)的內(nèi)容與PC中的內(nèi)容相加后,把結(jié)果寫入PC中。,返
20、回首頁(yè),07:50:29,例3:某機(jī)器字長(zhǎng)16位,主存按字節(jié)編址,轉(zhuǎn)移指令采用相對(duì)尋址,由兩個(gè)字節(jié)組成,第一字節(jié)為操作碼字段,第二字節(jié)為相對(duì)位移量字段。假定取指令時(shí),每取一個(gè)字節(jié)PC自動(dòng)加1。若某轉(zhuǎn)移指令所在主存地址為2000H,相對(duì)位移量字段的內(nèi)容為06H,則該轉(zhuǎn)移指令成功轉(zhuǎn)移后的目標(biāo)地址是 。 A2006H B2007H C2008H D2009H,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,常見(jiàn)的條件轉(zhuǎn)移指令有: 等于零轉(zhuǎn)移BEQ 不等于零轉(zhuǎn)移BNEQ 小于轉(zhuǎn)移BLS 大于轉(zhuǎn)移BGT 小于等于轉(zhuǎn)移/不大于轉(zhuǎn)移BLEQ 大于等于轉(zhuǎn)移/不小于轉(zhuǎn)移BGEQ 不帶符號(hào)小于轉(zhuǎn)移BL
21、SU 不帶符號(hào)大于轉(zhuǎn)移BGTU 不帶符號(hào)小于等于轉(zhuǎn)移/不帶符號(hào)不大于轉(zhuǎn)移BLEQU 不帶符號(hào)大于等于轉(zhuǎn)移/不帶符號(hào)不小于轉(zhuǎn)移BGEQU,沒(méi)有進(jìn)位轉(zhuǎn)移BCC 有進(jìn)位轉(zhuǎn)移BCS 沒(méi)有溢出轉(zhuǎn)移BVC 有溢出轉(zhuǎn)移BVS,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(3)控制轉(zhuǎn)移指令,子程序調(diào)用CALL/返回指令RET,在程序中,有一些具有特定功能的程序段會(huì)被反復(fù)使用。為了提高程序的可讀性、可重用性和可維護(hù)性,人們將這樣的程序段獨(dú)立出來(lái),將其定義成一個(gè)子程序。,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,調(diào)用子程序的指令格式: CALL Subprogram_Name 功
22、能是,首先把當(dāng)前程序的斷點(diǎn)保存到系統(tǒng)堆棧中,把子程序的入口地址寫入PC,從而將程序控制轉(zhuǎn)移至被調(diào)子程序。 RET指令的功能是把保存在堆棧中的程序斷點(diǎn)彈回到PC之中。,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(4)輸入/輸出指令,為了完成主機(jī)與外設(shè)之間信息交換的各種操作而設(shè)置,包括: 啟動(dòng)輸入/輸出設(shè)備、停止輸入/輸出設(shè)備、測(cè)試輸入/輸出設(shè)備及數(shù)據(jù)的輸入或輸出等指令。 例如,Intel 80 x86中的輸入指令為IN指令,輸出指令為OUT指令。,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,(5)處理器控制及調(diào)試指令,包括各種設(shè)置/清除標(biāo)志位(如陷阱標(biāo)志、中斷允
23、許標(biāo)志、處理器工作狀態(tài)標(biāo)志位)指令、特權(quán)指令、進(jìn)程同步指令、調(diào)試指令、停機(jī)指令等。 調(diào)試指令用于硬件或軟件的調(diào)試。硬件調(diào)試指令包括鑰匙位置、開關(guān)狀態(tài)的讀取指令,重要寄存器和主存儲(chǔ)器單元內(nèi)容的顯示等。軟件調(diào)試指令包括斷點(diǎn)的設(shè)置及跟蹤指令,自陷阱指令等。,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,對(duì)于面向多用戶系統(tǒng)的處理器,為了保證信息安全,處理器的工作狀態(tài)被分為核心態(tài)(Kernel mode /System mode)和用戶態(tài)(User mode)。 僅能在核心態(tài)(也叫管理態(tài)/管態(tài))下運(yùn)行的指令稱為特權(quán)指令(Privileged instruction)。用戶態(tài)(也叫目態(tài))下的
24、程序要想執(zhí)行管態(tài)下的功能(由操作系統(tǒng)實(shí)現(xiàn)并提供用戶使用)必須通過(guò)執(zhí)行“訪管指令”來(lái)實(shí)現(xiàn)。,返回首頁(yè),3. 1. 4 指令的基本功能,07:50:29,此外,還有:空操作指令NOP和等待指令WAIT,訪管指令是一條可以在目態(tài)下執(zhí)行的指令,用戶程序中凡是要調(diào)用操作系統(tǒng)功能的地方就安排一條訪管指令。當(dāng)執(zhí)行到訪管指令時(shí),處理器就自愿地產(chǎn)生一個(gè)中斷事件(訪管中斷),暫停用戶程序的執(zhí)行,陷入管態(tài),讓操作系統(tǒng)為用戶服務(wù)。,返回首頁(yè),舉 例,例:一條雙字長(zhǎng)直接尋址的子程序調(diào)用指令,其第一個(gè)字為操作碼和尋址特征,第二個(gè)字為地址碼5000H。假設(shè)PC當(dāng)前值為2000H , SP的內(nèi)容為0100H ,棧頂內(nèi)容為27
25、46 H,存儲(chǔ)器按字節(jié)編址,而且進(jìn)棧操作是先執(zhí)行(SP)-SP,后存入數(shù)據(jù)。試可答下列幾種情況下,PC,SP及棧頂內(nèi)容各為多少? (1) CALL指令被讀取前。 (2) CALL指令被執(zhí)行后。 (3)子程序返回后。,返回首頁(yè),解: (1) CALL指令被讀取前, PC=2000H,SP=0100H,棧頂內(nèi)容為2746H (2) CALL指令被讀取后,PC=2004 CALL指令被執(zhí)行后,PC=5000H SP=00FEH 棧頂內(nèi)容為2004H (3)子程序返回后 PC =2004H, SP=0100H, 棧頂內(nèi)容為2746H,返回首頁(yè),3. 1. 5 指令的格式,07:50:29,涉及指令的操
26、作碼長(zhǎng)度、指令“地址制”及采用的尋址方式、指令長(zhǎng)度等問(wèn)題。,返回首頁(yè),3. 1. 5 指令的格式,07:50:29,(1)指令操作碼的長(zhǎng)度有定長(zhǎng)和不定長(zhǎng)兩種選擇 選擇定長(zhǎng)的操作碼可以簡(jiǎn)化指令譯碼器的設(shè)計(jì)與實(shí)現(xiàn); 選擇不定長(zhǎng)操作碼(也稱擴(kuò)展操作碼)可使常用指令擁有較短的操作碼而不常用指令擁有較長(zhǎng)的操作碼(即哈夫曼壓縮編碼) ,從而壓縮程序所占的存儲(chǔ)空間。,返回首頁(yè),3. 1. 5 指令的格式,07:50:29,(2)在一條指令中出現(xiàn)幾個(gè)操作數(shù)地址,這是指令的“地址制”所要解決的問(wèn)題。一般情況下,指令中地址的個(gè)數(shù),可以取4,3,2,1,0個(gè)。,返回首頁(yè),(1) 四地址,(2) 三地址,8 6 6
27、6 6,A1 第一操作數(shù)地址,A2 第二操作數(shù)地址,A3 結(jié)果的地址,A4 下一條指令地址,若 PC 代替 A4,8 8 8 8,4 次訪存,4 次訪存,尋址范圍 26 = 64,尋址范圍 28 = 256,若 A3 用 A1 或 A2 代替,(3) 二地址,8 12 12,或,4 次訪存,若ACC 代替 A1(或A2),若結(jié)果存于 ACC,(4) 一地址,(5) 零地址,8 24,無(wú)地址碼,2 次訪存,尋址范圍 212 = 4 K,尋址范圍 224 = 16 M,3次訪存,3. 1. 5 指令的格式,07:50:29,“地址制”設(shè)計(jì)或改進(jìn)的目的是為了壓縮指令長(zhǎng)度,縮短指令的執(zhí)行時(shí)間。 同一條
28、指令中不同操作數(shù)可采用不同的尋址方式 例如,一條指令中的操作數(shù)可以都存放在寄存器里,也可以把一個(gè)操作數(shù)存放在寄存器里,而另一個(gè)操作數(shù)存放在主存里。,返回首頁(yè),3. 1. 5 指令的格式,07:50:29,指令長(zhǎng)度可以是固定或變化的。固定長(zhǎng)度的指令便于指令的存取和譯碼,但會(huì)限制操作數(shù)個(gè)數(shù)的增加和復(fù)雜尋址方式的使用;而變化長(zhǎng)度的指令的特點(diǎn)正好相反。 例如,IBM S/ 370指令采用定長(zhǎng)的8位操作碼,有單地址、兩地址和三地址三種地址制,不同的操作數(shù)可以采用不同的尋址方式,指令字長(zhǎng)有16位、32位和48位三種。,返回首頁(yè),例1 某機(jī)16位字長(zhǎng)指令格式如下,試問(wèn): 5 3 8 A為形式地址,補(bǔ)碼表示(
29、包括一位符號(hào)位)。M為尋址模式。 1、該指令格式能定義多少種不同的操作。 2、立即尋址操作數(shù)的范圍是多少? 3、寫出各種尋址方式計(jì)算有效地址EA的表達(dá)式。 4、直接尋址(此時(shí)A視為無(wú)符號(hào)數(shù))、間接尋址能尋址的 主存地址空間為多少?(主存容量為64K),1、32,2、256(-128127),4、256,64K,指令格式設(shè)計(jì)舉例,返回首頁(yè),指令格式舉例,一、設(shè)計(jì)指令格式時(shí)應(yīng)考慮的各種因素,1. 指令系統(tǒng)的 兼容性,(向上兼容),2. 其他因素,操作類型,數(shù)據(jù)類型,指令格式,包括指令個(gè)數(shù)及操作的難易程度,指令字長(zhǎng)、操作碼位數(shù),地址碼位數(shù)、地址個(gè)數(shù),尋址方式、操作碼長(zhǎng)度,返回首頁(yè),尋址方式,寄存器個(gè)
30、數(shù),第3章 處理器,3. 1 處理器的指令集,07:50:29,3. 1. 1 概述 3. 1. 2 指令的操作碼與操作數(shù) 3. 1. 3 尋址方式 3. 1. 4 指令的基本功能 3. 1. 5 指令的格式 3. 1. 6 面向多媒體處理的增強(qiáng)指令,返回首頁(yè),指令格式設(shè)計(jì)舉例,例2 某機(jī)器字長(zhǎng)16位,存儲(chǔ)器直接尋址空間為128字,變址時(shí)的位移量為-6463,16個(gè)通用寄存器均可作為變址寄存器。設(shè)計(jì)一套指令系統(tǒng)格式,滿足下列尋址類型的要求。 (1)零地址指令。 (2)直接尋址的一地址指令。 (3)寄存器尋址的二地址指令。 (4)變址尋址的一地址指令。 (5)直接尋址的二地址指令。 若安排寄存器
31、尋址的一地址指令?,返回首頁(yè),返回首頁(yè),指令設(shè)計(jì)舉例,例3某模型機(jī)共有64種操作,操作碼位數(shù)固定,且具有以下特點(diǎn)。 (1)采用一地址或二地址格式。 (2)有寄存器尋址、直接尋址和相對(duì)尋址(位移量為-128+127)三種尋址方式。 (3)有16個(gè)通用寄存器,算術(shù)運(yùn)算和邏輯運(yùn)算的操作數(shù)均在寄存器中,結(jié)果也在寄存器中。 (4)取數(shù)/存數(shù)指令在通用寄存器和存儲(chǔ)器之間傳送數(shù)據(jù) (5)存儲(chǔ)器容量為1 MR,按字節(jié)編址。,返回首頁(yè),3. 2. 1 處理器的基本功能和基本組成,1處理器概述 外觀 觸點(diǎn)陣列LGA封裝,07:50:29,返回首頁(yè),3. 2. 1 處理器的基本功能和基本組成,信息傳輸 片內(nèi)總線:處
32、理器內(nèi)部各個(gè)單元之間信號(hào)傳輸?shù)木€路。片內(nèi)控制總線和片內(nèi)數(shù)據(jù)總線 片外總線:用于實(shí)現(xiàn)處理器與主存儲(chǔ)器和輸入/輸出設(shè)備之間信號(hào)傳輸?shù)木€路,07:50:29,返回首頁(yè),3. 2. 1 處理器的基本功能和基本組成,外部引腳 電源引腳(Vcc)和接地引腳(GND) 數(shù)據(jù)總線引腳 D15D0 地址總線引腳 A31A0 控制總線引腳 時(shí)鐘CLK、復(fù)位RESET、總線請(qǐng)求HRQ、總線允許HLDA、中斷請(qǐng)求INTR、中斷響應(yīng)INTA、讀RD、寫WR,07:50:29,返回首頁(yè),3. 2. 1 處理器的基本功能和基本組成,2處理器的基本功能 取指令 分析指令 取數(shù)據(jù) 處理數(shù)據(jù) 寫回結(jié)果,07:50:29,返回首頁(yè)
33、,3. 2. 1 處理器的基本功能和基本組成,取指令 處理器根據(jù)PC給出的主存地址訪問(wèn)主存儲(chǔ)器,取出一個(gè)標(biāo)準(zhǔn)字長(zhǎng)的指令,將其送入處理器內(nèi)部專門存放當(dāng)前指令的指令寄存器 IR PC加1 分析指令 將IR中的操作碼部分取出送入指令譯碼器(Decoder)進(jìn)行譯碼。根據(jù)譯碼結(jié)果判斷出指令的功能、操作數(shù)的尋址方式以及操作數(shù)的數(shù)據(jù)類型,形成源操作數(shù)或目的操作數(shù)的物理地址。,07:50:29,返回首頁(yè),3. 2. 1 處理器的基本功能和基本組成,取數(shù)據(jù) 根據(jù)源操作數(shù)的物理地址訪問(wèn)主存,取出源操作數(shù)。源操作數(shù)將被送入處理器內(nèi)部的數(shù)據(jù)寄存器 處理數(shù)據(jù) 處理器將源操作數(shù)送入運(yùn)算器,并根據(jù)指令譯碼結(jié)果啟動(dòng)運(yùn)算器的
34、相應(yīng)操作對(duì)數(shù)據(jù)進(jìn)行處理。處理結(jié)果存回通用數(shù)據(jù)寄存器。 寫回結(jié)果 如果指令要求將結(jié)果寫回主存,那么處理器將根據(jù)目的操作數(shù)的地址,將目的操作數(shù)寫入主存,07:50:29,返回首頁(yè),3. 2. 1 處理器的基本功能和基本組成,3處理器的基本組成 算術(shù)邏輯單元ALU,07:50:29,返回首頁(yè),3. 2. 1 處理器的基本功能和基本組成,控制單元CU 通過(guò)對(duì)指令的分析(譯碼),按照一定的時(shí)序,發(fā)出控制信號(hào),使CPU在控制信號(hào)的驅(qū)動(dòng)下,完成相應(yīng)指令的功能 寄存器 用戶可見(jiàn)的寄存器:通用數(shù)據(jù)寄存器、基址寄存器、變址寄存器、FR、PC 用戶透明的寄存器: MAR和MDR,07:50:29,返回首頁(yè),3. 2
35、. 1 處理器的基本功能和基本組成,中斷 中斷:指計(jì)算機(jī)在執(zhí)行程序的過(guò)程中,當(dāng)出現(xiàn)異常情況或特殊請(qǐng)求時(shí),計(jì)算機(jī)會(huì)在適當(dāng)時(shí)機(jī)暫?,F(xiàn)行程序的運(yùn)行,轉(zhuǎn)向執(zhí)行處理這些異常情況或特殊請(qǐng)求的程序,處理結(jié)束后再返回到現(xiàn)行程序的間斷處繼續(xù)執(zhí)行 能夠發(fā)出中斷請(qǐng)求的部件或事件,稱為“中斷源”。 為了區(qū)分不同請(qǐng)求信號(hào),不同的中斷源被賦予了一個(gè)不同的“中斷類型號(hào)” 中斷相應(yīng)時(shí)間:指令周期結(jié)束 處理器信號(hào):INTR和INTA,07:50:29,返回首頁(yè),07:50:29,3. 2. 1 處理器的基本功能和基本組成,返回首頁(yè),07:50:29,3. 2. 1 處理器的基本功能和基本組成,返回首頁(yè),07:50:29,3.
36、2. 2 計(jì)算機(jī)的工作過(guò)程,指令周期:處理器每取出并執(zhí)行一條指令所需的全部時(shí)間 “取指”將指令從主存取入到處理器中 “執(zhí)行”指令譯碼并完成其指定的操作,返回首頁(yè),07:50:29,有的指令采用間接尋址。為了取到操作數(shù),在取指周期之后還有一個(gè)訪問(wèn)主存,讀取操作數(shù)地址的周期,這個(gè)周期就是間址周期。,3. 2. 2 計(jì)算機(jī)的工作過(guò)程,返回首頁(yè),3. 2. 2 計(jì)算機(jī)的工作過(guò)程,不同指令所完成的功能不同,它們的指令周期也不盡相同 無(wú)條件轉(zhuǎn)移指令“JUMP TARGET” 空操作指令NOP 加法指令“ADD X” 乘/除法指令,07:50:29,返回首頁(yè),3. 2. 2 計(jì)算機(jī)的工作過(guò)程,機(jī)器周期是所有
37、指令執(zhí)行過(guò)程中的一個(gè)基準(zhǔn)時(shí)間。 通常選取處理器訪問(wèn)一次主存的時(shí)間(也稱主存周期)作為機(jī)器周期 一個(gè)機(jī)器周期內(nèi)又包含了若干時(shí)鐘周期(也稱節(jié)拍),07:50:29,返回首頁(yè),07:50:29,為了實(shí)現(xiàn)各種操作的時(shí)序控制,在處理器內(nèi)部專門設(shè)置有時(shí)鐘部件。 指令周期、機(jī)器周期和節(jié)拍的關(guān)系如下圖所示。,3. 2. 2 計(jì)算機(jī)的工作過(guò)程,返回首頁(yè),07:50:29,下面以計(jì)算 X + Y 為例來(lái)編制控制計(jì)算機(jī)/處理器工作的程序。 (1)從內(nèi)存單元X中取數(shù)據(jù)送入累加器ACC; (2) ACC加上內(nèi)存單元Y中的數(shù)據(jù), 結(jié)果存回ACC中; (3) ACC的值存入內(nèi)存單元Z中; (4)停機(jī)。,3. 2. 2 計(jì)算
38、機(jī)的工作過(guò)程,返回首頁(yè),07:50:29,此程序在某模型機(jī)上運(yùn)行,用到的指令如下:,3. 2. 2 計(jì)算機(jī)的工作過(guò)程,返回首頁(yè),07:50:29,程序存入主存的結(jié)果如下,其中分配給變量X,Y和Z的內(nèi)存單元地址是1100B、1101B和1110B。,返回首頁(yè),07:50:29,執(zhí)行程序時(shí),管理程序先將程序第一條指令的地址(1000B)送入PC,然后啟動(dòng)執(zhí)行。,返回首頁(yè),07:50:29,3. 2. 2 計(jì)算機(jī)的工作過(guò)程,返回首頁(yè),07:50:29,返回首頁(yè),07:50:29,返回首頁(yè),第3章 處理器,3. 2 處理器的組成與工作過(guò)程,07:50:29,3. 2. 1 處理器的基本功能和基本組成
39、3. 2. 2 計(jì)算機(jī)的工作過(guò)程 3. 2. 3 采用流水線技術(shù)的處理器,3. 3 從CISC到RISC,返回首頁(yè),3. 3. 1 RISC產(chǎn)生的背景,上世紀(jì)70年代 計(jì)算機(jī)的指令系統(tǒng)變得越來(lái)越復(fù)雜 VAX-11 擁有 330條指令,指令長(zhǎng)度從16位到 456位長(zhǎng)不等,尋址方式有16種 CPU的設(shè)計(jì)變得十分復(fù)雜,設(shè)計(jì)周期延長(zhǎng),設(shè)計(jì)成本倍增,07:50:29,返回首頁(yè),某計(jì)算機(jī)的指令使用頻率,2021/3/26,返回首頁(yè),3. 3. 1 RISC產(chǎn)生的背景,20 80 規(guī)律 在典型程序的運(yùn)行中,80% 的時(shí)間執(zhí)行的只是占指令系統(tǒng) 20% 的少數(shù)常用指令。 “軟硬件等價(jià)性原理” 復(fù)雜指令的功能可以
40、由基于簡(jiǎn)單指令的子程序來(lái)完成,07:50:29,返回首頁(yè),3. 3. 1 RISC產(chǎn)生的背景,1975年,IBM 801 John Cocke ,120條簡(jiǎn)單指令的計(jì)算機(jī) 1981年, RISC I 加州大學(xué)伯克利分校的David Patterson ,31條指令 RISC:Reduced Instruction Set Computer,07:50:29,返回首頁(yè),07:50:29,IBM的John Cocke -“圖靈獎(jiǎng)”獲得者,返回首頁(yè),3. 3. 1 RISC產(chǎn)生的背景,RISC:精簡(jiǎn)指令集計(jì)算機(jī) Reduced Instruction Set Computer 采用簡(jiǎn)單的指令格式、尋
41、址方式的計(jì)算機(jī) CISC:復(fù)雜指令集計(jì)算機(jī) Complex Instruction Set Computer 具有復(fù)雜的指令格式、尋址方式的計(jì)算機(jī),07:50:29,返回首頁(yè),RISC 的主要特征 選用使用頻率較高的一些簡(jiǎn)單指令,復(fù)雜指令的功能由簡(jiǎn)單指令來(lái)組合 指令 固定長(zhǎng)度 只有 LOAD / STORE 指令訪存 流水技術(shù),一個(gè)時(shí)鐘周期完成一條指令 組合邏輯 實(shí)現(xiàn)控制器 多個(gè) 通用 寄存器 采用 優(yōu)化 的 編譯 程序,07:50:29,返回首頁(yè),RISC和CISC 的比較,1. RISC更能 充分利用 芯片,2. RISC 更能 提高計(jì)算機(jī)運(yùn)算速度,指令數(shù)、指令格式、尋址方式少, 通用 寄
42、存器多,采用 組合邏輯 , 便于實(shí)現(xiàn) 指令流水,3. RISC 便于設(shè)計(jì),可 降低成本,提高 可靠性,4. RISC 有利于編譯程序代碼優(yōu)化,5. RISC 不易 實(shí)現(xiàn) 指令系統(tǒng)兼容,返回首頁(yè),指 令 流 水,一、系統(tǒng)的并行性,時(shí)間上互相重疊,2. 并行性的等級(jí),指令級(jí)(指令之間),過(guò)程級(jí)(程序、進(jìn)程),兩個(gè)或兩個(gè)以上事件在 同一時(shí)刻 發(fā)生,兩個(gè)或兩個(gè)以上事件在 同一時(shí)間段 發(fā)生,并行,1. 并行的概念,粗粒度,軟件實(shí)現(xiàn),細(xì)粒度,硬件實(shí)現(xiàn),返回首頁(yè),二、指令流水原理,2. 指令的二級(jí)流水,1. 指令的串行執(zhí)行,取指令 取指令部件 完成,總有一個(gè)部件 空閑,指令預(yù)取,若 取指 和 執(zhí)行 階段時(shí)間
43、上 完全重疊,指令周期 減半 速度提高 1 倍,執(zhí)行指令 執(zhí)行指令部件 完成,返回首頁(yè),必須等 上條 指令執(zhí)行結(jié)束,才能確定 下條 指令的地址 造成時(shí)間損失,3. 影響指令流水效率加倍的因素,(1) 執(zhí)行時(shí)間 取指時(shí)間,(2) 條件轉(zhuǎn)移指令 對(duì)指令流水的影響,解決辦法 ?,猜測(cè)法,返回首頁(yè),4. 指令的六級(jí)流水,六級(jí)流水,14 個(gè)時(shí)間單位,串行執(zhí)行,6 9 54 時(shí)間單位,完成 一條指令,6 個(gè)時(shí)間單位,返回首頁(yè),三、影響指令流水性能的因素,1. 訪存沖突,解決辦法, 指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開, 指令預(yù)取技術(shù) (適用于訪存周期短的情況),返回首頁(yè),2. 相關(guān)問(wèn)題,程序的相近指令之間出現(xiàn)某種關(guān)
44、聯(lián) 使指令流水出現(xiàn)停頓 影響流水線效率,(1) 控制相關(guān),返回首頁(yè),(2) 數(shù)據(jù)相關(guān),幾條相近的指令間,共用 同一存儲(chǔ)單元 或 同一寄存器 時(shí), 會(huì)出現(xiàn) 數(shù)據(jù)相關(guān),返回首頁(yè),四、流水線性能,1. 吞吐率,單位時(shí)間內(nèi) 流水線所完成指令 或 輸出結(jié)果 的 數(shù)量,最大吞吐率,實(shí)際吞吐率,連續(xù)處理 n 條指令的吞吐率為,返回首頁(yè),2. 加速比 Sp,m 段的 流水線的速度 與等功能的 非流水線的速度 之比,返回首頁(yè),由于流水線有 建立時(shí)間 和 排空時(shí)間 因此各功能段的 設(shè)備不可能 一直 處于 工作 狀態(tài),流水線中各功能段的 利用率,3. 效率,返回首頁(yè),3. 效率,流水線中各功能段的 利用率,返回首頁(yè)
45、,五、流水線的多發(fā)技術(shù),1. 超標(biāo)量技術(shù),每個(gè)時(shí)鐘周期內(nèi)可 并發(fā)多條獨(dú)立指令,不能調(diào)整 指令的 執(zhí)行順序,配置多個(gè)功能部件,通過(guò)編譯優(yōu)化技術(shù),把可并行執(zhí)行的指令搭配起來(lái),返回首頁(yè),2. 超流水技術(shù),在 一個(gè)時(shí)鐘周期 內(nèi) 再分段 ( 3 段),不能調(diào)整 指令的 執(zhí)行順序,在一個(gè)時(shí)鐘周期內(nèi) 一個(gè)功能部件使用多次( 3 次),靠編譯程序解決優(yōu)化問(wèn)題,流水線速度是原來(lái)速度的 3 倍,返回首頁(yè),3. 超長(zhǎng)指令字,采用 多個(gè)處理部件,返回首頁(yè),六、流水線結(jié)構(gòu),1. 指令流水線結(jié)構(gòu),完成一條指令分 7 段, 每段需一個(gè)時(shí)鐘周期,若 流水線不出現(xiàn)斷流,1 個(gè)時(shí)鐘周期出 1 結(jié)果,不采用流水技術(shù),7 個(gè)時(shí)鐘周期
46、出 1 結(jié)果,理想情況下,7 級(jí)流水 的速度是不采用流水技術(shù)的 7 倍,返回首頁(yè),2. 運(yùn)算流水線,完成 浮點(diǎn)加減 運(yùn)算 可分 對(duì)階、尾數(shù)求和、規(guī)格化 三段,分段原則 每段 操作時(shí)間 盡量 一致,返回首頁(yè),3.4 80 x86系列微處理器,8086是第一款16位微處理器,問(wèn)世之初,市場(chǎng)上缺乏與之配套的外圍芯片,用8086來(lái)構(gòu)建微型計(jì)算機(jī)成本很高。為此,Intel公司推出與8086兼容的準(zhǔn)16位微處理器8088。,返回首頁(yè),8088的通用寄存器組、ALU、指令系統(tǒng)都是按照16位設(shè)計(jì)的,與8086完全相同,只不過(guò)8088的數(shù)據(jù)引腳是8位的。這樣就可以兼容當(dāng)時(shí)已有的一整套的外圍芯片。 8086/80
47、88微處理器的浮點(diǎn)運(yùn)算能力和I/O能力相對(duì)較弱,為了滿足用戶對(duì)高性能計(jì)算的要求,Intel公司還推出了兩款協(xié)處理器數(shù)值運(yùn)算協(xié)處理器8087 和 I/O協(xié)處理器8089。 為此,只配置一個(gè)8086/8088微處理器的工作模式被定義為最小模式。在這種模式中,所有的總線控制信號(hào)都直接由8086或8088發(fā)出。相對(duì)而言,包含協(xié)處理器的微處理器工作模式被定義為最大模式。,返回首頁(yè),通用寄存器組,AX,BX,CX,DX,外部總線,內(nèi)部總線,地址加法器,8086CPU結(jié)構(gòu)圖,返回首頁(yè),一、總線接口部件(BIU) 1.功能:負(fù)責(zé)與存儲(chǔ)器、IO接口之間傳送信息。 2.基本組成: (1)四個(gè)段地址寄存器:主要用于
48、存放段基址 (2)16位指令指針寄存器IP (3) 20位的地址加法器。 (4)六字節(jié)的指令隊(duì)列緩沖器。 二、執(zhí)行部件(EU) 1.功能:負(fù)責(zé)指令的執(zhí)行 (1)從指令隊(duì)列中取出指令。 (2)對(duì)指令進(jìn)行譯碼,發(fā)出相應(yīng)的控制信號(hào)。 (3)接收由總線接口送來(lái)的數(shù)據(jù)或發(fā)送數(shù)據(jù)至接口 (4)進(jìn)行算術(shù)邏輯運(yùn)算,返回首頁(yè),2.基本組成 (1)ALU:進(jìn)行算術(shù)和邏輯運(yùn)算;計(jì)算存儲(chǔ)單元16位偏移地址。 (2)四個(gè)通用寄存器AX、BX、CX、DX。 四個(gè)通用寄存器都是16位,可作兩個(gè)8位來(lái)使用。 (3)四個(gè)專用寄存器 地址指針寄存器 變址寄存器 (4)數(shù)據(jù)暫存寄存器 協(xié)助ALU完成運(yùn)算,暫存參加運(yùn)算的數(shù)據(jù)。 (5
49、)執(zhí)行部件的控制電路 從總線接口的指令隊(duì)列取出指令操作碼,通過(guò)譯碼電路分析,發(fā)出相應(yīng)的控制命令,控制ALU數(shù)據(jù)流向。 (6)標(biāo)志寄存器,返回首頁(yè),16位寄存器,其中有7位未用。,D15,D0,OF DF IF TF SF ZF AF PF CF,進(jìn)借位標(biāo)志,奇偶標(biāo)志,半進(jìn)借位標(biāo)志,零標(biāo)志,符號(hào)標(biāo)志,跟蹤標(biāo)志,中斷允許,方向標(biāo)志,溢出標(biāo)志,1-有進(jìn)、借位 0-無(wú)進(jìn)、借位,1-低8位有偶數(shù)個(gè)1 0-低8位有奇數(shù)個(gè)1,1-低4位向高4位有進(jìn)、借位 0-低4位向高4位無(wú)進(jìn)、借位,1-結(jié)果為0 0-結(jié)果不為0,三、8086 的 分 段 存 儲(chǔ) 結(jié) 構(gòu),存儲(chǔ)器為什么要分段呢? 16位微處理器,常規(guī)上管理2
50、16 = 64KB的存儲(chǔ)空間 這樣的存儲(chǔ)空間滿足不了應(yīng)用的要求。 用什么方法來(lái)擴(kuò)大呢? 將正常管理的64KB存儲(chǔ)空間定義為一個(gè)段 讓微處理器能夠管理多個(gè)這樣的段 通過(guò)分段存儲(chǔ)結(jié)構(gòu),8086/8088能夠管理1MB的存儲(chǔ)空間。 存儲(chǔ)器分段后如何來(lái)管理呢? 每個(gè)段的起始地址稱為:段基址或段地址 每個(gè)段內(nèi)的地址稱為:段內(nèi)偏移地址 一個(gè)物理存儲(chǔ)單元就可以通過(guò)“段地址:偏移地址”來(lái)唯一確定了。,返回首頁(yè),依照用途的不同,可分為如下段,存儲(chǔ)程序(指令)代碼。其段基址存放于CS寄存器,段內(nèi)偏移地址存放于IP寄存器,存儲(chǔ)程序定義的變量。段基址存放于DS寄存器,段內(nèi)偏移地址存放于SI、DI或BX寄存器,管理系統(tǒng)
51、堆棧。段基址存放于SS寄存器,段內(nèi)偏移地址存放于SP或BP寄存器,存儲(chǔ)經(jīng)過(guò)處理的中間變量。段基址存放于ES寄存器,段內(nèi)偏移地址存放于SI、DI或BX寄存器,返回首頁(yè),AX,BX,CX,DX,8086/8088 的寄存器組,作為累加器用,在加法運(yùn)算中參與運(yùn)算,結(jié)果存于累加器中; 所有的I/O指令都隱含地使用AX與外部設(shè)備傳送信息。,作為通用寄存器使用 在采用基址尋址方式時(shí),用作基址寄存器,作為通用寄存器使用; 常用來(lái)保存計(jì)數(shù)值,如在移位指令、循環(huán)指令和串處理指令中用作隱含的計(jì)數(shù)器。,作為通用寄存器使用; 在一些指令中,通常用它來(lái)存放數(shù)據(jù),所以又稱為數(shù)據(jù)寄存器; 在做雙字長(zhǎng)運(yùn)算時(shí),將DX和AX組合
52、在一起存放雙字長(zhǎng)數(shù),用DX存放高位字。,返回首頁(yè),由段基址和相對(duì)于該段的偏移地址共同描述的地址 邏輯地址,例如: 5000H:2000H,20根地址線所表示的地址 物理地址,返回首頁(yè),0 0 0 0,段 地 址,如何根據(jù)16位的段地址和16位的段內(nèi)偏移地址來(lái)計(jì)算20位的物理地址呢?,19 4 3 0,段地址左移四位,20 位 的 物 理 地 址,8086/8088 的分段存儲(chǔ)結(jié)構(gòu),2021/3/26,返回首頁(yè),物理地址的計(jì)算方法,段地址左移四位,再加上偏移地址,就得到20位的物理地址。,返回首頁(yè),四、8086的引腳功能,0102030405060708091011121314151617181
53、920,4039383736353433323130292827262524232221,GND,AD14,AD13,AD12,AD11,AD10,AD9,AD8,AD7,AD6,AD5,AD4,AD3,AD2,AD1,AD0,NMI,INTR,CLK,GND,VCC(5V),AD15,A16/S3,A17/S4,A18/S5,A19/S6,/BHE/S7,MN/MX,/RD,HOLD(/RQ/GT0),HLDA(/RQ/GT1),/WR(/LOCK),M/IO(/S2),DT/R(/S1),/DEN(/S0),ALE(QS0),/INTA(QS1),/TEST,READY,RESET,8086,8086CPU采用雙列直插式的封裝形式,具有40條引腳。它采用分時(shí)復(fù)用的地址/數(shù)據(jù)總線,所以有一部分引腳具有雙重功能,即在不同時(shí)鐘周期內(nèi),引腳的作用不同。(括號(hào)中為最大模式下的名稱),數(shù)據(jù)總線 地址總線 狀態(tài)總線 控制總線 電
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)業(yè)產(chǎn)業(yè)園可行性分析報(bào)告
- 建筑給排水設(shè)計(jì)規(guī)范gb50015
- 商業(yè)街區(qū)商業(yè)規(guī)劃手冊(cè)
- 智能生產(chǎn)線設(shè)備維護(hù)指南
- 三農(nóng)文化傳播策略方案
- 重慶高新技術(shù)產(chǎn)業(yè)
- 開題可行性分析報(bào)告模板
- 醫(yī)療設(shè)備操作與使用說(shuō)明手冊(cè)
- 農(nóng)業(yè)產(chǎn)業(yè)鏈協(xié)同發(fā)展方案
- 衛(wèi)星導(dǎo)航定位系統(tǒng)技術(shù)應(yīng)用文檔
- 四川省達(dá)州市2024年中考化學(xué)真題(含答案)
- 航空與航天學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- GB/T 5510-2024糧油檢驗(yàn)谷物及制品脂肪酸值的測(cè)定
- 醫(yī)院護(hù)理人員末位淘汰管理制度
- 英語(yǔ)雅思8000詞匯表
- 護(hù)士2024思想?yún)R報(bào)5篇
- 電力系統(tǒng)應(yīng)急物資儲(chǔ)備手冊(cè)
- 中醫(yī)館痔瘡治療方案
- 電梯安全檢測(cè)招標(biāo)文件
- 配送異物控制方案
- 雙重血漿置換
評(píng)論
0/150
提交評(píng)論