《計算機組成原理教程》全套教學(xué)課件_第1頁
《計算機組成原理教程》全套教學(xué)課件_第2頁
《計算機組成原理教程》全套教學(xué)課件_第3頁
《計算機組成原理教程》全套教學(xué)課件_第4頁
《計算機組成原理教程》全套教學(xué)課件_第5頁
已閱讀5頁,還剩345頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章計算機系統(tǒng)概論1.7計算機的發(fā)展簡史1.1計算機的基本結(jié)構(gòu)和工作原理1.2計算機硬件的五個功能部件及其功能1.3計算機系統(tǒng)的基本組成及其層次結(jié)構(gòu)1.4計算機系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)之間的關(guān)系1.5計算機系統(tǒng)特性1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介全套可編輯PPT課件

世界上第一臺真正的全自動電子數(shù)字式計算機是1946年在美國的賓夕法尼亞大學(xué)研制成功的

ENIAC(ElectronicNumerica

lntegrator

andComputer)。

1.7計算機的發(fā)展簡史

這臺計算機共用了18000多個電子管,占地170m2,總重量為30噸,耗電140kw,每秒能做5000次加減運算。與ENIAC計算機研制的同時,馮?諾依曼與莫爾小組研制EDVAC(Electronic十進制預(yù)算用手工搬運動開關(guān)和拔插電纜來編程DiscreteVariableAutomaticComputer)計算機,它采用了存儲程序方案。1.7計算機的發(fā)展簡史世界上第一臺電子計算機ENIAC(1946)1955年退役現(xiàn)代計算機的驅(qū)動力:人們的需求電子技術(shù)的發(fā)展第一代:電子管計算機第二代:晶體管計算機第三代:中、小規(guī)模集成電路計算機第四代:大規(guī)模、超大規(guī)模集成電路計算機第五代:人工智能計算機1.7計算機的發(fā)展簡史硬件技術(shù)對計算機更新?lián)Q代的影響軟件技術(shù)的興起和發(fā)展各種語言機器語言:面向機器匯編語言:面向機器高級語言:面向問題

FORTRAN科學(xué)計算和工程計算PASCAL結(jié)構(gòu)化程序設(shè)計C++面向?qū)ο驤AVA適應(yīng)網(wǎng)絡(luò)環(huán)境軟件技術(shù)的興起和發(fā)展系統(tǒng)軟件語言處理程序匯編程序編譯程序解釋程序操作系統(tǒng)DOSUNIXWINDOWSLINUXKYLINLINUX

服務(wù)性程序裝配調(diào)試診斷拍錯數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫和數(shù)據(jù)庫管理軟件網(wǎng)絡(luò)軟件

計算機的特點1.運算速度快2.運算精度高3.存儲容量大4.具有邏輯判斷功能5.自動化程度高,通用性強1.7計算機的發(fā)展簡史

計算機的應(yīng)用1.科學(xué)計算2.過程檢測與控制(工業(yè)控制和實時控制)3.信息管理4.計算機輔助系統(tǒng)補充:虛擬現(xiàn)實技術(shù)多媒體技術(shù)人工智能技術(shù)計算機有類似人腦的一些超級智能功能:比如自動駕駛技術(shù),IBM的沃森,谷歌大腦,百度大腦等將來會逐步改變世界1.7計算機的發(fā)展簡史1.1計算機基本結(jié)構(gòu)和工作原理馮.諾依曼計算機硬件框圖

特征:1、計算機有五大部件組成2、指令和數(shù)據(jù)以同等地位存于存儲器中,可按地址尋訪3、指令和數(shù)據(jù)用二進制表示4、指令由操作碼行業(yè)地址組成5、存儲程序6、以計算器為中心1.1計算機基本結(jié)構(gòu)和工作原理馮.諾依曼計算機五大模塊功能

算術(shù)運算和邏輯運算把結(jié)果轉(zhuǎn)化成人們熟悉的形式存放數(shù)據(jù)和程序?qū)⑿畔⑥D(zhuǎn)化成機器能夠識別的形式指揮控制程序的運行1.1計算機基本結(jié)構(gòu)和工作原理計算機系統(tǒng)的核心功能是執(zhí)行程序首先必須有能力把要運行的程序和用到的原始數(shù)據(jù)輸入到計算機內(nèi)部并存儲起來,接下來應(yīng)該有辦法逐條執(zhí)行這個程序中的指令以完成數(shù)據(jù)運算并得到運算結(jié)果,最后還要輸出運算結(jié)果供人檢查和使用。1.2計算機硬件的五個功能部件及其功能1.3計算機系統(tǒng)的基本組成及其層次結(jié)構(gòu)軟件硬件指令層1.4.1計算機系統(tǒng)結(jié)構(gòu)的定義計算機系統(tǒng)結(jié)構(gòu)(ComputerArchitecture)也稱為計算機體系結(jié)構(gòu)。這是1964年Amdahl在介紹IBM360系列時提出的,在20世紀(jì)70年代廣泛采用。由于器件技術(shù)迅速發(fā)展,計算機硬件、軟件界面在動態(tài)變化,因此,對計算機系統(tǒng)結(jié)構(gòu)定義的理解也不盡一致。1.4計算機系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)之間的關(guān)系1.4.2計算機組成與實現(xiàn)計算機組成(ComputerOrganization)是指計算機系統(tǒng)結(jié)構(gòu)的邏輯實現(xiàn),包括機器級內(nèi)的數(shù)據(jù)通道和控制信號的組成及邏輯設(shè)計,它著眼于機器級內(nèi)各事件的時序方式與控制機構(gòu)、各部件功能及相互聯(lián)系。計算機組成還應(yīng)包括:數(shù)據(jù)通路寬度;根據(jù)速度、造價、使用狀況設(shè)置專用部件,例如是否設(shè)置乘法器、除法器、浮點運算協(xié)處理器、I/O處理器等;部件共享和并行執(zhí)行;控制器結(jié)構(gòu)(組合邏輯、PLA、微程序)、單處理機或多處理機、指令預(yù)取技術(shù)和預(yù)估、預(yù)判技術(shù)應(yīng)用等組成方式的選擇;可靠性技術(shù);芯片的集成度和速度的選擇。1.4計算機系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)之間的關(guān)系

計算機系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)是三個不同的概念。系統(tǒng)結(jié)構(gòu)是計算機物理系統(tǒng)的抽象和定義;計算機組成是計算機系統(tǒng)結(jié)構(gòu)的邏輯實現(xiàn);計算機實現(xiàn)是計算機組成的物理實現(xiàn)。它們各自有不同的內(nèi)容,但又有緊密的關(guān)系。1.4計算機系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)之間的關(guān)系1.5.1計算機等級

計算機系統(tǒng)按其性能與價格的綜合指標(biāo)通常分為巨型、大型、中型、小型、微型等若干級。但是,隨著技術(shù)進步,各個等級的計算機性能指標(biāo)都在不斷地提高,以致30年前的一臺大型機的性能甚至比不上當(dāng)今一臺微型計算機。可見,用于劃分計算機等級的絕對性能標(biāo)準(zhǔn)是隨著時間變化的。1.5計算機系統(tǒng)特性1.5.2計算機系列

系列機概念指的是先設(shè)計好一種系統(tǒng)結(jié)構(gòu),而后就按這種系統(tǒng)結(jié)構(gòu)設(shè)計它的系統(tǒng)軟件,按器件狀況和硬件技術(shù)研究這種結(jié)構(gòu)的各種實現(xiàn)方法,并按照速度、價格等不同要求,分別提供不同速度、不同配置的各檔機器。1.5計算機系統(tǒng)特性1.5.3計算機的主要性能指標(biāo)

1.機器字長CUP一次能處理數(shù)據(jù)的位數(shù)

與CPU中的寄存器位數(shù)有關(guān)

主頻

核數(shù),每個核支持的線程數(shù)

2.運算速度

CPI執(zhí)行一條指令所需要時鐘周期數(shù)

MIPS每秒執(zhí)行百萬條指令

MFLOPS每秒執(zhí)行多少百萬次浮點預(yù)算1.5計算機系統(tǒng)特性1.5計算機系統(tǒng)特性4.數(shù)據(jù)通路寬度

系統(tǒng)連接地址總線(AB)數(shù)據(jù)總線(DB)定義:傳輸或代碼的一組通訊線。其條數(shù)與處理器字長相等數(shù)據(jù)在CPU與存儲器或I/O接口間的傳送是雙向的定義:是傳送地址信息的一組通訊線,是微處理器用來尋址存儲器單元(或I/O的端口)總線是用來傳送各種控制信號的。輸出控制信號,輸入控制信號控制總線(CB)1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介系統(tǒng)鏈接數(shù)據(jù)總線(DB)地址總線(AB)控制總線(CB)傳輸數(shù)據(jù)或代碼傳送地址傳送控制信號的1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介典型微處理器的內(nèi)部結(jié)構(gòu)1、累加器(A)和算數(shù)邏輯單元(ALU)2、控制器(CU)3、內(nèi)部寄存器陣列(PC)4、內(nèi)部總線和總線緩沖器指令寄存器(IR)指令譯碼器(ID)可編程邏輯陣列(PLA)程序計數(shù)器(PC)地址寄存器(AR)數(shù)據(jù)緩沖寄存器(DR)標(biāo)志寄存器(FLAGS)1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介1、讀操作2、寫操作1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介簡單程序的編制和執(zhí)行指令的執(zhí)行過程取指令分析指令執(zhí)行指令1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介簡單程序的編制和執(zhí)行題目:要求計算機執(zhí)行5CH加2EH,結(jié)果存到20H單元助記符MOVAX,5CHADDAX,2EHMOV[20H],AXHALT;停機二進制碼000111100101110011000110001011100011001000100000011101101.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介存儲單元內(nèi)容

0011111001011100110001100010111000110010001000000111011001001100MOVAX5CHADDAX2EHMOV[20H],AX20HHALT存結(jié)果地址

二進制十六進制

00010000000000200H10000000000001000H10000000000011001H10000000000101002H10000000000111003H10000000001001004H10000000001011005H10000000001101006H10000000001111007H10000000010001008H10000000010011009H1000000001010100AH操作控制器(OC)指令譯碼器(ID)數(shù)據(jù)寄存器(MDR)標(biāo)志寄存器(FR)程序計數(shù)器(PC)寄存器組累加器(ACC)指令寄存器(IR)地址寄存器(MAR)地址譯碼器:B0H5CH04H2EH70H0AH10HA2H00H02HF4H0200H1000H1001H1002H1003H1004H1005H1006H1007H1008H1009H100AH...內(nèi)存儲器CPUALU+1控制信號

讀控制寫控制內(nèi)總線地址PC=1000H操作控制器(OC)指令譯碼器(ID)數(shù)據(jù)寄存器(MDR)標(biāo)志寄存器(FR)程序計數(shù)器(PC)寄存器組累加器(ACC)指令寄存器(IR)地址寄存器(MAR)地址譯碼器:B0H5CH04H2EH70H0AH10HA2H00H02HF4H0200H1000H1001H1002H1003H1004H1005H1006H1007H1008H1009H100AH...內(nèi)存儲器CPUALU+1控制信號

讀控制寫控制內(nèi)總線地址PC=1001H第二條指令是怎樣執(zhí)行的呢?同學(xué)們思考一下1.6典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理簡介簡單程序的編制和執(zhí)行指令的執(zhí)行過程取指令分析指令執(zhí)行指令計算機組成原理第二章計算機中的數(shù)制及編碼2.1數(shù)據(jù)表示2.2計算機中的數(shù)制及轉(zhuǎn)換2.3二進制數(shù)的運算2.4數(shù)據(jù)表示法2.5計算機中數(shù)和字符的編碼

目錄2.1數(shù)據(jù)表示字長?1、計算機中的數(shù)制2、各種計數(shù)制之間的轉(zhuǎn)換計算機一次能夠同時(并行)處理的二進制位

主要介紹Intelx86-16位系統(tǒng)字長位8位和16位字(Word)字節(jié)(Byte)2.1數(shù)據(jù)表示二進制數(shù)是計算機硬件唯一能夠識別的數(shù)制任何其他計數(shù)制和各種信息要讓計算機處理,都需要借助軟件轉(zhuǎn)換為二進制人類最習(xí)慣用的計數(shù)制是十進制,計算機中采用二進制原因:技術(shù)實現(xiàn)簡單。具有兩種穩(wěn)定狀態(tài)的器件很容易找運算規(guī)則簡單。二進制只有0和1兩個符號易于與十進制的轉(zhuǎn)換符合邏輯運算2.2計算機中的數(shù)制及轉(zhuǎn)換二進制數(shù)十進制數(shù)十六進制數(shù)計算機中常用的計數(shù)制2.2計算機中的數(shù)制及轉(zhuǎn)換

1.十進制(Decimal)

十進制是大家很熟悉的進位計數(shù)制:

a.它共有0、1、2、3、4、5、6、7、8和9十個數(shù)字符號。這十個數(shù)字符號又稱為“數(shù)碼”。b.基數(shù)為10,逢10進1。2.1.1計算機中的數(shù)制2.2計算機中的數(shù)制及轉(zhuǎn)換

2.二進制(Binary)

二進制比十進制更為簡單,它是隨著計算機的發(fā)展而發(fā)展起來的:

a.它共有0和1兩個數(shù)字符號。b.基數(shù)為2,逢2進1。2.2計算機中的數(shù)制及轉(zhuǎn)換

3.十六進制(Hexadecimal)

十六進制是人們學(xué)習(xí)和研究計算機中二進制數(shù)的一種工具,它是隨著計算機的發(fā)展而廣泛應(yīng)用的:a.它共有0、1、2、3、4、5、6、7、8、9、A、B、C、D、E和F共16個數(shù)字符號。這16個數(shù)字符號又稱為“數(shù)碼”。b.基數(shù)為16,逢16進1。2.2計算機中的數(shù)制及轉(zhuǎn)換234.98或者234.98D1101.11BABCD.BFH各種數(shù)制在匯編指令中的表示:在匯編語言程序中,十進制的標(biāo)識符D可以缺?。J(rèn)為十進制數(shù))但二進制、十六進制的標(biāo)識符不能缺省。2.2計算機中的數(shù)制及轉(zhuǎn)換十進制、二進制和十六進制數(shù)對照表整數(shù)小數(shù)十進制二進制十六進制十進制二進制十六進制0000000001000110.50.10.82001020.250.010.43001130.1250.0010.24010040.06250.00010.15010150.31250.000010.086011060.0156250.0000010.04701117

810008

910019

101010A

111011B

121100C

131101D

141110E

151111F

161000016

2.2計算機中的數(shù)制及轉(zhuǎn)換

2.1.2不同數(shù)制間數(shù)的轉(zhuǎn)換2.2計算機中的數(shù)制及轉(zhuǎn)換練習(xí):將48.25轉(zhuǎn)換為二進制小數(shù)部分:乘2取整整數(shù)部分:除2取余整數(shù):110000小數(shù):01高位高位結(jié)果:110000.01482412632×2222010100取余數(shù)0.250.5×210取整數(shù)12.2計算機中的數(shù)制及轉(zhuǎn)換練習(xí):將0.4轉(zhuǎn)換為二進制小數(shù)部分:乘2取整高位結(jié)果:≈0.0110B×20.40.8×21.60取整數(shù)1×21.210.6×20.400.2…2.2計算機中的數(shù)制及轉(zhuǎn)換四位合一位法:整數(shù)部分,從小數(shù)點向左組,每4位一組,不夠4位的高位補0。小數(shù)部分,從小數(shù)點向右分組,不夠4位在低位補0。二進制數(shù)轉(zhuǎn)換十六進制數(shù)十六進制二進制00000100012001030011401005010160110701118100091001A1010B1011C1100D1101E1110F1111161000025.5=(11001.1)B=(19.8)H00011001.10001982.2計算機中的數(shù)制及轉(zhuǎn)換十六進制數(shù)轉(zhuǎn)換二進制數(shù)ACD8H=(1010110011011000)B十六進制二進制00000100012001030011401005010160110701118100091001A1010B1011C1100D1101E1110F11111610000每1位十六進制數(shù)用4位二進制代替2.2計算機中的數(shù)制及轉(zhuǎn)換計算機中二進制數(shù)的表示數(shù)的性質(zhì)數(shù)的表示方法2.3二進制數(shù)的運算

定點數(shù)

浮點數(shù)無符號數(shù)定點整數(shù)定點小數(shù)編程時需要確定小數(shù)點的位置難以表示兩個大小相差較大的數(shù)存儲空間利用率低有符號數(shù)數(shù)中所有的0和1都是數(shù)據(jù)本身需要用0和1表示數(shù)的性質(zhì)(整數(shù)或負(fù)數(shù))統(tǒng)稱機器數(shù)小數(shù)點的位置可以來回移動的這種數(shù)2.3二進制數(shù)的運算-算術(shù)運算無符號數(shù)無符號數(shù)的算術(shù)運算加法運算減法運算乘法運算除法運算2.3二進制數(shù)的運算-算術(shù)運算1.1加法運算兩個二進制數(shù)的加法過程和十進制加法過程類似二進制加法法則為:0+0=01+0=0+1=11+1=0(向鄰近高位有進位)1+1+1=1(向鄰近高位有進位)加數(shù)Y01011001B被加數(shù)X10011110B和X+Y11110111B2.3二進制數(shù)的運算-算術(shù)運算1.2減法運算

兩個二進制數(shù)的減法運算過程和十進制減法類似二進制減法法則為:0-0=01-1=01-0=10-1=1(向鄰近高位借1當(dāng)作2)減數(shù)X10010111B被減數(shù)Y11011001B差數(shù)Y-X01000010B2.3二進制數(shù)的運算-算術(shù)運算1.3乘法運算

兩個二進制數(shù)相乘與兩個十進制數(shù)相乘類似,可以用乘數(shù)的每一位分別去乘被乘數(shù),所得結(jié)果的最低位與相應(yīng)乘數(shù)位對齊,最后把所有結(jié)果加起來,便得到積,這些中間結(jié)果又稱為部分積。二進制乘法法則為:0×0=01×0=0×1=01×1=1)乘數(shù)Y×1001B被乘數(shù)X1101B乘積1110101B1101

0000

0000

1101

2.3二進制數(shù)的運算-算術(shù)運算1.4除法運算除法是乘法的逆運算。與十進制類似。

二進制除法也是從被除數(shù)最高位開始,查找出夠減除數(shù)的位數(shù),并在其最高位處上商1和完成它對除數(shù)的減法運算,然后把被除數(shù)的下一位移到余數(shù)位置上。若余數(shù)不夠減除數(shù),則上商0,并把被除數(shù)的再下一位移到余數(shù)位置上;若余數(shù)夠減除數(shù),則上商1并進行余數(shù)減除數(shù)。這樣反復(fù)進行,直到全部被除數(shù)的各位都下移到余數(shù)位置上為止。110)10101011

110110110110100111111002.3二進制數(shù)的運算-邏輯運算邏輯是思維規(guī)律,事物的因果之間遵循的規(guī)律基本表現(xiàn)形式是命題和推理命題是能判斷真假的陳述句推理從前提推出結(jié)論的思維過程前題是已知的命題,結(jié)論是通過推理規(guī)則得出的命題2.3二進制數(shù)的運算-邏輯運算邏輯是思維規(guī)律,事物的因果之間遵循的規(guī)律基本表現(xiàn)形式是命題和推理命題是能判斷真假的陳述句推理從前提推出結(jié)論的思維過程前題是已知的命題,結(jié)論是通過推理規(guī)則得出的命題2+3=5真命題3是偶數(shù)假命題明天上午有課嗎?不是命題2.3二進制數(shù)的運算-邏輯運算命題3不是偶數(shù)非(否定)小明學(xué)過英語,也學(xué)過德語并(同時)表示為AandB從西安到北京經(jīng)鄭州走,或者經(jīng)太原走或者復(fù)合命題可以由簡單的命題通過聯(lián)結(jié)詞表示運算得到命題是邏輯的基本表現(xiàn)形式,所以,聯(lián)結(jié)詞所表示的運算就是邏輯運算“并且”與運算“或者”或運算“并非”非運算基本邏輯運算2.3二進制數(shù)的運算-邏輯運算命題的真假可以對應(yīng)為:物理上:開關(guān)的斷開和閉合,電平的高和低數(shù)學(xué)上:二進制的1和0復(fù)合命題可以由簡單的命題通過聯(lián)結(jié)詞表示運算得到命題是邏輯的基本表現(xiàn)形式,所以,聯(lián)結(jié)詞所表示的運算就是邏輯運算“并且”與運算“或者”或運算“并非”非運算基本邏輯運算1對應(yīng)真0對應(yīng)假邏輯乘又稱邏輯與,常用∧算符表示。2.3二進制數(shù)的運算-邏輯運算2.1邏輯乘運算“與”運算兩個二進制數(shù)進行邏輯乘,其運算方法類似于二進制算術(shù)運算。邏輯乘運算法則為:0∧0=01∧0=0∧1=01∧1=1∧11110000B01100110B01100000B僅當(dāng)輸入條件全部為“真”時,輸出的結(jié)果為“真”若輸入條件有一個為“假”,則輸出結(jié)果為假在電路中,與運算相當(dāng)于開關(guān)串聯(lián)電路2.3二進制數(shù)的運算-邏輯運算2.1邏輯乘運算“與”運算僅當(dāng)所有開關(guān)都閉合時,電路才通電。2.3二進制數(shù)的運算-邏輯運算2.2邏輯加運算“或”運算邏輯加的運算規(guī)則為:0∨0=01∨0=0∨1=11∨1=1邏輯加又稱邏輯或,常用算符∨表示?!?0001111B00110101B00111111B輸入條件中有一個為“真”時,輸出的結(jié)果為“真”僅當(dāng)輸入條件全部為“假”,則輸出結(jié)果為“假”2.3二進制數(shù)的運算-邏輯運算電路中,“或”運算相當(dāng)于開關(guān)的并聯(lián)電路僅當(dāng)所有開關(guān)都斷開時,電路才無電流通過2.2邏輯加運算“或”運算=1=02.3二進制數(shù)的運算-邏輯運算邏輯非運算又稱邏輯反,常采用“一”運算符表示。

2.3邏輯非運算“非”運算運算規(guī)則為:X=11000011BX=00110101B當(dāng)開關(guān)斷開時燈亮,開關(guān)閉合時燈滅

邏輯異或又稱為半加,是不考慮進位的加法,常采用

運算符表示。邏輯異或的運算規(guī)則為:

00=11=0

10=01=12.3二進制數(shù)的運算-邏輯運算2.4邏輯異或

11110000B10110110B01000110B2.4數(shù)的表示法有符號位計算有符號數(shù):用最高位表示符號,其余是數(shù)值符號數(shù)的表示方法:原碼反碼補碼0:表示正數(shù)1:表示負(fù)數(shù)數(shù)的性質(zhì)由設(shè)計者決定2.4數(shù)的表示法1、原碼最高位為符號位,其余為真值部分[X]原=符號位+|絕對值|優(yōu)點:真值和其原碼表示之間的對應(yīng)關(guān)系建安,容易理解缺點:計算機中用原碼進行價加減運算比較困難0的表示不唯一數(shù)0的原碼不唯一8位數(shù)0的原碼:

+0=00000000

-0=100000002.4數(shù)的表示法2、反碼對一個機器數(shù)X:若X>0,則[X]反=[X]原若X<0,則[X]反=對應(yīng)原碼的符號位不變,數(shù)值部分按位求反0的反碼:數(shù)0的反碼也不是唯一的

[+0]反=[+0]原=00000000

[-0]原=10000000[-0]反=[-0]原

數(shù)值部分安位取反=11111111例:X=-52=-0110100[X]反=10110100[X]原=110010112.4數(shù)的表示法3、補碼定義:若X>0,則[X]補=[X]反=[X]原若X<0,則[X]補=[X]反+10的補碼:

[+0]補?=[+0]原=00000000

[-0]補=[-0]反+1=11111111+1=100000000例:X=-52=-0110100[X]原=10110100[X]反=11001011[X]補=[X]反+1=11001100對8位字長,進位被舍掉2.4數(shù)的表示法3、補碼即:[X+Y]補=[X]補+[Y]補[X-Y]補=[X+(-Y)]補=[X]補+[-Y]補通過引進補碼,可將減法運算轉(zhuǎn)換為加法運算。2.4數(shù)的表示法用二進制補碼運算:[+66]補=[+66]原

=01000010[-51]原=10110011[-51]補=11001101[+66]補+[-51]補=100001111=15例1:66-51=66+(-51)=152.4數(shù)的表示法[X]原=10110100[X]補=[X]反+1=11001100[Y]補=[Y]反+1=01110100[X+Y]補=[X]補+[Y]補

=11001100+01110100=01000000X+Y=+1000000例2:X=-52=-0110100,Y=116=+1110100,求X+Y=?所有需要由計算機處理的信息,都需要編碼2.5計算機中數(shù)和字符的編碼使所有的信息都以二進制碼形式表示編碼信息從一種形式或者格式轉(zhuǎn)換為另一種形式的過程。用代碼來表示各種信息,以便于計算機處理。2.5計算機中數(shù)和字符的編碼數(shù)值聲音需要編碼的信息種類字符圖形、圖像數(shù)值編碼二進制碼BCD碼2.5計算機中數(shù)和字符的編碼ASCII碼

西文字符編碼2.5計算機中數(shù)和字符的編碼BCD碼BCD碼(BinaryCodedDecimal)用二進制表示的十進制數(shù)特點:保留十進制的權(quán),數(shù)字用0和1表示2.5計算機中數(shù)和字符的編碼8421BCD編碼用4位二進制碼表示1位十進制數(shù)每4位之間有一個空格。

1010-1111是非法BCD碼,只是合法的十六進制數(shù)

0000……

1001……

0

9BCD碼十進制數(shù)8421碼十進制數(shù)8421碼00000B81000B10001B91001B20010B1000010000B30011B1100010001B40100B1200010010B50101B1300010011B60110B1400010100B70111B1500010101B2.5計算機中數(shù)和字符的編碼2.5計算機中數(shù)和字符的編碼BCD編碼與十進制和二進制數(shù)之間的轉(zhuǎn)換BCD碼與十進制數(shù)之間存在直接對應(yīng)關(guān)系例:(100110000110.0011)BCD=986.398632.5計算機中數(shù)和字符的編碼BCD碼與二進制的轉(zhuǎn)換先轉(zhuǎn)換為十進制數(shù),在轉(zhuǎn)換二進制數(shù);反之同樣。例:(00010001.00100101)BCD=11.251125=(1011.01)B小數(shù)部分:乘2取整整數(shù)部分:除2取余2.5計算機中數(shù)和字符的編碼BCD碼在計算機中的存儲方式以壓縮BCD碼形式存放用4位二進制碼表示1位BCD碼一個存儲單元中存放2位BCD數(shù)以擴展BCD碼形式存放用8位二進制碼表示1位BCD碼,即高4位為0,低4位為有效位每個存儲單元存放1位BCD數(shù)將每個字母、數(shù)字、標(biāo)點、控制符用1Byte二進制碼表示

ASCII碼西文字符編碼

其中:標(biāo)準(zhǔn)ASCII的有效位:7bit,最高位默認(rèn)為02.5計算機中數(shù)和字符的編碼A01000001a01000001000110000B01000010b01000010100110001C01000011c01000011200110010D01000100d01000100300110011E01000101e01000101400110100F01000110f01000110500110101G01000111g01000111600110110H01001000h01001000700110111I01001001i010010018

00111000J01001010j01001010900111001ASCII編碼例編碼即變換2.5計算機中數(shù)和字符的編碼奇校驗:加上校驗位后編碼中“1”的個數(shù)為奇數(shù)ASCII碼的奇偶校驗

以奇校驗傳送則為C1H(11000001B)偶校驗:加上校驗位后編碼中“1”的個數(shù)為偶數(shù)

上例若以偶校驗傳送,則為41H例:A的ASCII碼是41H(1000001)B2.5計算機中數(shù)和字符的編碼1、10010110.1001B=(000101010000.0101011000100101)BCD2、1F3DH=(7997)D=(0111100110010111)BCD3、若以奇校驗傳送字母B,則B的ASCII=(11000010)H隨堂練習(xí)2.5計算機中數(shù)和字符的編碼計算機組成原理第三章總線系統(tǒng)3.1總線概述3.2I/O總線接口3.3總線的仲裁3.4總線的通信控制和數(shù)據(jù)傳輸模式3.5總線標(biāo)準(zhǔn)

目錄總線:是計算機體系結(jié)構(gòu)的重要組成部分。是鏈接多個部件的信息傳輸線,是各部件共享的傳輸線是各部件構(gòu)成一個完整的系統(tǒng)??偩€的概念3.1總線概述總線的特點3.1總線概述獨占性共享性所有部件通信共享有部件占用總線通訊總線的作用3.1總線概述是各個功能部件間傳遞各類信息的通道是系統(tǒng)中各部件間的物理接口,能夠減少各部件通信的復(fù)雜程度提供信息交換時所需要的數(shù)據(jù)、地址、時序和控制信息提供一個共同遵守的協(xié)議或者標(biāo)準(zhǔn)不應(yīng)成為整個計算系系統(tǒng)性能的瓶頸方便計算機系統(tǒng)集成、擴展和進化數(shù)據(jù)傳輸方式并行總線串行總線3.1總線概述總線的分類連接部件不同片內(nèi)總線系統(tǒng)總線通信總線傳輸信號不同數(shù)據(jù)總線地址總線控制總線按用途分類存儲總線內(nèi)部總線I/O總線3.1總線概述數(shù)據(jù)總線:雙向與機器字長、存儲字長有關(guān)地址總線:單向與存儲地址、I/O地址有關(guān)控制總線:有出有入片內(nèi)總線:芯片內(nèi)部的總線系統(tǒng)總線:計算機各部件之間信息傳輸線存儲器讀寫總線允許、中斷確認(rèn)中斷請求,總線請求并行通信總線串行通信總線通信總線:用于計算機系統(tǒng)之間或計算機系統(tǒng)與其他系統(tǒng)之間的通信BUS主板3.1總線概述總線的物理實現(xiàn)CPU插板主存插板I/O插板3.1總線概述總線的特性物理特性:尺寸、形狀、引腳數(shù)、排列順序

電氣特性:傳輸方向和有效的電平范圍

功能特性:每個傳輸線的功能:地址、數(shù)據(jù)、控制

時間特性:信號的時序關(guān)系

3.5總線的標(biāo)準(zhǔn)化ISAEISAVESA(LV-BUS)PCIAGPRS-232USB總線的標(biāo)準(zhǔn)總線的標(biāo)準(zhǔn)可視為系統(tǒng)與各模塊,模塊與模塊之間的一個互連的標(biāo)準(zhǔn)界面標(biāo)準(zhǔn)界面模塊系統(tǒng)系統(tǒng)模塊總線標(biāo)準(zhǔn)數(shù)據(jù)線總線時鐘(MHz)帶寬(MBps)ISA168MHz(獨立)16MBpsEISA328MHz(獨立)33MBpsVESA(VL-BUS)3232MHz(CPU)132MBpsPCI326433MHz(獨立)66MHz(獨立)132MBps528MBpsAGP3266.7MHz(獨立)133MHz(獨立)266MBps533MBpsRS-232串行通信總線標(biāo)準(zhǔn)數(shù)據(jù)終端設(shè)備(計算機)和數(shù)據(jù)通訊設(shè)備(調(diào)制解調(diào)器)之間的接口標(biāo)準(zhǔn)USB串行接口總線標(biāo)準(zhǔn)普通無屏蔽雙絞線帶屏蔽雙絞線最高1.5MBps(USB1.0)12MBps(USB1.0480MBps(USB2.0)3.5總線的標(biāo)準(zhǔn)化3.1總線概述總線的連接方式單總線結(jié)構(gòu):使用單一的系統(tǒng)總線來連接CPU、主存和I/O設(shè)備面向CUP的雙總線結(jié)構(gòu):存儲總線:CPU和主存儲器之間進行信息交換的公共通路

I/O總線:CPU與I/O設(shè)備之間進行信息交換的公共通路

面向主存儲器的雙總線結(jié)構(gòu):CPU與主存儲器之間設(shè)置高速存儲總線多總線結(jié)構(gòu):CPU與和緩存(Cache)之間采用高速的CPU總線單總線結(jié)構(gòu)3.1總線概述單總線面向CPU的雙總線機構(gòu)3.1總線概述中央處理器CPUI/O總線I/O接口I/O設(shè)備1I/O接口I/O接口I/O設(shè)備2I/O設(shè)備n……主存M總線面向主存儲器的雙總線結(jié)構(gòu)3.1總線概述主存

多總線結(jié)構(gòu)3.1總線概述3.2I/O總線接口信息傳送方式串行傳送并行傳送分時傳送

I/O功能模塊通常簡稱為I/O接口,也叫適配器。廣義地講,I/O接口是指CPU、主存和外圍設(shè)備之間通過系統(tǒng)總線進行連接的標(biāo)準(zhǔn)化邏輯部件。I/O接口在它動態(tài)連接的兩個部件之間起著“轉(zhuǎn)換器”的作用,以便實現(xiàn)彼此之間的信息傳送。3.2I/O總線接口總線接口的基本概念3.2I/O總線接口I/O接口功能1.控制2.緩沖

3.狀態(tài)

4.轉(zhuǎn)換

5.整理

6.程序中斷3.3總線的仲裁基本概念主設(shè)備(模塊)對總線有控制權(quán)從設(shè)備(模塊)響應(yīng)從主設(shè)備發(fā)來的總線命令總線判優(yōu)控制集中式仲裁分布式仲裁鏈?zhǔn)讲樵冇嫈?shù)器定時查詢獨立請求方式3.3總線的仲裁鏈?zhǔn)讲樵兎绞?.3總線的仲裁計數(shù)器定時查詢方式3.3總線的仲裁獨立請求方式3.4總線的通訊控制和數(shù)傳輸模式總線通訊控制目的:解決通信雙方協(xié)調(diào)配合問題總線的傳送周期:通常完成一次總線操作的時間尋址階段:主模塊向從模塊給出地址和命令申請分配階段:主模塊申請,總線仲裁決定傳數(shù)階段:主模塊和從模塊交換數(shù)據(jù)結(jié)束階段:主模塊撤銷有關(guān)信息四個階段3.4總線的通訊控制和數(shù)傳輸模式總線通訊的四種方式同步通信:由統(tǒng)一時標(biāo)控制數(shù)據(jù)傳宋異步通訊:采用應(yīng)答方式,沒有公共時鐘標(biāo)準(zhǔn)半同步通信:同步、異步結(jié)合分離式通信:充分挖掘系統(tǒng)總線每個瞬間的潛力3.4總線的通訊控制和數(shù)傳輸模式同步式數(shù)據(jù)輸入輸出3.4總線的通訊控制和數(shù)傳輸模式異步通信3.3總線的通訊控制和數(shù)傳輸模式半同步通信(同步、異步結(jié)合)同步:發(fā)送方用系統(tǒng)時鐘前沿發(fā)信號

接收方用系統(tǒng)時鐘后沿判斷、識別異步:允許不同速度的模塊和諧工作增加一條“等待”響應(yīng)信號

WAIT3.4總線的通訊控制和數(shù)傳輸模式半同步通信(同步、異步結(jié)合)3.4總線的通訊控制和數(shù)傳輸模式分離式通信分離式通信:充分挖掘系統(tǒng)總線每個瞬間的潛力一個總線傳輸周期子周期2從模塊(主模塊)申請占用總線,將各種信息送至總線上子周期1主模塊申請占用總線,使用完后即放棄總線的使用權(quán)3.4總線的通訊控制和數(shù)傳輸模式分離式通信特點各模塊有權(quán)申請占用總線采用同步方式通信,不等對方回答各模塊準(zhǔn)備數(shù)據(jù)時,不占用總線總線被占用時,無空閑充分提高了總線的有效占用

3.4總線的通訊控制和數(shù)傳輸模式總線的數(shù)據(jù)傳送模式1.讀、寫操作2.塊傳送操作3.寫后讀、讀后寫操作

4.廣播、廣集操作第四章存儲器120典型的微機硬件系統(tǒng)結(jié)構(gòu)圖4.1常用存儲器分類

主存和CPU的聯(lián)系DRARCPU主存讀數(shù)據(jù)總線地址總線寫圖4.1CPU與存儲器的連接結(jié)構(gòu)示意圖

存儲器系統(tǒng)的分層結(jié)構(gòu)中央處理器主存M2輔存M3CacheM1三級存儲器的結(jié)構(gòu)示意圖高速緩存技術(shù)虛擬存儲技術(shù)虛擬地址空間中的存儲頁真正內(nèi)存程序可用緩存CPU主存輔存緩存主存輔存主存虛擬存儲器10ns20ns200nsms虛地址邏輯地址實地址物理地址主存儲器(速度)(容量)圖4.3半導(dǎo)體存儲器組成框圖

圖4.4雙譯碼存儲器結(jié)構(gòu)

131

衡量內(nèi)存的主要參數(shù):

存儲容量132芯片133存儲芯片的基本結(jié)構(gòu)譯碼電路存儲體讀寫電路讀/寫控制線地址線……數(shù)據(jù)線……片選線芯片容量1K×4位16K×1位8K×8位地址線(單向)數(shù)據(jù)線(雙向)104141138模仿練習(xí)135問題存儲器如何擴充?擴充的方法又有哪些呢?136

現(xiàn)有1K

×

4位存儲芯片,如何組成1K

×

8位的存儲器?DD????D0479AA0???1K×41K×4CSWE思考CPUDD????D0479AA0???CSWE137模仿練習(xí)用16K×4位存儲芯片組成16K×8位的存儲器,如何實現(xiàn)?分析:需要幾片16K×4位的存儲芯片?

畫出連接圖.138

1K

×

8位

1K

×

8位D7D0?????????????????WEA1A0???A9CS0A10

1CS1

現(xiàn)有兩片1K

×

8位存儲芯片,能夠組成多大的存儲器?思考CPU139139模仿練習(xí)用16K×8位存儲芯片組成64K×8位的存儲器,如何實現(xiàn)?分析:需要幾片16K×8位的存儲芯片?

畫出連接圖.140用16K×8位芯片組成的存儲器64K×8位的存儲器141芯片地址碼地址范圍A19…A11A10A9A8A7…A4A3…A01K×8(1)00000H...003FFH2K×8(2)00400H...007FFHA9A8A7…A4A3…A0000…00…0111…11…1........................000…00…0111…11…1........................A100...01...1XXXXXX...XXXXXXXXXXXX...XXXXXX00000H...003FFH00400H...007FFH內(nèi)存地址空間分配142圖4.61K*4擴展成2K*8M/IOWRA0~A9D7~D4CSWE2114

(1)A0~A9D3~D0CSWE2114

(1)A0~A9D7~D4CSWE2114

(2)A0~A9D3~D0CSWE2114

(2)2:4譯碼器A11A10A0~A9D7~D010某計算機有地址線18位,數(shù)據(jù)線8位,現(xiàn)選用4K×4位的靜態(tài)RAM芯片組成該機的內(nèi)存,問1、該機允許的最大內(nèi)存空間多大?2、若設(shè)定基本的芯片模塊容量為32K×8,該機共需幾個這樣的模塊?3、每個模塊內(nèi)包含多少個4K×4位的RAM芯片?4、主存共需多少個RAM芯片?CPU如何選擇這些模塊?

256KB816128CPU選擇各模塊的方法是:地址線A14-A0為模塊內(nèi)連接,地址線A17,A16,A15通過一個38譯碼器,其輸出端作為8個模塊的片選端1441K×41K×41K×41K×41K×41K×41K×41K×4用幾片1K

×

4位存儲芯片組成4K

×

8位的存儲器討論先位擴展再字?jǐn)U展?先字?jǐn)U展再位擴展?1451461K×41K×41K×41K×41K×41K×41K×41K×4用幾片1K

×

4位存儲芯片組成4K

×

8位的存儲器8根數(shù)據(jù)線12根地址線WEA8A9A0...D7D0……A11A10CS0CS1CS2CS3片選譯碼................147用16K×1位的存儲芯片組成64K×8位的存儲器

32片8片16K×1位8片16K×1位8片16K×1位8片16K×1位例:假設(shè)CPU有16根地址線,8根數(shù)據(jù)線,現(xiàn)有下列存儲芯片:1K*4位RAM,4K*8位RAM,8K*8位RAM,2K*8位ROM,4K*8位ROM,8K*8位ROM及74LS138譯碼器和各種門電路,畫出CPU與存儲器的連接圖。要求:

1.主存地址空間分配

6000H~67FFH為系統(tǒng)程序區(qū)

6800H~6BFFH為用戶程序區(qū)

2.合理選用上述存儲芯片,說明各選幾片?

3.詳細(xì)畫出存儲器芯片的片選邏輯圖。148解:第一步:將地址范圍寫成二進制代碼,并確定其總?cè)萘?/p>

A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00110000000000000

……

……

……01100111111111110110100000000000

……

……

……0110101111111111系統(tǒng)程序區(qū)2K*8用戶程序區(qū)1K*8第二步:根據(jù)地址范圍的容量及該范圍在計算機中的應(yīng)用,選擇存儲芯片由6000H~67FFH為系統(tǒng)程序區(qū),為2K*8位,應(yīng)選擇一片2K*8位ROM

由6800H~6BFFH為用戶程序區(qū),為1K*8位,應(yīng)選擇兩片1K*4位RAM第三步:分配CPU的地址線將CPU的低11位地址線A10~A0與2K*8位的ROM地址線相連,將CPU的低10位地址線A9~A0與1K*4位的RAM地址線相連,剩下的高位地址與訪存控制信號共同產(chǎn)生存儲芯片的片選信號。第四步:由題給出的74LS138譯碼器的輸入邏輯關(guān)系可知,必須保證G1為高電平,G2A、G2B為低電平才能使譯碼器工作。

A15為低,連接到G2A上,A14為高,連接到G1上,MREQ

為低,連接到G2B上。保證了三個控制端的要求

A13、A12、A11連接到C、B、A上。輸出Y4有效時,選中一片ROM;Y5有效時,同時A10有效為低電平,選中兩片

RAM。讀出時低電平有效,RAM的讀/寫控制端與CPU的命令端WR相連*ROM的數(shù)據(jù)線是單向的2K*81K*41K*4D7D6D5D4D3D2D1D0WRA10A9A8A7A6A5A4A3A2A1A0CBAA13A12A11Y7Y6Y5Y4Y3Y2Y1Y0第五章輸入輸出系統(tǒng)除了CPU和存儲器兩大模塊外,計算機硬件系統(tǒng)的第三個關(guān)鍵部分是輸入輸出模塊,又稱輸入輸出系統(tǒng)。隨著計算機系統(tǒng)的不斷發(fā)展,應(yīng)用范圍的不斷擴大,I/O設(shè)備的數(shù)量和種類也越來越多,它們與主機的聯(lián)絡(luò)方式及信息的交換方式也各不相同。5.1.1輸入輸出系統(tǒng)的發(fā)展概況

輸入輸出系統(tǒng)的發(fā)展大致可分為4各階段:1.早期階段

早期的I/O設(shè)備種類較少,I/O設(shè)備與主存交換信息都必須通過CPU。主存CPUI/O設(shè)備圖5.1I/O設(shè)備通過CPU與主存交換信息這種方式沿用了相當(dāng)長的時間。當(dāng)時的I/O設(shè)備具有以下幾個特點。(1)每個I/O設(shè)備都必須配有一套獨立的邏輯電路與CPU相連,用來實現(xiàn)I/O設(shè)備與主機之間的信息交換,因此線路十分散亂、龐雜。(2)輸入輸出過程是穿插在CPU執(zhí)行程序過程中進行的,當(dāng)I/O設(shè)備與主機交換信息時,CPU不得不停止各種運算,因此,I/O設(shè)備與CPU是按串行方式工作的,極浪費時間。(3)每個I/O設(shè)備的邏輯控制電路與CPU的控制器緊密構(gòu)成一個不可分割的整體,它們彼此依賴,相互牽連,因此,欲增添、刪減或更換I/O設(shè)備是非常困難的。2.接口模塊和DMA階段

這個階段I/O設(shè)備通過接口與主機相連,計算機系統(tǒng)采用了總線結(jié)構(gòu)。I/O設(shè)備1I/O設(shè)備2I/O設(shè)備n主機接口1接口2接口n總線圖5.2I/O設(shè)備通過接口與主機交換信息……3.具有通道結(jié)構(gòu)階段

(1)如果每臺I/O設(shè)備都配置專用的DMA接口,不僅增加了硬件成本,而且為了解決眾多DMA接口同時訪問主存的沖突問題,會使控制變得十分復(fù)雜。(2)CPU需要對眾多的DMA接口進行管理,同樣會占用CPU的工作時間,而且因頻繁進入周期挪用階段,也會直接影響CPU的整體工作效率。主存CPUI/O設(shè)備圖5.3I/O設(shè)備通過通道與主機交換信息

通道4.具有I/O處理機的階段輸入輸出系統(tǒng)發(fā)展到第四階段,出現(xiàn)了I/O處理機。I/O處理機又稱為外圍處理機,它基本獨立于主機工作,既可完成I/O通道要完成的I/O控制,又可完成碼制轉(zhuǎn)換、格式處理、數(shù)據(jù)塊檢錯、糾錯等處理。具有I/O處理機的輸入輸出系統(tǒng)與CPU工作的并行性更高,這說明I/O系統(tǒng)對主機來說具有更大的獨立性。3.聯(lián)絡(luò)方式(1)立即響應(yīng)方式(2)異步工作采用應(yīng)答信號聯(lián)絡(luò)(3)同步工作采用同步時標(biāo)聯(lián)絡(luò)5.1.2I/O設(shè)備與主機的聯(lián)系方式

1.I/O設(shè)備編址方式通常將I/O設(shè)備碼看做地址碼,對I/O地址碼的編址可采用兩種方式:統(tǒng)一編址和獨立編址。2.傳送方式在同一瞬間,n位信息同時從CPU輸出至I/O設(shè)備,或由I/O設(shè)備輸入到CPU,這種傳送方式稱為并行傳送。其特點是傳送速度快,但要求數(shù)據(jù)線多。5.2I/O設(shè)備與主機信息傳送的控制方式

5.2.1程序控制方式1.無條件傳送方式在CPU與這些設(shè)備交換數(shù)據(jù)時,可以認(rèn)為它們總是處于“就緒”狀態(tài),隨時可以進行數(shù)據(jù)傳送,這就是無條件傳送,或稱同步傳送。5.2I/O設(shè)備與主機信息傳送的控制方式

5.2.1程序控制方式2.程序查詢方式工作的原理CPU向I/O設(shè)備發(fā)讀命令CPU讀I/O設(shè)備狀態(tài)從I/O接口中讀一個字到CPUCPU向主存寫入一個字準(zhǔn)備就緒?傳輸完成?YNYN現(xiàn)行程序現(xiàn)行程序CPUI/O設(shè)備I/O設(shè)備CPU出錯I/O設(shè)備CPUCPU主存圖5.5程序查詢方式流程2.程序查詢方式的接口

接口可以看做是兩個系統(tǒng)或兩個部件之間的交接部分,它既可以是兩種硬設(shè)備之間的連接電路,也可以是兩個軟件之間的共同邏輯邊界。數(shù)據(jù)緩沖寄存器設(shè)備選擇電路Q&QDB①②③④⑤⑥⑦⑧數(shù)據(jù)線輸入數(shù)據(jù)啟動設(shè)備準(zhǔn)備就緒啟動命令地址線設(shè)備工作結(jié)束圖5.6程序查詢方式輸入接口電路的基本組成SEL1.中斷的基本概念中斷概念的出現(xiàn),是計算機系統(tǒng)結(jié)構(gòu)設(shè)計中的一個重大變革。在程序中斷方式中,某一外設(shè)的數(shù)據(jù)準(zhǔn)備就緒后,它“主動”向CPU發(fā)出請求中斷的信號,請求CPU暫時中斷目前正在執(zhí)行的程序而進行數(shù)據(jù)交換。當(dāng)CPU響應(yīng)這個中斷時,便暫停運行主程序,并自動轉(zhuǎn)移到該設(shè)備的中斷服務(wù)程序。當(dāng)中斷服務(wù)程序結(jié)束以后,CPU又回到原來的主程序。這種原理和調(diào)用子程序相仿,不過,這里要求轉(zhuǎn)移到中斷服務(wù)程序的請求是由外部設(shè)備發(fā)出的。中斷方式特別適合于隨機出現(xiàn)的服務(wù)。5.2.2程序中斷方式2.程序中斷方式工作的原理取指令執(zhí)行指令中斷?響應(yīng)中斷關(guān)中斷找到中斷源,保存斷點轉(zhuǎn)移到中斷服務(wù)子程序保存CPU現(xiàn)場設(shè)備服務(wù)恢復(fù)CPU現(xiàn)場開中斷是否中斷周期(硬件)指令周期(硬件)中斷服務(wù)子程(軟件)圖5.8中斷處理過程流程圖3.程序中斷方式的基本接口為處理I/O中斷,在I/O接口電路中必須配置相關(guān)的硬件電路。(1)中斷請求觸發(fā)器和中斷屏蔽觸發(fā)器(2)排隊器(3)中斷向量地址形成4.中斷服務(wù)程序的流程(1)保護現(xiàn)場保護現(xiàn)場有兩個含義,其一是保存程序斷點;其二是保存通用寄存器和狀態(tài)寄存器的內(nèi)容。(2)中斷服務(wù)(設(shè)備服務(wù))這是中斷服務(wù)程序的主體部分,對于不同的中斷源,其中斷服務(wù)操作的內(nèi)容是不同的。(3)恢復(fù)現(xiàn)場這是中斷服務(wù)程序的結(jié)尾部分,要求在退出服務(wù)程序前,將原程序中斷時的“現(xiàn)場”恢復(fù)到原來的寄存器中。(4)中斷返回中斷服務(wù)程序的最后一條指令通常是一條中斷返回指令,使其返回到原程序的斷點處,以便繼續(xù)執(zhí)行原程序。5.4DMA方式

5.4.1DMA的基本概念直接內(nèi)存訪問(DMA),是一種完全由硬件執(zhí)行交換的工作方式。在這種方式中,DMA控制器從CPU完全接管對總線的控制,數(shù)據(jù)交換不經(jīng)過CPU,而直接在內(nèi)存和I/O設(shè)備之間進行。DMA方式一般用于高速傳送成組數(shù)據(jù)。DMA控制器將向內(nèi)存發(fā)出地址和控制信號,修改地址。對傳送的字的個數(shù)計數(shù),并且以中斷方式向CPU報告?zhèn)魉筒僮鞯慕Y(jié)束。DMA的種類很多,但多種DMA至少能執(zhí)行以下一些基本操作:①從外圍設(shè)備發(fā)出DMA請求;②CPU響應(yīng)請求,把CPU工作改成DMA操作方式,DMA控制器從CPU接管總線的控制;③由DMA控制器對內(nèi)存尋址,即決定數(shù)據(jù)傳送的內(nèi)存單元地址及數(shù)據(jù)傳送個數(shù)的計數(shù),并執(zhí)行數(shù)據(jù)傳送的操作;④向CPU報告DMA操作的結(jié)束。注意,在DMA方式中,一批數(shù)據(jù)傳送前的準(zhǔn)備工作,以及傳送結(jié)束后的處理工作,均由管理程序承擔(dān),而DMA控制器僅負(fù)責(zé)數(shù)據(jù)傳送的工作。圖5.12DMA傳送數(shù)據(jù)的流程圖圖5.10DMA的基本方法2.DMA傳送方式

DMA技術(shù)的出現(xiàn),使得外圍設(shè)備可以通過DMA控制器直接訪問內(nèi)存,與此同時,CPU可以繼續(xù)執(zhí)行程序。通常采用以下三種方法:①停止CPU訪內(nèi);②周期挪用;③DMA與CPU交替訪內(nèi)。

1.停止CPU訪問內(nèi)存當(dāng)外圍設(shè)備要求傳送一批數(shù)據(jù)時,由DMA控制器發(fā)一個停止信號給CPU,要求CPU放棄對地址總線、數(shù)據(jù)總線和有關(guān)控制總線的使用權(quán)。DMA控制器獲得總線控制權(quán)以后,開始進行數(shù)據(jù)傳送。在一批數(shù)據(jù)傳送完畢后,DMA控制器通知CPU可以使用內(nèi)存,并把總線控制權(quán)交還給CPU。圖5.13(a)是這種傳送方式的時間圖.很顯然,在這種DMA傳送過程中,CPU基本處于不工作狀態(tài)或者說保持狀態(tài)。

2.周期挪用在這種DMA傳送方法中,當(dāng)I/O設(shè)備沒有DMA請求時,CPU按程序要求訪問內(nèi)存;一旦I/O設(shè)備有DMA請求,則由I/O設(shè)備挪用一個或幾個內(nèi)存周期。I/O設(shè)備要求DMA傳送時可能遇到兩種情況:一種是此時CPU不需要訪內(nèi),如CPU正在執(zhí)行乘法指令。由于乘法指令執(zhí)行時間較長,此時I/O訪內(nèi)與CPU訪內(nèi)沒有沖突,即I/O設(shè)備挪用1-2個內(nèi)存周期對CPU執(zhí)行程序沒有任何影響。另一種情況是,I/O設(shè)備要求訪內(nèi)時CPU也要求訪內(nèi),這就產(chǎn)生了訪內(nèi)沖突,在這種情況下I/O設(shè)備訪內(nèi)優(yōu)先,因為I/O訪內(nèi)有時間要求,前一個I/O數(shù)據(jù)必須在下一個訪內(nèi)請求到來之前存取完畢。3.DMA與CPU交替訪內(nèi)如果CPU的工作周期比內(nèi)存存取周期長很多,此時采用交替訪內(nèi)的方法可以使DMA傳送和CPU同時發(fā)揮最高的效率。這種方式不需要總線使用權(quán)的申請、建立和歸還過程,總線使用權(quán)是通過C和C分的。CPU和DMA控制器各自有自己的訪內(nèi)地址寄存器、數(shù)據(jù)寄存器和讀/寫信號等控制寄存器。

這種傳送方式又稱為”透明的DMA”方式,其來由是這種DMA傳送對CPU來說,如同透明的玻璃一般,沒有任何感覺或影響。在透明的DMA方式下工作,CPU既不停止主程序的運行,也不進入等待狀態(tài),是一種高效率的工作方式。3.基本的DMA控制器

1.DMA控制器的基本組成一個DMA控制器,實際上是采用DMA方式的外圍設(shè)備與系統(tǒng)總線之間的接口電路。這個接口電路是在中斷接口的基礎(chǔ)上再加DMA機構(gòu)組成。圖5.14簡單的DMA控制器組成內(nèi)存地址計數(shù)器:用于存放內(nèi)存中要交換的數(shù)據(jù)的地址。字計數(shù)器:用于記錄傳送數(shù)據(jù)塊的長度(多少字?jǐn)?shù))。數(shù)據(jù)緩沖寄存器:用于暫存每次傳送的數(shù)據(jù)(一個字)。DMA請求標(biāo)志:每當(dāng)設(shè)備準(zhǔn)備好一個數(shù)據(jù)字后給出一個控制信號,使“DMA請求”標(biāo)志置“1”。

控制/狀態(tài)邏輯:由控制和時序電路以及狀態(tài)標(biāo)志等組成,用于修改內(nèi)存地址計數(shù)器和字計數(shù)器,指定傳送類型(輸入或輸出),并對“DMA請求”信號和CPU響應(yīng)信號進行協(xié)調(diào)和同步。中斷機構(gòu):當(dāng)字計數(shù)器溢出時(全0),意味著一組數(shù)據(jù)交換完畢,由溢出信號觸發(fā)中斷機構(gòu),向CPU提出中斷報告。2.DMA數(shù)據(jù)傳送過程

DMA的數(shù)據(jù)塊傳送過程可分為三個階段:傳送前預(yù)處理;正式傳送;傳送后處理。預(yù)處理階段由CPU執(zhí)行幾條輸入輸出指令,測試設(shè)備狀態(tài),向DMA控制器的設(shè)備地址寄存器中送人設(shè)備號并啟動設(shè)備,向內(nèi)存地址計數(shù)器中送入起始地址,向字計數(shù)器中送入交換的數(shù)據(jù)字個數(shù)。在這些工作完成后,CPU繼續(xù)執(zhí)行原來的主程序。當(dāng)外設(shè)準(zhǔn)備好發(fā)送數(shù)據(jù)(輸入)或接受數(shù)據(jù)(輸出)時,它發(fā)出DMA請求,由DMA控制器向CPU發(fā)出總線使用權(quán)的請求(HOLD)。3.DMA小結(jié)與程序中斷方式相比,DMA方式有如下特點。①從數(shù)據(jù)傳送看,程序中斷方式靠程序傳送,DMA方式靠硬件傳送。②從CPU響應(yīng)時間看,程序中斷方式是在一條指令執(zhí)行結(jié)束時響應(yīng),而DMA方式可在指令周期內(nèi)的任一存取周期結(jié)束時響應(yīng)。③程序中斷方式有處理異常事件的能力,DMA方式?jīng)]有這種能力,主要用于大批數(shù)據(jù)的傳送。④程序中斷方式需要中斷現(xiàn)行程序,故需保護現(xiàn)場;DMA方式不中斷現(xiàn)行程序,無需保護現(xiàn)場。⑤DMA的優(yōu)先級比程序中斷的優(yōu)先級高。第五章(二)計算機外部設(shè)備

5.5外部設(shè)備概述

中央處理器(CPU)和主存儲器(MM)構(gòu)成計算機的主機。除主機以外,那些圍繞著主機設(shè)置的各種硬件裝置稱為外部設(shè)備或外圍設(shè)備。它們主要用來完成數(shù)據(jù)的輸入、輸出、存儲以及對數(shù)據(jù)的加工處理。

5.5.1外部設(shè)備的分類外部設(shè)備的種類很多,從它們的功能及其在計算機系統(tǒng)中的作用來看,可以分為以下5類。

1.輸入輸出設(shè)備從計算機的角度出發(fā),向計算機輸入信息的外部設(shè)備稱為輸入設(shè)備;接收計算機輸出信息的外部設(shè)備稱為輸出設(shè)備。

2.輔助存儲器輔助存儲器是指主機以外的存儲裝置.又稱為后援存儲器。3.終端設(shè)備終端設(shè)備由輸入設(shè)備、輸出設(shè)備和終端控制器組成,通常通過通信線路與主機相連。4.過程控制設(shè)備當(dāng)計算機進行實時控制時,需要從控制對象取得參數(shù),而這些原始參數(shù)大多數(shù)是模擬量,需要先用模數(shù)轉(zhuǎn)換器將模擬量轉(zhuǎn)換為數(shù)字量,然后再輸入計算機進行處理。5.脫機設(shè)備脫機設(shè)備是指在脫離主計算機的情況下,由設(shè)備本身完成數(shù)據(jù)制備的設(shè)備。5.5.2外部設(shè)備的地位和作用

外部設(shè)備是計算機和外界聯(lián)系的紐帶、接口和界面,如果沒有外部設(shè)備,計算機將無法工作。由此可見,外部設(shè)備在計算機系統(tǒng)中占據(jù)的地位變得越來越重要了。外部設(shè)備在計算機系統(tǒng)中的作用可以分為4個方面:

1.外部設(shè)備是人機對話的通道無論是微型計算機系統(tǒng),還是小、中、大型計算機系統(tǒng).要把數(shù)據(jù)、程序送人計算機或要把計算機的計算結(jié)果及各種信息送出來,都要通過外部設(shè)備來實現(xiàn)。因此,外部設(shè)備成為人機對話的通道。2.外部設(shè)備是完成數(shù)據(jù)媒體變換的設(shè)備人們習(xí)慣用字符、漢字、圖形、圖像等來表達信息的含義,而計算機內(nèi)部卻是以電信號表示的二進制代碼。3.外部設(shè)備是計算機系統(tǒng)軟件和信息的駐在地隨著計算機技術(shù)的發(fā)展,系統(tǒng)軟件、數(shù)據(jù)庫和待處理的信息量越來越大,不可能全部存放在主存中,因此,以磁盤存儲器或光盤存儲器為代表的輔助存儲器已成為系統(tǒng)軟件、數(shù)據(jù)庫及各種信息的駐在地。4.外部設(shè)備是計

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論