




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1.1 計(jì)算機(jī)系統(tǒng)簡(jiǎn)介,由具有各類特殊功能 的信息(程序)組成,1. 計(jì)算機(jī)系統(tǒng),計(jì)算機(jī)系統(tǒng),計(jì)算機(jī)的實(shí)體, 如主機(jī)、外設(shè)等,一、 計(jì)算機(jī)的軟硬件概念,二、計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu),高級(jí)語(yǔ)言,虛擬機(jī)器 M3,匯編語(yǔ)言,虛擬機(jī)器 M2,機(jī)器語(yǔ)言,實(shí)際機(jī)器 M1,微指令系統(tǒng),微程序機(jī)器 M0,1.1,用編譯程序翻譯 成匯編語(yǔ)言程序,用匯編程序翻譯 成機(jī)器語(yǔ)言程序,用機(jī)器語(yǔ)言解釋操作系統(tǒng),用微指令解釋機(jī)器指令,由硬件直接執(zhí)行微指令,1.1,1.2 計(jì)算機(jī)的基本組成,1. 計(jì)算機(jī)由五大部件組成,3. 指令和數(shù)據(jù)用二進(jìn)制表示,4. 指令由操作碼和地址碼組成,6. 以運(yùn)算器為中心,5. 存儲(chǔ)程序,一、馮諾依曼
2、計(jì)算機(jī)的特點(diǎn),5. 存儲(chǔ)程序,算術(shù)運(yùn)算 邏輯運(yùn)算,存放數(shù)據(jù) 和程序,將信息轉(zhuǎn)換成機(jī) 器能識(shí)別的形式,將結(jié)果轉(zhuǎn)換成 人們熟悉的形式,指揮程序 運(yùn)行,1.2,馮諾依曼計(jì)算機(jī)硬件框圖,ALU,主存 輔存,CPU,主機(jī),I/O設(shè)備,硬件,CU,2.現(xiàn)代計(jì)算機(jī)硬件框圖,1.2,存儲(chǔ)體,大樓,存儲(chǔ)單元 存放一串二進(jìn)制代碼,存儲(chǔ)字 存儲(chǔ)單元中二進(jìn)制代碼的組合,存儲(chǔ)字長(zhǎng) 存儲(chǔ)單元中二進(jìn)制代碼的位數(shù),每個(gè)存儲(chǔ)單元賦予一個(gè)地址號(hào),按地址尋訪, 存儲(chǔ)單元, 存儲(chǔ)元件,(0/1), 房間, 床位,(無(wú)人/ 有人),(1)存儲(chǔ)器的基本組成,1.2,2.計(jì)算機(jī)的工作過(guò)程,MAR,MDR,1.2,存儲(chǔ)器地址寄存器 反映存儲(chǔ)
3、單元的個(gè)數(shù),存儲(chǔ)器數(shù)據(jù)寄存器 反映存儲(chǔ)字長(zhǎng),(1)存儲(chǔ)器的基本組成,(2)運(yùn)算器的基本組成及操作過(guò)程,1.2,被加數(shù),被減數(shù),被除數(shù),乘數(shù),商,加數(shù),減數(shù),被乘數(shù),除數(shù),加法,減法,乘法,除法,和,差,余數(shù), 加法操作過(guò)程,1.2,1.2, 減法操作過(guò)程,1.2, 乘法操作過(guò)程,1.2, 除法操作過(guò)程,取指令,分析指令,執(zhí)行指令,PC,IR,CU,取指,執(zhí)行,IR 存放當(dāng)前欲執(zhí)行的指令,訪存,訪存,完成 一條 指令,1.2,(3)控制器的基本組成,15,以取數(shù)指令為例,(4)主機(jī)完成一條指令的過(guò)程,1.2,以存數(shù)指令為例,1.2,(4)主機(jī)完成一條指令的過(guò)程,(5) ax2 + bx + c
4、程序的運(yùn)行過(guò)程,將程序通過(guò)輸入設(shè)備送至計(jì)算機(jī),程序首地址,打印結(jié)果,分析指令,取指令,停機(jī),啟動(dòng)程序運(yùn)行,執(zhí)行指令,1.2,MAR,M,MDR,IR,PC,CU,OP(IR),Ad(IR),MAR,M,MDR,ACC,PC,1.3 計(jì)算機(jī)硬件的主要技術(shù)指標(biāo),1.機(jī)器字長(zhǎng),CPU 一次能處理數(shù)據(jù)的位數(shù) 與 CPU 中的 寄存器位數(shù) 有關(guān),221 = 256 KB,3.存儲(chǔ)容量,主存容量,輔存容量,存儲(chǔ)單元個(gè)數(shù) 存儲(chǔ)字長(zhǎng),字節(jié)數(shù),字節(jié)數(shù) 80 GB,如 MAR MDR 容量,10 8,16 32,存放二進(jìn)制信息的總位數(shù),1.3,1 K 8位,64 K 32位,第章 系統(tǒng)總線,3.1 總線的基本概念
5、,3.2 總線的分類,3.3 總線特性及性能指標(biāo),3.4 總線結(jié)構(gòu),3.5 總線控制,3.1 總線的基本概念,一、為什么要用總線,二、什么是總線,三、總線上信息的傳送,串行,并行,四、總線結(jié)構(gòu)的計(jì)算機(jī)舉例,1. 面向 CPU 的雙總線結(jié)構(gòu)框圖,中央處理器 CPU,3.1,2. 單總線結(jié)構(gòu)框圖,3.1,3. 以存儲(chǔ)器為中心的雙總線結(jié)構(gòu)框圖,主存,3.1,3.2 總線的分類,1.片內(nèi)總線,2.系統(tǒng)總線,芯片內(nèi)部 的總線,雙向 與機(jī)器字長(zhǎng)、存儲(chǔ)字長(zhǎng)有關(guān),單向 與存儲(chǔ)地址、 I/O地址有關(guān),有出 有入,計(jì)算機(jī)各部件之間 的信息傳輸線,存儲(chǔ)器讀、存儲(chǔ)器寫(xiě) 總線允許、中斷確認(rèn),中斷請(qǐng)求、總線請(qǐng)求,3.通信
6、總線,串行通信總線,并行通信總線,傳輸方式,3.2,三、總線的性能指標(biāo),數(shù)據(jù)線 的根數(shù),每秒傳輸?shù)淖畲笞止?jié)數(shù)(MBps),同步、不同步,地址線 與 數(shù)據(jù)線 復(fù)用,地址線、數(shù)據(jù)線和控制線的 總和,負(fù)載能力,并發(fā)、自動(dòng)、仲裁、邏輯、計(jì)數(shù),3.3,3.4 總線結(jié)構(gòu),一、單總線結(jié)構(gòu),1. 雙總線結(jié)構(gòu),具有特殊功能的處理器, 由通道對(duì)I/O統(tǒng)一管理,二、多總線結(jié)構(gòu),3.4,2. 三總線結(jié)構(gòu),3.4,3. 三總線結(jié)構(gòu)的又一形式,3.4,4. 四總線結(jié)構(gòu),3.4,3.5 總線控制,一、總線判優(yōu)控制,總線判優(yōu)控制,分布式,集中式,1. 基本概念,鏈?zhǔn)讲樵?計(jì)數(shù)器定時(shí)查詢,獨(dú)立請(qǐng)求方式,二、總線通信控制,1.
7、目的,2. 總線傳輸周期,主模塊申請(qǐng),總線仲裁決定,主模塊向從模塊 給出地址 和 命令,主模塊和從模塊 交換數(shù)據(jù),主模塊 撤消有關(guān)信息,解決通信雙方 協(xié)調(diào)配合 問(wèn)題,3.5,由 統(tǒng)一時(shí)標(biāo) 控制數(shù)據(jù)傳送,充分 挖掘 系統(tǒng) 總線每個(gè)瞬間 的 潛力,3. 總線通信的四種方式,采用 應(yīng)答方式 ,沒(méi)有公共時(shí)鐘標(biāo)準(zhǔn),同步、異步結(jié)合,3.5,(1) 同步式數(shù)據(jù)輸入,3.5,(2) 同步式數(shù)據(jù)輸出,3.5,不互鎖,半互鎖,全互鎖,(3) 異步通信,3.5,(4) 半同步通信,3.5,(同步、異步 結(jié)合),以輸入數(shù)據(jù)為例的半同步通信時(shí)序,T1 主模塊發(fā)地址,T2 主模塊發(fā)命令,T3 從模塊提供數(shù)據(jù),T4 從模塊
8、撤銷數(shù)據(jù),主模塊撤銷命令,3.5,3.5,上述三種通信的共同點(diǎn),一個(gè)總線傳輸周期(以輸入數(shù)據(jù)為例),主模塊發(fā)地址 、命令,從模塊準(zhǔn)備數(shù)據(jù),從模塊向主模塊發(fā)數(shù)據(jù),總線空閑,3.5,占用總線,不占用總線,占用總線,第章 存 儲(chǔ) 器,4.1 概述,4.2 主存儲(chǔ)器,4.3 高速緩沖存儲(chǔ)器,4.4 輔助存儲(chǔ)器,4.1 概 述,一、存儲(chǔ)器分類,1. 按存儲(chǔ)介質(zhì)分類,(1) 半導(dǎo)體存儲(chǔ)器,(2) 磁表面存儲(chǔ)器,(3) 磁芯存儲(chǔ)器,(4) 光盤(pán)存儲(chǔ)器,易失,TTL 、MOS,磁頭、載磁體,硬磁材料、環(huán)狀元件,激光、磁光材料,(1) 存取時(shí)間與物理地址無(wú)關(guān)(隨機(jī)訪問(wèn)),順序存取存儲(chǔ)器 磁帶,4.1,2. 按存
9、取方式分類,(2) 存取時(shí)間與物理地址有關(guān)(串行訪問(wèn)),隨機(jī)存儲(chǔ)器,只讀存儲(chǔ)器,直接存取存儲(chǔ)器 磁盤(pán),在程序的執(zhí)行過(guò)程中 可 讀 可 寫(xiě),在程序的執(zhí)行過(guò)程中 只 讀,磁盤(pán)、磁帶、光盤(pán),高速緩沖存儲(chǔ)器(Cache),Flash Memory,存 儲(chǔ) 器,3. 按在計(jì)算機(jī)中的作用分類,4.1,高,小,快,1. 存儲(chǔ)器三個(gè)主要特性的關(guān)系,二、存儲(chǔ)器的層次結(jié)構(gòu),4.1,虛擬存儲(chǔ)器,虛地址,邏輯地址,實(shí)地址,物理地址,主存儲(chǔ)器,4.1,(速度),(容量),4.2 主存儲(chǔ)器,一、概述,1. 主存的基本組成,2. 主存和 CPU 的聯(lián)系,4.2,高位字節(jié) 地址為字地址,低位字節(jié) 地址為字地址,設(shè)地址線 24
10、 根,按 字節(jié) 尋址,按 字 尋址,若字長(zhǎng)為 16 位,按 字 尋址,若字長(zhǎng)為 32 位,3. 主存中存儲(chǔ)單元地址的分配,4.2,224 = 16 M,8 M,4 M,(2) 存儲(chǔ)速度,4. 主存的技術(shù)指標(biāo),(1) 存儲(chǔ)容量,(3) 存儲(chǔ)器的帶寬,主存 存放二進(jìn)制代碼的總位數(shù),讀出時(shí)間 寫(xiě)入時(shí)間,存儲(chǔ)器的 訪問(wèn)時(shí)間,讀周期 寫(xiě)周期,位/秒,4.2,(4) 動(dòng)態(tài) RAM 刷新,刷新與行地址有關(guān),“死時(shí)間率” 為 128/4 000 100% = 3.2%,“死區(qū)” 為 0.5 s 128 = 64 s,4.2,以128 128 矩陣為例,tC = tM + tR,無(wú) “死區(qū)”, 分散刷新(存取周
11、期為1 s ),(存取周期為 0.5 s + 0.5 s ),4.2,以 128 128 矩陣為例, 分散刷新與集中刷新相結(jié)合(異步刷新),對(duì)于 128 128 的存儲(chǔ)芯片(存取周期為 0.5 s ),將刷新安排在指令譯碼階段,不會(huì)出現(xiàn) “死區(qū)”,“死區(qū)” 為 0.5 s,若每隔 15.6 s 刷新一行,每行每隔 2 ms 刷新一次,4.2,3. 動(dòng)態(tài) RAM 和靜態(tài) RAM 的比較,存儲(chǔ)原理,集成度,芯片引腳,功耗,價(jià)格,速度,刷新,4.2,四、只讀存儲(chǔ)器(ROM),1. 掩模 ROM ( MROM ),2. PROM (一次性編程),4.2,3. EPROM (多次性編程 ),4. EEP
12、ROM (多次性編程 ),5. Flash Memory (閃速型存儲(chǔ)器),用 1K 4位 存儲(chǔ)芯片組成 1K 8位 的存儲(chǔ)器,?片,五、存儲(chǔ)器與 CPU 的連接,1. 存儲(chǔ)器容量的擴(kuò)展,4.2,2片,(2) 字?jǐn)U展(增加存儲(chǔ)字的數(shù)量),用 1K 8位 存儲(chǔ)芯片組成 2K 8位 的存儲(chǔ)器,4.2,?片,2片,(3) 字、位擴(kuò)展,用 1K 4位 存儲(chǔ)芯片組成 4K 8位 的存儲(chǔ)器,4.2,?片,8片,2. 存儲(chǔ)器與 CPU 的連接,(1) 地址線的連接,(2) 數(shù)據(jù)線的連接,(3) 讀/寫(xiě)命令線的連接,(4) 片選線的連接,(5) 合理選擇存儲(chǔ)芯片,(6) 其他 時(shí)序、負(fù)載,4.2,例4.1 解
13、:,(1) 寫(xiě)出對(duì)應(yīng)的二進(jìn)制地址碼,(2) 確定芯片的數(shù)量及類型,A15A14A13 A11 A10 A7 A4 A3 A0,4.2,(3) 分配地址線,A10 A0 接 2K 8位 ROM 的地址線,A9 A0 接 1K 4位 RAM 的地址線,(4) 確定片選信號(hào),4.2,例 4.1 CPU 與存儲(chǔ)器的連接圖,4.2,(1) 寫(xiě)出對(duì)應(yīng)的二進(jìn)制地址碼,(2) 確定芯片的數(shù)量及類型,(3) 分配地址線,(4) 確定片選信號(hào),1片 4K 8位 ROM 2片 4K 8位 RAM,A11 A0 接 ROM 和 RAM 的地址線,4.2,用 138 譯碼器及其他門(mén)電路(門(mén)電路自定)畫(huà)出 CPU和 27
14、64 的連接圖。要求地址為 F0000HFFFFFH , 并 寫(xiě)出每片 2764 的地址范圍。,4.2,六、存儲(chǔ)器的校驗(yàn),編碼的糾錯(cuò) 、檢錯(cuò)能力與編碼的最小距離有關(guān),L 編碼的最小距離,D 檢測(cè)錯(cuò)誤的位數(shù),C 糾正錯(cuò)誤的位數(shù),漢明碼是具有一位糾錯(cuò)能力的編碼,4.2,1 . 編碼的最小距離,任意兩組合法代碼之間 二進(jìn)制位數(shù) 的 最少差異,漢明碼的組成需增添 ?位檢測(cè)位,檢測(cè)位的位置 ?,檢測(cè)位的取值 ?,2k n + k + 1,檢測(cè)位的取值與該位所在的檢測(cè)“小組” 中 承擔(dān)的奇偶校驗(yàn)任務(wù)有關(guān),組成漢明碼的三要素,4.2,2 . 漢明碼的組成,各檢測(cè)位 Ci 所承擔(dān)的檢測(cè)小組為,gi 小組獨(dú)占第
15、 2i1 位,gi 和 gj 小組共同占第 2i1 + 2j1 位,gi、gj 和 gl 小組共同占第 2i1 + 2j1 + 2l1 位,4.2,例4.4,求 0101 按 “偶校驗(yàn)” 配置的漢明碼,解:, n = 4,根據(jù) 2k n + k + 1,得 k = 3,漢明碼排序如下:,C1 C2 C4,0, 0101 的漢明碼為 0100101,4.2,1,0,按配偶原則配置 0011 的漢明碼,C1 C2 C4,1 0 0,解:, n = 4 根據(jù) 2k n + k + 1,取 k = 3, 0011 的漢明碼為 1000011,練習(xí)1,4.2,3. 漢明碼的糾錯(cuò)過(guò)程,形成新的檢測(cè)位 Pi
16、 ,,如增添 3 位 (k = 3),,新的檢測(cè)位為 P4 P2 P1 。,以 k = 3 為例,Pi 的取值為,對(duì)于按 “偶校驗(yàn)” 配置的漢明碼,不出錯(cuò)時(shí) P1= 0,P2 = 0,P4 = 0,C1,C2,C4,其位數(shù)與增添的檢測(cè)位有關(guān),,4.2,無(wú)錯(cuò),有錯(cuò),有錯(cuò),P4P2P1 = 110,第 6 位出錯(cuò),可糾正為 0100101, 故要求傳送的信息為 0101。,糾錯(cuò)過(guò)程如下,例4.5,解:,4.2,練習(xí)2, P4 P2 P1 = 100,第 4 位錯(cuò),可不糾,配奇的漢明碼為 0101011,4.2,七、提高訪存速度的措施,采用高速器件,調(diào)整主存結(jié)構(gòu),1. 單體多字系統(tǒng),采用層次結(jié)構(gòu) C
17、ache 主存,增加存儲(chǔ)器的帶寬,4.2,2. 多體并行系統(tǒng),(1) 高位交叉,4.2,順序編址,各個(gè)體并行工作,4.2,體號(hào),(1) 高位交叉,4.2,(2) 低位交叉,各個(gè)體輪流編址,4.2,體號(hào),(2) 低位交叉 各個(gè)體輪流編址,(3) 存儲(chǔ)器控制部件(簡(jiǎn)稱存控),易發(fā)生代碼 丟失的請(qǐng)求源,優(yōu)先級(jí) 最高,嚴(yán)重影響 CPU 工作的請(qǐng)求源, 給予 次高 優(yōu)先級(jí),4.2,4.3 高速緩沖存儲(chǔ)器,一、概述,1. 問(wèn)題的提出,避免 CPU “空等” 現(xiàn)象,CPU 和主存(DRAM)的速度差異,容量小 速度高,容量大 速度低,程序訪問(wèn)的局部性原理,2. Cache 的工作原理,(1) 主存和緩存的編
18、址,主存和緩存按塊存儲(chǔ) 塊的大小相同,B 為塊長(zhǎng),4.3,(2) 命中與未命中,M C,主存塊 調(diào)入 緩存,主存塊與緩存塊 建立 了對(duì)應(yīng)關(guān)系,用 標(biāo)記記錄 與某緩存塊建立了對(duì)應(yīng)關(guān)系的 主存塊號(hào),主存塊與緩存塊 未建立 對(duì)應(yīng)關(guān)系,主存塊 未調(diào)入 緩存,4.3,(3) Cache 的命中率,CPU 欲訪問(wèn)的信息在 Cache 中的 比率,命中率 與 Cache 的 容量 與 塊長(zhǎng) 有關(guān),一般每塊可取 4 8 個(gè)字,塊長(zhǎng)取一個(gè)存取周期內(nèi)從主存調(diào)出的信息長(zhǎng)度,CRAY_1 16體交叉 塊長(zhǎng)取 16 個(gè)存儲(chǔ)字,IBM 370/168 4體交叉 塊長(zhǎng)取 4 個(gè)存儲(chǔ)字,(64位4 = 256位),4.3,(
19、4) Cache 主存系統(tǒng)的效率,效率 e 與 命中率 有關(guān),設(shè) Cache 命中率 為 h,訪問(wèn) Cache 的時(shí)間為 tc , 訪問(wèn) 主存 的時(shí)間為 tm,4.3,3. Cache 的基本結(jié)構(gòu),4.3,Cache 替換機(jī)構(gòu),Cache 存儲(chǔ)體,主存Cache 地址映射 變換機(jī)構(gòu),由CPU完成,4. Cache 的 讀寫(xiě) 操作,讀,4.3,Cache 和主存的一致性,4.3,寫(xiě)直達(dá)法(Write through),寫(xiě)回法(Write back),寫(xiě)操作時(shí)數(shù)據(jù)既寫(xiě)入Cache又寫(xiě)入主存,寫(xiě)操作時(shí)只把數(shù)據(jù)寫(xiě)入 Cache 而不寫(xiě)入主存 當(dāng) Cache 數(shù)據(jù)被替換出去時(shí)才寫(xiě)回主存,寫(xiě)操作時(shí)間就是訪
20、問(wèn)主存的時(shí)間,讀操作時(shí)不 涉及對(duì)主存的寫(xiě)操作,更新策略比較容易實(shí)現(xiàn),寫(xiě)操作時(shí)間就是訪問(wèn) Cache 的時(shí)間, 讀操作 Cache 失效發(fā)生數(shù)據(jù)替換時(shí), 被替換的塊需寫(xiě)回主存,增加了 Cache 的復(fù)雜性,5. Cache 的改進(jìn),(1) 增加 Cache 的級(jí)數(shù),片載(片內(nèi))Cache,片外 Cache,(2) 統(tǒng)一緩存和分立緩存,指令 Cache,數(shù)據(jù) Cache,與主存結(jié)構(gòu)有關(guān),與指令執(zhí)行的控制方式有關(guān),是否流水,Pentium 8K 指令 Cache 8K 數(shù)據(jù) Cache,PowerPC620 32K 指令 Cache 32K 數(shù)據(jù) Cache,4.3,二、Cache 主存的地址映射,
21、1. 直接映射,每個(gè)緩存塊 i 可以和 若干 個(gè) 主存塊 對(duì)應(yīng),每個(gè)主存塊 j 只能和 一 個(gè) 緩存塊 對(duì)應(yīng),i = j mod C,4.3,2. 全相聯(lián)映射,主存 中的 任一塊 可以映射到 緩存 中的 任一塊,4.3,某一主存塊 j 按模 Q 映射到 緩存 的第 i 組中的 任一塊,i = j mod Q,3. 組相聯(lián)映射,4.3,三、替換算法,1. 先進(jìn)先出 ( FIFO )算法,2. 近期最少使用( LRU)算法,小結(jié),某一 主存塊 只能固定 映射到 某一 緩存塊,某一 主存塊 能 映射到 任一 緩存塊,某一 主存塊 只能 映射到 某一 緩存 組 中的 任一塊,不靈活,成本高,4.3,第
22、章 輸入輸出系統(tǒng),5.6 DMA方式,5.5 程序中斷方式,5.4 程序查詢方式,5.3 I/O接口,5.2 外部設(shè)備,5.1 概述,5.1 概 述,一、輸入輸出系統(tǒng)的發(fā)展概況,1. 早期,分散連接,CPU 和 I/O設(shè)備 串行 工作,程序查詢方式,2. 接口模塊和 DMA 階段,總線連接,CPU 和 I/O設(shè)備 并行 工作,3. 具有通道結(jié)構(gòu)的階段,4. 具有 I/O 處理機(jī)的階段,中斷方式,DMA 方式,三、I/O 設(shè)備與主機(jī)的聯(lián)系方式,1. I/O 設(shè)備編址方式,(1) 統(tǒng)一編址,(2) 不統(tǒng)一編址,用取數(shù)、存數(shù)指令,有專門(mén)的 I/O 指令,2. 設(shè)備選址,用設(shè)備選擇電路識(shí)別是否被選中,
23、3. 傳送方式,(1) 串行,(2) 并行,5.1,4. 聯(lián)絡(luò)方式,(1) 立即響應(yīng),(2) 異步工作采用應(yīng)答信號(hào),(3) 同步工作采用同步時(shí)標(biāo),5.1,并行,串行,5. I/O 設(shè)備與主機(jī)的連接方式,(1) 輻射式連接,(2) 總線連接,不便于增刪設(shè)備,5.1,便于增刪設(shè)備,四、I/O設(shè)備與主機(jī)信息傳送的控制方式,1. 程序查詢方式,CPU 和 I/O 串行工作,踏步等待,5.1,2. 程序中斷方式,I/O 工作,CPU 不查詢,CPU 暫?,F(xiàn)行程序,CPU 和 I/O 并行工作,5.1,程序中斷方式流程,CPU 向 I/O 發(fā)讀指令,CPU 讀 I/O 狀態(tài),檢查狀態(tài),完成否?,準(zhǔn)備就緒,
24、5.1,3. DMA 方式,主存和 I/O 之間有一條直接數(shù)據(jù)通道,不中斷現(xiàn)行程序,周期挪用(周期竊?。?CPU 和 I/O 并行工作,5.1,三種方式的 CPU 工作效率比較,程序 查詢 方式,程序 中斷 方式,DMA 方式,5.1,5.3 I/O 接 口,一、概述,為什么要設(shè)置接口?,1. 實(shí)現(xiàn)設(shè)備的選擇,2. 實(shí)現(xiàn)數(shù)據(jù)緩沖達(dá)到速度匹配,4. 實(shí)現(xiàn)電平轉(zhuǎn)換,5. 傳送控制命令,6. 反映設(shè)備的狀態(tài)(“忙”、“就緒”、“中斷請(qǐng)求”),二、接口的功能和組成,總線連接方式的 I/O 接口電路,5.3,2. 接口的功能和組成,功能,組成,選址功能,傳送命令的功能,傳送數(shù)據(jù)的功能,反映設(shè)備狀態(tài)的功能
25、,設(shè)備選擇電路,命令寄存器、命令譯碼器,數(shù)據(jù)緩沖寄存器,設(shè)備狀態(tài)標(biāo)記,完成觸發(fā)器 D,工作觸發(fā)器 B,中斷請(qǐng)求觸發(fā)器 INTR,屏蔽觸發(fā)器 MASK,5.3,3. I/O 接口的基本組成,5.3,三、接口類型,1. 按數(shù)據(jù) 傳送方式 分類,2. 按功能 選擇的靈活性 分類,3. 按 通用性 分類,4. 按數(shù)據(jù)傳送的 控制方式 分類,5.3,5.4 程序查詢方式,一、程序查詢流程,1. 查詢流程,單個(gè)設(shè)備,多個(gè)設(shè)備,測(cè) 試 指 令,轉(zhuǎn) 移 指 令,傳 送 指 令,2. 程序流程,設(shè)置主存緩沖區(qū)首址,設(shè)置計(jì)數(shù)值,啟動(dòng)外設(shè),傳送一個(gè)數(shù)據(jù),修改主存地址,修改計(jì)數(shù)值,結(jié)束I/O傳送,5.4,保存 寄存器
26、內(nèi)容,5.5 程序中斷方式,一、中斷的概念,K,K+1,Q,Q+1,二、I/O 中斷的產(chǎn)生,以打印機(jī)為例,CPU 與打印機(jī)并行工作,5.5,2. 排隊(duì)器,排隊(duì),在 CPU 內(nèi)或在接口電路中(鏈?zhǔn)脚抨?duì)器),硬件,軟件,5.5,詳見(jiàn)第八章,設(shè)備 1#、2#、3#、4# 優(yōu)先級(jí)按 降序排列,5.5,3. 中斷向量地址形成部件,入口地址,設(shè)備 編碼器,詳見(jiàn)第八章,5.5,4. 程序中斷方式接口電路的基本組成,5.5,四、I/O 中斷處理過(guò)程,1. CPU 響應(yīng)中斷的條件和時(shí)間,(1) 條件,(2) 時(shí)間,允許中斷觸發(fā)器 EINT = 1,用 開(kāi)中斷 指令將 EINT 置 “1”,用 關(guān)中斷 指令將 E
27、INT 置“ 0” 或硬件 自動(dòng)復(fù)位,當(dāng) D = 1(隨機(jī))且 MASK = 0 時(shí),在每條指令執(zhí)行階段的結(jié)束前,CPU 發(fā) 中斷查詢信號(hào)(將 INTR 置“1”),5.5,2. I/O 中斷處理過(guò)程,DBR,設(shè)備選擇電路,以輸入為例,5.5,五、中斷服務(wù)程序流程,1. 中斷服務(wù)程序的流程,(1) 保護(hù)現(xiàn)場(chǎng),(2) 中斷服務(wù),(3) 恢復(fù)現(xiàn)場(chǎng),(4) 中斷返回,對(duì)不同的 I/O 設(shè)備具有不同內(nèi)容的設(shè)備服務(wù),中斷返回指令,2. 單重中斷和多重中斷,不允許中斷 現(xiàn)行的 中斷服務(wù)程序,中斷隱指令完成,進(jìn)棧指令,出棧指令,5.5,3. 單重中斷和多重中斷的服務(wù)程序流程,中斷隱指令,中斷隱指令,單重,多
28、重,5.5,第章 計(jì)算機(jī)的運(yùn)算方法,6.1 無(wú)符號(hào)數(shù)和有符號(hào)數(shù),6.3 定點(diǎn)運(yùn)算,6.2 數(shù)的定點(diǎn)表示和浮點(diǎn)表示,6.4 浮點(diǎn)四則運(yùn)算,6.5 算術(shù)邏輯單元,6.1 無(wú)符號(hào)數(shù)和有符號(hào)數(shù),一、無(wú)符號(hào)數(shù),8 位 0 255,16 位 0 65535,帶符號(hào)的數(shù) 符號(hào)數(shù)字化的數(shù),+ 0.1011,+ 1100, 1100, 0.1011,真值 機(jī)器數(shù),1. 機(jī)器數(shù)與真值,二、有符號(hào)數(shù),6.1,2. 原碼表示法,帶符號(hào)的絕對(duì)值表示,(1) 定義,整數(shù),x 為真值,n 為其位數(shù),如,x = +1110,x原 = 0 , 1110,x原 = 24 + 1110 = 1 , 1110,用 逗號(hào) 將符號(hào)位 和
29、數(shù)值部分隔開(kāi),6.1,小數(shù),x 為真值,如,x = + 0.1101,x原 = 0 . 1101,x = + 0.1000000,x原 = 0 . 1000000,用 小數(shù)點(diǎn) 將符號(hào) 位和數(shù)值部分隔開(kāi),用 小數(shù)點(diǎn) 將符號(hào) 位和數(shù)值部分隔開(kāi),6.1,(2) 舉例,例 6.1 已知 x原 = 1.0011 求 x,解:,例 6.2 已知 x原 = 1,1100 求 x,解:,0.0011,1100,由定義得,由定義得,6.1,例 6.4 求 x = 0 的原碼,解:,設(shè) x = + 0.0000,例 6.3 已知 x原 = 0.1101 求 x,解:, x = + 0.1101,同理,對(duì)于整數(shù),+
30、 0 原 = 0,0000,+ 0.0000原 = 0.0000,根據(jù) 定義 x原 = 0.1101,6.1,原碼的特點(diǎn):,簡(jiǎn)單、直觀,但是用原碼作加法時(shí),會(huì)出現(xiàn)如下問(wèn)題:,能否 只作加法 ?,加法 正 正,加,加法 正 負(fù),加法 負(fù) 正,加法 負(fù) 負(fù),減,減,加,正,可正可負(fù),可正可負(fù),負(fù),6.1,(1) 補(bǔ)的概念,時(shí)鐘,逆時(shí)針,順時(shí)針,3. 補(bǔ)碼表示法,時(shí)鐘以 12為模,6.1,結(jié)論,一個(gè)負(fù)數(shù)加上 “?!?即得該負(fù)數(shù)的補(bǔ)數(shù),一個(gè)正數(shù)和一個(gè)負(fù)數(shù)互為補(bǔ)數(shù)時(shí) 它們絕對(duì)值之和即為 模 數(shù),計(jì)數(shù)器(模 16),1011,0000,1011,10000,6.1,(mod 23), + 101,(mod
31、 2), + 1.0111,(mod24),(2) 正數(shù)的補(bǔ)數(shù)即為其本身,兩個(gè)互為補(bǔ)數(shù)的數(shù),分別加上模,結(jié)果仍互為補(bǔ)數(shù), + 0101 + 0101,+ 0101,24+1 1011,1,0101,用 逗號(hào) 將符號(hào)位 和數(shù)值部分隔開(kāi),(mod24),可見(jiàn),?,+ 0101,0101,0101,1011,0101,+,(mod24+1),6.1,100000,=,(3) 補(bǔ)碼定義,整數(shù),x 為真值,n 為其位數(shù),如,x = +1010,=,x補(bǔ) = 0,1010,1,0101000,用 逗號(hào) 將符號(hào)位 和數(shù)值部分隔開(kāi),6.1,1011000,100000000,小數(shù),x 為真值,x = + 0.
32、1110,如,x補(bǔ) = 0.1110,1.0100000,=,6.1,(4) 求補(bǔ)碼的快捷方式,= 100000,= 1,0110,10101 + 1,= 1,0110,又x原 = 1,1010,6.1,+ 1,(5) 舉例,解:,x = + 0.0001,解:由定義得,x = x補(bǔ) 2,= 1.0001 10.0000,x原 = 1.1111,由定義得,6.1,例 6.7,解:,x = x補(bǔ) 24+1,= 1,1110 100000,x原 = 1,0010,由定義得,6.1,真值,0, 1000110,1, 0111010,0.1110,1.0010,0.0000,0.0000,1.0000
33、,0,1000110,1,1000110,0.1110,1.1110,0.0000,1.0000,不能表示,練習(xí),求下列真值的補(bǔ)碼,由小數(shù)補(bǔ)碼定義,= 1000110,x補(bǔ) x原,6.1,4. 反碼表示法,(1) 定義,整數(shù),如,x = +1101,x反 = 0,1101,= 1,0010,x 為真值,n 為其位數(shù),6.1,小數(shù),x = + 0.1101,x反 = 0.1101,= 1.0101,如,x 為真值,6.1,n 為小數(shù)的位數(shù),(2) 舉例,例 6.10 求 0 的反碼,設(shè) x = + 0.0000,+0.0000反= 0.0000,解:,同理,對(duì)于整數(shù),+0反= 0,0000,例6
34、.9 已知 x反 = 1,1110 求 x,例6.8 已知 x反 = 0,1110 求 x,解:,由定義得 x = + 1110,解:,6.1,三種機(jī)器數(shù)的小結(jié),對(duì)于正數(shù),原碼 = 補(bǔ)碼 = 反碼,6.1,例6.11,-0,-1,-128,-127,-127,-126,-3,-2,-1,6.1,設(shè)機(jī)器數(shù)字長(zhǎng)為 8 位(其中位為符號(hào)位) 對(duì)于整數(shù),當(dāng)其分別代表無(wú)符號(hào)數(shù)、原碼、補(bǔ)碼和 反碼時(shí),對(duì)應(yīng)的真值范圍各為多少?,例6.12,解:,6.1,5. 移碼表示法,補(bǔ)碼表示很難直接判斷其真值大小,如,十進(jìn)制,x + 25,+10101 + 100000,+11111 + 100000,錯(cuò),錯(cuò),正確,正
35、確,0,10101,1,01011,0,11111,1,00001,+10101, 10101,+11111, 11111,= 110101,= 001011,= 111111,= 000001,二進(jìn)制,補(bǔ)碼,6.1,(1) 移碼定義,x 為真值,n 為 整數(shù)的位數(shù),移碼在數(shù)軸上的表示,如,x = 10100,x移 = 25 + 10100,用 逗號(hào) 將符號(hào)位 和數(shù)值部分隔開(kāi),x = 10100,x移 = 25 10100,= 1,10100,= 0,01100,6.1,(2) 移碼和補(bǔ)碼的比較,設(shè) x = +1100100,x移 = 27 + 1100100,x補(bǔ) = 0,1100100,設(shè)
36、 x = 1100100,x移 = 27 1100100,x補(bǔ) = 1,0011100,補(bǔ)碼與移碼只差一個(gè)符號(hào)位,= 1,1100100,= 0,0011100,1,0,0,1,6.1,(3) 真值、補(bǔ)碼和移碼的對(duì)照表,- 1 0 0 0 0 0, 0 0 0 0 0,+ 1 1 1 1 1,0 0 0 0 0 0,1 1 1 1 1 1,0 0 0 0 0 0,1 0 0 0 0 0,6.1,當(dāng) x = 0 時(shí),+0移 = 25 + 0,當(dāng) n = 5 時(shí),可見(jiàn),最小真值的移碼為全 0,(4) 移碼的特點(diǎn),用移碼表示浮點(diǎn)數(shù)的階碼,能方便地判斷浮點(diǎn)數(shù)的階碼大小,= 1,00000,= 1,00
37、000,= 000000,6.1,6.2 數(shù)的定點(diǎn)表示和浮點(diǎn)表示,小數(shù)點(diǎn)按約定方式標(biāo)出,一、定點(diǎn)表示,定點(diǎn)機(jī),小數(shù)定點(diǎn)機(jī),整數(shù)定點(diǎn)機(jī),原碼,補(bǔ)碼,反碼,(1 2-n) +(1 2-n),(2n 1) +( 2n 1), 1 +(1 2-n), 2n +( 2n 1),(1 2-n) +(1 2-n),(2n 1) +( 2n 1),二、浮點(diǎn)表示,計(jì)算機(jī)中 r 取 2、4、8、16 等,當(dāng) r = 2,N = 11.0101,= 0.110101210,= 1.1010121,= 1101.012-10,= 0.001101012100,計(jì)算機(jī)中 S 小數(shù)、可正可負(fù),j 整數(shù)、可正可負(fù),規(guī)格化數(shù)
38、,6.2,1. 浮點(diǎn)數(shù)的表示形式,Sf 代表浮點(diǎn)數(shù)的符號(hào),n 其位數(shù)反映浮點(diǎn)數(shù)的精度,m 其位數(shù)反映浮點(diǎn)數(shù)的表示范圍,jf 和 m 共同表示小數(shù)點(diǎn)的實(shí)際位置,6.2,2. 浮點(diǎn)數(shù)的表示范圍,2( 2m1)( 1 2n),2( 2m1)2n,2( 2m1)( 1 2n),2( 2m1)2n,215 ( 1 2-10),2-15 2-10,215 ( 1 2-10),上溢 階碼 最大階碼 下溢 階碼 最小階碼 按 機(jī)器零 處理,6.2,2-15 2-10,練習(xí),設(shè)機(jī)器數(shù)字長(zhǎng)為 24 位,欲表示3萬(wàn)的十進(jìn)制數(shù),試問(wèn)在保證數(shù)的最大精度的前提下,除階符、數(shù)符各 取1 位外,階碼、尾數(shù)各取幾位?,滿足 最
39、大精度 可取 m = 4,n = 18,解:,6.2,3. 浮點(diǎn)數(shù)的規(guī)格化形式,r = 2,尾數(shù)最高位為 1,r = 4,尾數(shù)最高 2 位不全為 0,r = 8,尾數(shù)最高 3 位不全為 0,4. 浮點(diǎn)數(shù)的規(guī)格化,r = 2,左規(guī) 尾數(shù)左移 1 位,階碼減 1,右規(guī) 尾數(shù)右移 1 位,階碼加 1,r = 4,左規(guī) 尾數(shù)左移 2 位,階碼減 1,右規(guī) 尾數(shù)右移 2 位,階碼加 1,r = 8,左規(guī) 尾數(shù)左移 3 位,階碼減 1,右規(guī) 尾數(shù)右移 3 位,階碼加 1,基數(shù) r 越大,可表示的浮點(diǎn)數(shù)的范圍越大,基數(shù)不同,浮點(diǎn)數(shù)的 規(guī)格化形式不同,基數(shù) r 越大,浮點(diǎn)數(shù)的精度降低,6.2,例如:,最大正數(shù)
40、,= 215( 1210 ),最小正數(shù),最大負(fù)數(shù),最小負(fù)數(shù),= 21521,= 215( 12 10 ),= 216,= 21521,= 216,設(shè) m = 4,n = 10,r = 2,尾數(shù)規(guī)格化后的浮點(diǎn)數(shù)表示范圍,6.2,三、舉例,解:,二進(jìn)制形式,定點(diǎn)表示,浮點(diǎn)規(guī)格化形式,x原 = 1, 0010; 0. 1001100000,x補(bǔ) = 1, 1110; 0. 1001100000,x反 = 1, 1101; 0. 1001100000,定點(diǎn)機(jī)中,浮點(diǎn)機(jī)中,000,x = 0.0010011,x = 0.0010011,x = 0.10011000002-10,x原 = x補(bǔ) = x反
41、= 0.0010011000,6.2,x = 111010,0000,例 6.14,將 58 表示成二進(jìn)制定點(diǎn)數(shù)和浮點(diǎn)數(shù), 并寫(xiě)出它在定點(diǎn)機(jī)和浮點(diǎn)機(jī)中的三種機(jī)器數(shù)及階碼 為移碼、尾數(shù)為補(bǔ)碼的形式(其他要求同上例)。,解:,設(shè) x = 58,二進(jìn)制形式,定點(diǎn)表示,浮點(diǎn)規(guī)格化形式,x原 = 1, 0000111010,x補(bǔ) = 1, 1111000110,x反 = 1, 1111000101,x原 = 0, 0110; 1. 1110100000,x補(bǔ) = 0, 0110; 1. 0001100000,x反 = 0, 0110; 1. 0001011111,定點(diǎn)機(jī)中,浮點(diǎn)機(jī)中,x階移、尾補(bǔ) = 1
42、, 0110; 1. 0001100000,x = 111010,x = (0.1110100000) 2110,6.2,例6.15,寫(xiě)出對(duì)應(yīng)下圖所示的浮點(diǎn)數(shù)的補(bǔ)碼 形式。 設(shè) n = 10,m = 4, 階符、數(shù)符各取 1位。,解:,真值,最大正數(shù),最小正數(shù),最大負(fù)數(shù),最小負(fù)數(shù),215(1 210),215 210,215 210,215(1 210),0,1111; 0.1111111111,1,0001; 0.0000000001,1,0001; 1.1111111111,0,1111; 1.0000000001,補(bǔ)碼,6.2,當(dāng)浮點(diǎn)數(shù) 尾數(shù)為 0 時(shí),不論其階碼為何值 按機(jī)器零處理,機(jī)
43、器零,當(dāng)浮點(diǎn)數(shù) 階碼等于或小于它所表示的最小 數(shù) 時(shí),不論尾數(shù)為何值,按機(jī)器零處理,如 m = 4 n = 10,當(dāng)階碼用移碼,尾數(shù)用補(bǔ)碼表示時(shí),機(jī)器零為,有利于機(jī)器中“ 判 0 ” 電路的實(shí)現(xiàn),當(dāng)階碼和尾數(shù)都用補(bǔ)碼表示時(shí),機(jī)器零為,6.2,四、IEEE 754 標(biāo)準(zhǔn),符號(hào)位 S 階碼 尾數(shù) 總位數(shù),1 8 23 32,1 11 52 64,1 15 64 80,尾數(shù)為規(guī)格化表示,非 “0” 的有效位最高位為 “1”(隱含),6.2,6.3 定 點(diǎn) 運(yùn) 算,一、移位運(yùn)算,1. 移位的意義,15 m = 1500 cm,小數(shù)點(diǎn)右移 2 位,機(jī)器用語(yǔ),左移 絕對(duì)值擴(kuò)大,右移 絕對(duì)值縮小,在計(jì)算機(jī)中
44、,移位與加減配合,能夠?qū)崿F(xiàn)乘除運(yùn)算,2. 算術(shù)移位規(guī)則,1,右移 添 1,左移 添 0,0,反 碼,補(bǔ) 碼,原 碼,負(fù)數(shù),0,原碼、補(bǔ)碼、反碼,正數(shù),添補(bǔ)代碼,碼 制,符號(hào)位不變,6.3,右移兩位: 1.00001101,左移兩位: 1.11010000,負(fù)數(shù): x = 0.00110100,則 x原 = 1.00110100 x補(bǔ) = 1.11001100 x反 = 1.11001011,則 x原 = 1.00110100 x補(bǔ) = 1.11001100 x反 = 1.11001011,x原 x反 x補(bǔ),左移兩位: 1.11010000,右移兩位: 1.00001101,右移兩位: 1.11
45、110010,左移兩位: 1.00101111,左移兩位: 1.00101111,右移兩位: 1.11110010,右移兩位: 1.11110011,左移兩位: 1. 00110000,左移兩位: 1. 00110000,右移兩位: 1.11110011,例6.16,設(shè)機(jī)器數(shù)字長(zhǎng)為 8 位(含位符號(hào)位),寫(xiě)出 A = +26時(shí),三種機(jī)器數(shù)左、右移一位和兩位后的表示形式及對(duì)應(yīng)的真值,并分析結(jié)果的正確性。,解:,A = +26,則 A原 = A補(bǔ) = A反 = 0,0011010,+ 6,0,0000110,+13,0,0001101,+104,0,1101000,+ 52,0,0110100,+
46、26,0,0011010,移位前,= +11010,6.3,左移一位,左移兩位,右移一位,右移兩位,例6.17,設(shè)機(jī)器數(shù)字長(zhǎng)為 8 位(含位符號(hào)位),寫(xiě)出 A = 26時(shí),三種機(jī)器數(shù)左、右移一位和兩位后的表示形式及對(duì)應(yīng)的真值,并分析結(jié)果的正確性。,解:,A = 26, 6,1,0000110, 13,1,0001101, 104,1,1101000, 52,1,0110100, 26,1,0011010,移位前,原碼,= 11010,6.3,左移一位,左移兩位,右移一位,右移兩位, 6,1,1111001, 13,1,1110010, 104,1,0010111, 52,1,1001011,
47、26,1,1100101,移位前, 7,1,1111001, 13,1,1110011, 104,1,0011000, 52,1,1001100, 26,1,1100110,移位前,補(bǔ)碼,反碼,6.3,左移一位,左移兩位,右移一位,右移兩位,左移一位,左移兩位,右移一位,右移兩位,3. 算術(shù)移位的硬件實(shí)現(xiàn),(a)真值為正,(b)負(fù)數(shù)的原碼,(c)負(fù)數(shù)的補(bǔ)碼,(d)負(fù)數(shù)的反碼,出錯(cuò),影響精度,出錯(cuò),影響精度,正確,影響精度,正確,正確,6.3,4. 算術(shù)移位和邏輯移位的區(qū)別,算術(shù)移位,有符號(hào)數(shù)的移位,邏輯移位,無(wú)符號(hào)數(shù)的移位,邏輯左移,邏輯右移,低位添 0,高位移丟,高位添 0,低位移丟,例如
48、01010011,邏輯左移,10100110,邏輯右移,01011001,算術(shù)左移,算術(shù)右移,00100110,11011001(補(bǔ)碼),高位 1 移丟,10110010,6.3,二、加減法運(yùn)算,1. 補(bǔ)碼加減運(yùn)算公式,(1) 加法,(2) 減法,整數(shù),A補(bǔ) + B補(bǔ),= A+B補(bǔ)(mod 2n+1),小數(shù),A補(bǔ) + B補(bǔ),= A+B補(bǔ)(mod 2),整數(shù),A B補(bǔ),= A+(B )補(bǔ),= A補(bǔ) + B補(bǔ),(mod 2n+1),小數(shù),A B補(bǔ),= A+(B )補(bǔ),(mod 2),連同符號(hào)位一起相加,符號(hào)位產(chǎn)生的進(jìn)位自然丟掉,= A補(bǔ) + B補(bǔ),6.3,2. 舉例,解:,A補(bǔ),B補(bǔ),A補(bǔ) + B
49、補(bǔ),+,= 0 . 1 0 1 1,= 1 . 1 0 1 1,= 1 0 . 0 1 1 0,= A + B補(bǔ),驗(yàn)證,0.1011, 0.0101,0.0110, A + B = 0 . 0 1 1 0,A補(bǔ),B補(bǔ),A補(bǔ) + B補(bǔ),+,= 1 , 0 1 1 1,= 1 , 1 0 1 1,= 1 1 , 0 0 1 0,= A + B補(bǔ),驗(yàn)證, 1001, 1110,解:, A + B = 1110,6.3,例 6.20,設(shè)機(jī)器數(shù)字長(zhǎng)為 8 位(含 1 位符號(hào)位) 且 A = 15, B = 24,用補(bǔ)碼求 A B,解:,A補(bǔ) + B補(bǔ),+,= 1, 1110111,= A B補(bǔ),B補(bǔ) =
50、 0, 0011000,練習(xí) 2 設(shè)機(jī)器數(shù)字長(zhǎng)為 8 位(含 1 位符號(hào)位) 且 A = 97,B = +41,用補(bǔ)碼求 A B,A B = + 1110110 = + 118, A B = 1001 = 9,錯(cuò),錯(cuò),6.3,3. 溢出判斷,(1) 一位符號(hào)位判溢出,參加操作的 兩個(gè)數(shù)(減法時(shí)即為被減數(shù)和“求補(bǔ)” 以后的減數(shù))符號(hào)相同,其結(jié)果的符號(hào)與原操作 數(shù)的符號(hào)不同,即為溢出,硬件實(shí)現(xiàn),如,有 溢出,無(wú) 溢出,6.3,溢出,(2) 兩位符號(hào)位判溢出,x補(bǔ) + y補(bǔ) = x + y 補(bǔ) (mod 4),x y補(bǔ) = x補(bǔ) + y補(bǔ) (mod 4),結(jié)果的雙符號(hào)位 相同 未溢出,結(jié)果的雙符號(hào)位
51、 不同 溢出,最高符號(hào)位 代表其 真正的符號(hào),6.3,4. 補(bǔ)碼加減法的硬件配置,6.3,三、乘法運(yùn)算,1. 分析筆算乘法,A = 0.1101 B = 0.1011,AB = 0.10001111,0 . 1 1 0 1,0 . 1 0 1 1,1 1 0 1,1 1 0 1,0 0 0 0,1 1 0 1,1 0 0 0 1 1 1 1,符號(hào)位單獨(dú)處理,乘數(shù)的某一位決定是否加被乘數(shù),4個(gè)位積一起相加,乘積的位數(shù)擴(kuò)大一倍,乘積的符號(hào)心算求得,?,6.3,0.,2. 筆算乘法改進(jìn),A B = A 0.1011,= 0.1A + 0.00A + 0.001A +0.0001A,= 0.1A +
52、0.00A + 0.001( A +0.1A),= 0.1A + 0.010 A + 0. 1( A +0.1A),= 0.1A +0.1 0 A+0.1(A + 0.1A),= 2-1A +2-1 0 A+2-1(A + 2-1(A+0),第一步 被乘數(shù)A + 0,第二步 右移 一 位,得新的部分積,第八步 右移 一 位,得結(jié)果,第三步 部分積 + 被乘數(shù),6.3,3. 改進(jìn)后的筆算乘法過(guò)程(豎式),0 . 0 0 0 0,0 . 1 1 0 1,0 . 1 1 0 1,0 . 1 1 0 1,0 . 0 0 0 0,0 . 1 1 0 1,初態(tài),部分積 = 0,乘數(shù)為 1,加被乘數(shù),乘數(shù)為
53、 1,加被乘數(shù),乘數(shù)為 0,加 0,乘數(shù)為 1,加 被乘數(shù),6.3,小結(jié),被乘數(shù)只與部分積的高位相加,硬件,3個(gè)寄存器,具有移位功能,1個(gè)全加器,6.3,乘法 運(yùn)算可用 加和移位實(shí)現(xiàn) n = 4,加 4 次,移 4 次,4. 原碼乘法,(1) 原碼一位乘運(yùn)算規(guī)則,以小數(shù)為例,數(shù)值部分為絕對(duì)值相乘 x* y*,6.3,(2) 原碼一位乘遞推公式,z0,6.3,例6.21,已知 x = 0.1110 y = 0.1101 求x y原,解:,6.3,0 . 0 0 0 0,0 . 1 1 1 0,0 . 1 1 1 0,0 . 0 0 0 0,0 . 1 1 1 0,0 . 1 1 1 0,部分積
54、初態(tài) z0 = 0,邏輯右移,1 1 0 1,=,=,=,=,邏輯右移,邏輯右移,邏輯右移,+,+,+,+,+ x*,+ 0,+ x*,+ x*, 數(shù)值部分按絕對(duì)值相乘,x* y* = 0. 1 0 1 1 0 1 1 0,則 x y原 = 1. 1 0 1 1 0 1 1 0,特點(diǎn),絕對(duì)值運(yùn)算,邏輯移位,例6.21 結(jié)果,用移位的次數(shù)判斷乘法是否結(jié)束,6.3,(3) 原碼一位乘的硬件配置,6.3,(4) 原碼兩位乘,原碼乘,符號(hào)位 和 數(shù)值位 部分 分開(kāi)運(yùn)算,兩位乘,每次用 乘數(shù)的 2 位判斷 原部分積 是否加 和 如何加 被乘數(shù),1 1,1 0,0 1,0 0,3 ?,先 減 1 倍 的被
55、乘數(shù) 再 加 4 倍 的被乘數(shù),6.3,(5) 原碼兩位乘運(yùn)算規(guī)則,6.3,例6.22(1),已知 x = 0.111111 y = 0.111001 求xy原,0 0 0 . 0 0 0 0 0 0,0 0 0 . 1 1 1 1 1 1,0 0 0 . 1 1 1 1 1 1,0 0 . 1 1 1 0 0 1,0,初態(tài) z0 = 0,+ x*, Cj = 0,0 0 1 . 1 1 1 1 1 0,+ 2x*,Cj = 0,1 1 1 . 0 0 0 0 0 1, x*, Cj = 1,0 0 0 . 1 1 1 1 1 1,+ x*, Cj = 0,0,0,1,補(bǔ)碼右移,補(bǔ)碼右移,6.
56、3,解:,補(bǔ)碼右移,+,+,+,+, 數(shù)值部分的運(yùn)算,x* y* = 0. 1 1 1 0 0 0 0 0 0 1 1 1,則 x y原 = 1. 1 1 1 0 0 0 0 0 0 1 1 1,例6.22(1) 結(jié)果,特點(diǎn),絕對(duì)值的補(bǔ)碼運(yùn)算,算術(shù)移位,用移位的次數(shù)判斷乘法是否結(jié)束,6.3,(6) 原碼兩位乘和原碼一位乘比較,絕對(duì)值,絕對(duì)值的補(bǔ)碼,邏輯右移,算術(shù)右移,n,n,思考 n 為奇數(shù)時(shí),原碼兩位乘 移 ?次,最多加 ?次,6.3,例6.22(2),已知 x = 0.11111 y = 0.11101 求xy原,0 0 0 . 0 0 0 0 0,0 0 0 . 1 1 1 1 1,0
57、0 0 . 1 1 1 1 1,0 . 1 1 1 0 1,0,初態(tài) z0 = 0,+ x*, Cj = 0,1 1 1 . 0 0 0 0 1, x*,Cj = 1,0 0 1 . 1 1 1 1 0,0,1,補(bǔ)碼右移,補(bǔ)碼右移,6.3,解:,補(bǔ)碼右移,+,+,+,+ 2x*, Cj = 0,1, 數(shù)值部分的運(yùn)算,x* y* = 0. 1 1 1 0 0 0 0 0 1 1,則 x y原 = 1. 1 1 1 0 0 0 0 0 1 1,例6.22(2) 結(jié)果,6.3,5. 補(bǔ)碼乘法,設(shè) 被乘數(shù),乘數(shù), 被乘數(shù)任意,乘數(shù)為正,同原碼乘,但 加 和 移位 按 補(bǔ)碼規(guī)則 運(yùn)算,乘積的符號(hào)自然形成, 被乘數(shù)任意,乘數(shù)為負(fù),乘數(shù)y補(bǔ),去掉符號(hào)位,操作同 ,最后 加x補(bǔ),校正,(1) 補(bǔ)碼一位乘運(yùn)算規(guī)則,6.3,以小數(shù)為例,補(bǔ)碼一位乘遞推公式(乘數(shù)為正),6.3,補(bǔ)碼一位乘遞推公式(乘數(shù)為負(fù)),6.3,x y補(bǔ) = zn補(bǔ) + x補(bǔ), Booth 算法,(被乘數(shù)、乘數(shù)符號(hào)任意),x y補(bǔ),2-1,2-2,6.3,附加位 yn+1, Booth 算法遞推公式,z0補(bǔ)= 0,z1補(bǔ)= 2-1(yn+1yn)x補(bǔ)+z0補(bǔ) yn+1 = 0,zn補(bǔ)= 2
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 朋友圈轉(zhuǎn)發(fā)活動(dòng)活動(dòng)方案
- 木板畫(huà)繪制活動(dòng)方案
- 暑期第三課堂活動(dòng)方案
- 暑期帽子活動(dòng)方案
- 暑期陪伴活動(dòng)方案
- 服裝活動(dòng)互動(dòng)策劃方案
- 景區(qū)兔年活動(dòng)策劃方案
- 條例培訓(xùn)活動(dòng)方案
- 服裝社群抽獎(jiǎng)活動(dòng)方案
- 景區(qū)年貨活動(dòng)方案
- 教培機(jī)構(gòu)合作辦學(xué)協(xié)議書(shū)范本
- 三高患者健康教育
- 初中英語(yǔ)大單元教學(xué)中融入中國(guó)傳統(tǒng)文化的策略與實(shí)踐研究
- DBJT45-166-2024《預(yù)拌混凝土企業(yè)內(nèi)設(shè)試驗(yàn)室管理規(guī)程》
- 柔性傳感器陣列信號(hào)處理-深度研究
- 2025年內(nèi)蒙古地礦集團(tuán)直屬子公司招聘筆試參考題庫(kù)含答案解析
- 心臟瓣膜病護(hù)理常規(guī)課件
- 高校課堂教學(xué)創(chuàng)新大賽一等獎(jiǎng)?wù)n件:混合教學(xué)模式創(chuàng)新實(shí)踐
- 2025年甘肅省天水武山縣選聘村文書(shū)和社區(qū)專職人員117人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 卵巢交界性腫瘤診治進(jìn)展
- 酒店舊物回收合同范文
評(píng)論
0/150
提交評(píng)論