計算機(jī)組成原理教案設(shè)計_第1頁
計算機(jī)組成原理教案設(shè)計_第2頁
計算機(jī)組成原理教案設(shè)計_第3頁
計算機(jī)組成原理教案設(shè)計_第4頁
計算機(jī)組成原理教案設(shè)計_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機(jī)與信息技術(shù)學(xué)院

課程教案

專業(yè)________計算機(jī)科學(xué)與技術(shù)專業(yè)___________

課程_________計算機(jī)組成原理_________________

講授人

2015年9月10日

(一)課程名稱:計算機(jī)組成原理

(二)學(xué)時學(xué)分:周4學(xué)時,4學(xué)分

(三)預(yù)修課程:數(shù)字邏輯、匯編語言

(四)使用教材

唐朔飛編著:《計算機(jī)組成原理》(第2版),高等教育,2008年1月第2版。

(五)教學(xué)參考書(3本以上)

1、王愛英編著:《計算機(jī)組成與結(jié)構(gòu)》(第4版),清華大學(xué),2()07年3月版。

2、白中英編著:《計算機(jī)組成原理》(第5版),科學(xué),2013年2月版。

3、WilliamStallings編著:《計算機(jī)組織與結(jié)構(gòu)一性能設(shè)計》(第8版),機(jī)械

工業(yè),2011年11月版。

4、李亞民編著:《計算機(jī)組成與系統(tǒng)結(jié)構(gòu)》(第1版),清華大學(xué),2000年4

月版。

(六)教學(xué)方法:課堂講授,課程設(shè)計,師生互動,理論與實驗結(jié)合教學(xué)。

(七)教學(xué)手段:多媒體教學(xué)。

(八)考核方式:閉卷考試。

(九)學(xué)生創(chuàng)新精神與實踐能力的培養(yǎng)方法:通過教師出題、小組討論、實

驗、學(xué)生自由發(fā)言等方式使學(xué)生掌握根本的計算機(jī)專業(yè)思維,提高學(xué)生分析問題、

解決問題的能力,培養(yǎng)學(xué)生的動手能力,寫作能力和表達(dá)能力,將為學(xué)生奠定深

厚的專業(yè)潛力和良好的專業(yè)素質(zhì)。

(+)其它要求:嚴(yán)格考勤,學(xué)生課堂表現(xiàn)與課堂參與情況占學(xué)生成績的

15%,當(dāng)堂測試、課程論文和課下作業(yè)占學(xué)生成績的15%,期末成績占70乳

第一章計算機(jī)系統(tǒng)概論

教學(xué)時數(shù):2學(xué)時

教學(xué)目的與要求:要求學(xué)生了解計算機(jī)系統(tǒng)的根本概念,。使學(xué)生初步掌握

計算機(jī)系統(tǒng)的根本概念與本書的根本結(jié)構(gòu),為進(jìn)一步深入學(xué)習(xí)打下根底。

教學(xué)重點:掌握馮?諾依曼計算機(jī)的架構(gòu)、計算機(jī)根本技術(shù)指標(biāo)。

教學(xué)難點:引入馮?諾依域計算機(jī)的架構(gòu)、總概全書。

第一節(jié)計算機(jī)系統(tǒng)簡介(了解)

/-C中央處理器(CPU)十算器

‘主機(jī)jI控制器

<{只讀存儲器(ROM)

硬內(nèi)存儲器1可讀可寫存儲器(RAM)

\件C輸入設(shè)備(如:鍵盤、鼠標(biāo))

計外部設(shè)備I輸出設(shè)備(如:顯示器,打印機(jī))

算外部存儲器(如:磁盤、磁帶、光盤)

機(jī)操作系統(tǒng)

系「匯編程序

統(tǒng)系語言處理程序解釋程序

X.

軟統(tǒng)編譯程序

件軟「數(shù)據(jù)庫管理系統(tǒng)(如FOXBASE)

件診斷程序(如DIAGS)

支持軟件調(diào)試程序(如DEBUG)

編輯程序(如EDIT)

程序(如LINK)

網(wǎng)絡(luò)通信系統(tǒng)

應(yīng)用軟件(如WPS)

第二節(jié)計算機(jī)的根本組成(重點)

層次結(jié)構(gòu)

硬件層次結(jié)構(gòu)

數(shù)據(jù)模型、算法

用戶程序

作為軟件資源的應(yīng)用程序

語言處理程序(解釋、編譯)

操作系統(tǒng)

機(jī)器語言(指令系統(tǒng))

微程序控制器

硬件邏輯部件

虛擬機(jī)層次結(jié)構(gòu)

應(yīng)用程序虛擬機(jī)

高級語言虛擬機(jī)

匯編語言虛擬機(jī)

操作系統(tǒng)虛擬機(jī)

指令系統(tǒng)、機(jī)器語言

裸機(jī)(硬件)

編譯:將源程序的全部語句變成機(jī)器語言,然后執(zhí)行。

解釋:將源程序的一條語句變成機(jī)器語言并執(zhí)行,然后再把下一條語句變成

機(jī)器語言并執(zhí)行,直到完畢。

透明:本來存在的事物或?qū)傩?,從某個角度看卻好象不存在,稱為透明。

虛擬機(jī):由軟件實現(xiàn)功能的機(jī)器稱為虛擬機(jī)。

馮-諾依曼(VonNeumann)型計算機(jī)

i)計算機(jī)分為五局部:運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備。

計算機(jī)以運算器為中心,輸入輸出設(shè)備與存儲器之間的數(shù)據(jù)傳送都要經(jīng)過運算

器,各局部的操作與其相互之間的聯(lián)系都要由控制器集中控制。

(指令流生成控制流,控制流控制數(shù)據(jù)流)

狀數(shù)結(jié)命

態(tài)據(jù)果令

程序結(jié)果

請命地指命請

求令址令令求

2)存儲落按地址訪問,它是一個順序的線性編址的一維空間,每個單元的

位數(shù)是固定的。

3)采用存儲程序原理,將程序和數(shù)據(jù)放在同一個存儲器中,指令和數(shù)據(jù)等

同看待,指令和數(shù)據(jù)都可以送入運算器中運算,即由指令組成的程序是可以在運

行過程中被修改。

4)數(shù)據(jù)以二進(jìn)制編碼,采用二進(jìn)制運算。

5)指令由操作碼和地址碼兩局部組成。操作碼表示指令的性質(zhì),地址碼表

示操作數(shù)所在的位置.

6)指令在存儲港中根本采用順序執(zhí)行,由指令計數(shù)器指明要執(zhí)行的指令在

存儲器中的地址。

第三節(jié)計算機(jī)硬件的主要技術(shù)指標(biāo)(重點)

1.字長

CPU一次處理的最大的二進(jìn)制數(shù)的位數(shù)為機(jī)器字長。機(jī)器字長:是指參與

運算的數(shù)的根本位數(shù),它標(biāo)志著計算精度,位數(shù)越多,精度越高,但硬件本錢也

越高,因為他決定著存放器、運算部件、數(shù)據(jù)總線等的位數(shù)。

2.主存容量

主存儲流是CPU可以直接訪問的存儲器,需要執(zhí)行的程序與需要處理的數(shù)

據(jù)就放在主存中。主存容量大如此可以運行比擬復(fù)雜的程序,并可以存入大量信

息,可以利用更完善的軟件支撐環(huán)境。所以計算機(jī)處理能力的大小在很大程度上

取決于主存容量的大小。主存容量的記法有兩種:字節(jié)數(shù)(如PC機(jī),640KB)

和單元數(shù)(字?jǐn)?shù))*位數(shù)(如64K*16)。

3.外存容量

外存容量一般是指計算機(jī)系統(tǒng)中聯(lián)機(jī)運行的外存儲容量。

4.運算速度

(1)CPU時鐘頻率

計算機(jī)的操作需要分步執(zhí)行,每個時鐘周期完成一步操作,所以時鐘頻率在

很大程度上反映了CPU速度的快慢。

(2)每秒平均執(zhí)行指令數(shù)(ips)

由于各種指令的執(zhí)行時間不等,所以這種描述是粗略的。通常,一條指令能

實現(xiàn)一次定點加減運算,所以ips值大致相當(dāng)于每秒鐘能完成的定點加減運算次

數(shù)。

(3)單獨注明時間。

第四節(jié)本書/1計算機(jī)二、、、結(jié)

構(gòu),'I存儲器/I/O\

排隊:-

邏輯寄存器

和解。痛

本章思考題

1.什么是計算機(jī)系統(tǒng)、計算機(jī)硬件和軟件?

2.如何理解計算機(jī)系統(tǒng)的層次結(jié)構(gòu)?

3.說明高級語言、匯編語言和機(jī)器語言的區(qū)別與聯(lián)系。

4.指令和數(shù)據(jù)都存在存儲器中,如何區(qū)分它們?

5.什么是指令?什么是程序?

第二章計算機(jī)的開展與應(yīng)用

教學(xué)時數(shù):2學(xué)時

教學(xué)目的與要求:通過本章的講述,使學(xué)生初步了解計算機(jī)系統(tǒng)的開展歷史、

應(yīng)用前景,增進(jìn)和培養(yǎng)學(xué)生的學(xué)習(xí)興趣。

教學(xué)重點:掌握計算機(jī)開展趨勢。

第一節(jié)計算機(jī)的開展史

1.從物理器件的角度分為五代計算機(jī):

(1)第一代電子管計算機(jī)

(2)第二代晶體管計算機(jī)

(3)第三代集成電路計算機(jī)

(4)第四代大規(guī)模集成電路計算機(jī)

(5)第五代超大規(guī)模集成電路計算機(jī)(人工智能)

2.從計算機(jī)的體積可分為:巨、大、中、小、微型計算機(jī)。

3.從運算能力可分為:4,8,16,32,64位計算機(jī)。

第二節(jié)計算機(jī)的應(yīng)用

1.科學(xué)計算和數(shù)據(jù)應(yīng)用

2.工業(yè)控制和實時控制

3.網(wǎng)絡(luò)技術(shù)

4.虛擬現(xiàn)實

5.辦公自動化

6.多媒體技術(shù)

7.人工智能

第三節(jié)計算機(jī)的展望

1.串行算法改為并行算法,出現(xiàn)了向量計算機(jī)、并行計算機(jī)和多處理機(jī)等。

2.高級語言與機(jī)器語言的語義距離縮小,出現(xiàn)了面向高級語言機(jī)器和直接

執(zhí)行高級語言機(jī)器。

3.硬件子系統(tǒng)與操作系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)軟件相適應(yīng),出現(xiàn)了面向操作

系統(tǒng)機(jī)器和數(shù)據(jù)庫計算機(jī)。

4.計算機(jī)系統(tǒng)從指令驅(qū)動型改變?yōu)閿?shù)據(jù)驅(qū)動型和需求驅(qū)動型,出現(xiàn)了數(shù)據(jù)

流機(jī)器和歸約機(jī)。

5.為了適應(yīng)特定應(yīng)用環(huán)境而出現(xiàn)了各種專用計算機(jī)。

6.為了獲得高可靠性而研制容錯計算機(jī)。

7.計算機(jī)系統(tǒng)功能分散化、專業(yè)化,出現(xiàn)了各種功能分布計算機(jī)。

8.出現(xiàn)了與大規(guī)模、超大規(guī)模集成電路相適應(yīng)的計算機(jī)系統(tǒng)結(jié)構(gòu)。

9.出現(xiàn)了處理非數(shù)值化信息的智能計算機(jī)。

本章思考題

1.計算機(jī)更新?lián)Q代以什么為依據(jù)?

2.什么是摩爾定律?該定律是否永遠(yuǎn)生效?

3.說明網(wǎng)絡(luò)技術(shù)的應(yīng)用。

4.說明人工智能的應(yīng)用。

5.舉例說明哪些應(yīng)用需要采用多媒體技術(shù)?

第三章系統(tǒng)總線

教學(xué)時數(shù):2學(xué)時

教學(xué)目的與要求:使學(xué)生掌握總線系統(tǒng)的根本概念,總線的主要技術(shù)指標(biāo),

單、多總線架構(gòu)的特點與機(jī)內(nèi)的通信方式。

教學(xué)重點:總線的概念和結(jié)構(gòu)形態(tài)、信息傳送方式。

教學(xué)難點:總線的仲裁、總線數(shù)據(jù)的傳送模式。

第一節(jié)總線的根本概念

在計算機(jī)的內(nèi)部,CPU和存儲器之間由總線連接??偩€是用來連接計算機(jī)

中的多個部件,以實現(xiàn)部件之間信息交換的一組導(dǎo)線。

總線按照它的任務(wù)劃分,可分為三級:

1.片內(nèi)總線指芯片內(nèi)部的總線。如CPU內(nèi)部總線,他連接CPU內(nèi)部的各

個存放器和算術(shù)邏輯運算部件。

2.系統(tǒng)總線指CPU、主存、1/0(通過I/O接口)各大部件之間的信息傳輸線。

系統(tǒng)總線根據(jù)其傳遞的信號不同可以分為地址總線、數(shù)據(jù)總線和控制總線。。

3.通信總線用于連接計算機(jī)系統(tǒng)之間或計算機(jī)系統(tǒng)與其他系統(tǒng)之間的通信。

我們所說的總線,一般情況指系統(tǒng)總線。

總線在傳輸數(shù)據(jù)格式上采用串行傳輸和并行傳輸兩類。能一次并行傳輸?shù)臄?shù)

據(jù)位數(shù)被定義為總線的數(shù)據(jù)通路寬度,而單位時間能傳輸?shù)臄?shù)據(jù)量被定義為總線

的數(shù)據(jù)傳輸率。

完成一次總線傳送操作所需的時間稱為一個總線周期。根據(jù)總線可能的傳送

方向,總線可分為單向總線和雙向總線。

第二節(jié)總線的分類

狹義的總線實體是一組傳送線。它們的定義與允許的工作方式派生出相應(yīng)的

總線邏輯,如:接收與發(fā)送信息邏輯,為共享總線所需的緩沖器,對總線控制權(quán)

的申請、仲裁、批準(zhǔn)與控制權(quán)轉(zhuǎn)移邏輯,為與總線標(biāo)準(zhǔn)匹配所要求的信號轉(zhuǎn)換等。

所以,總線實體是一組傳送線路與相應(yīng)的控制邏輯。

I)從系統(tǒng)組成角度分類

在小規(guī)模系統(tǒng)中,常用一組系統(tǒng)總線連接CPU、主存、接口與外圍設(shè)備,

稱為單總線結(jié)構(gòu)。在較大規(guī)模系統(tǒng)中,常設(shè)置多組總線,如:在主存與CPU之

間設(shè)置一組專用的高速存儲總線,而將連接外圍設(shè)備的系統(tǒng)總線稱I/O擴(kuò)展總線。

在一些系統(tǒng)中,將直接與CPU連接的一段總線稱局部總線,將經(jīng)過總線控

制器擴(kuò)大后的總線稱為系統(tǒng)總線。

連接系統(tǒng)內(nèi)部CPU、主存、接口與常規(guī)外圍設(shè)備的總線稱為系統(tǒng)內(nèi)總線。

把計算機(jī)系統(tǒng)之間,計算機(jī)系統(tǒng)與通信設(shè)備或其他系統(tǒng)外設(shè)之間的連接總線稱為

系統(tǒng)外總線。

在松耦合多機(jī)系統(tǒng)中,常將各節(jié)點內(nèi)部的總線稱為局部總線,節(jié)點間的總線

稱為通信總線。

2)按數(shù)據(jù)傳送格式分類

并行總線:用多根數(shù)據(jù)線同時傳送一個字節(jié)或一個字的所有代碼位,可以同

時傳送的數(shù)據(jù)位數(shù)稱為該總線的數(shù)據(jù)通路寬度。計算機(jī)的系統(tǒng)總線大多是并行總

線。

串行總線:按位串行傳送數(shù)據(jù),即按數(shù)據(jù)代碼位流的順序逐位傳送。

3)按時序控制方式分類

系統(tǒng)總線所連接的CPU與各種外圍設(shè)備往往有各自獨立的工作時序,在通

過總線傳送數(shù)據(jù)信息時,其時序控制方式有同步方式和異步方式之分,相應(yīng)地,

也將總線分為同步總線和異步總線兩類。

同步總線:數(shù)據(jù)傳送操作由統(tǒng)一的系統(tǒng)時鐘同步定時,其顯著特征是有嚴(yán)格

的時鐘周期劃分,一次傳送操作所需的一個總線周期可能包括假如干時鐘周期。

在單機(jī)系統(tǒng)中,系統(tǒng)時鐘由CPU提供。在多機(jī)系統(tǒng)中,或由負(fù)責(zé)系統(tǒng)管理的主

CPU提供,或?qū)iT設(shè)置一個系統(tǒng)時鐘。

第三節(jié)總線特性與性能指標(biāo)

同步控制方式以時鐘周期為劃分時間段的基準(zhǔn),一個總線周期占用多個時鐘

周期,必要時候,一個總線周期所包含的時鐘周期數(shù)目并不固定,但都是以完整

的時鐘周期為基準(zhǔn)的。例如,DMA控制器向CPU提出總線請求,獲得總線控制

權(quán)后實現(xiàn)一次總線傳送。通常這一過程要經(jīng)過以下幾步:

(1)SO狀態(tài):DMA控制器提出總線請求(BREQ),此時CPU正控制總線訪問

主存,因此DMA控制器處于等待批準(zhǔn)的SO狀態(tài),可能要等待幾個時鐘周期。

(2)S1狀態(tài):CPU完畢一次總線周期操作,發(fā)出總線批準(zhǔn)信號BACK,進(jìn)入

總線控制權(quán)交換狀態(tài)S1狀態(tài)。在S1狀態(tài)中,CPU放棄總線,DMA控制器向總

線送出地址碼,接收總線控制權(quán),并進(jìn)入下一狀態(tài)。

(3)S2狀態(tài):由DMA控制器發(fā)出讀命令,從發(fā)送設(shè)備中讀出數(shù)據(jù),送入有

關(guān)的數(shù)據(jù)存放器,并發(fā)送到數(shù)據(jù)總線上。

(4)S3狀態(tài):由DMA控制器發(fā)出寫命令,將數(shù)據(jù)總線信息寫入接收設(shè)備。

(5)S4狀態(tài):延長狀態(tài),如果在S3狀態(tài)中沒有完成總線傳送,可以延長總

線周期,進(jìn)入S4狀態(tài).

完畢個總線周期后,DMA控制器放棄系統(tǒng)總線,將總線控制權(quán)交回CPU。

第四節(jié)總線結(jié)構(gòu)和總線控制

異步總線:對總線操作的控制與數(shù)據(jù)傳送,以應(yīng)答方式實現(xiàn),特點是沒有固

定的時鐘周期劃分。

異步應(yīng)答關(guān)系分為不互鎖、半互鎖和全互鎖三類。

不互鎖:設(shè)備1發(fā)出請求信號,經(jīng)過一段時間后,自動撤消;設(shè)備2接到設(shè)

備1的請求信號后,在條件允許時發(fā)出回答信號,經(jīng)過一段時間后,自動撤消。

半互鎖:設(shè)備1發(fā)出請求信號后,接到設(shè)備2的回答信號后,才撤消請求信

號,而設(shè)備2經(jīng)過一段時間后,自動撤消回答信號。

全互鎖:設(shè)備1發(fā)出請求信號后,接到設(shè)備2的回答信號后,才撤消請求信

號,設(shè)備2知道設(shè)備1撤消了請求信號后,才撤消回答信號。

本章思考題

1.什么是總線?總線傳輸有何特點?

2.如何理解總線的不同分類?

3.比擬同步與異步通信。

4.什么是總線標(biāo)準(zhǔn)?為什么要設(shè)置總線標(biāo)準(zhǔn)?

5.什么總線的傳輸速率,它與哪些因素有關(guān)?

第四章存儲器

教學(xué)時數(shù):8學(xué)時

教學(xué)目的與要求:使學(xué)生掌握主存、輔存的概念,重點理解存儲器分級的結(jié)

構(gòu),掌握主存與CPU連接方式,Cache與主存地址映射方式。

教學(xué)重點:靜態(tài)存儲器、動態(tài)存儲器、Cache存儲器的地址映射方式。

教學(xué)難點:主存芯片與CPU的連接方法、存儲器的校驗。

第一節(jié)概述

1.存儲器的分類

1)按存儲器與CPU的關(guān)系:存儲器分為主存和輔存兩局部。

主存是能夠由CPU直接編程訪問的存儲器,它存放需要執(zhí)行的程序與需要

處理的數(shù)據(jù)。由于主存處于主機(jī)的內(nèi)部所以又稱之為內(nèi)存。與之相對的是外存,

又稱輔存。輔存包括:磁盤、光盤、磁帶等。

2)按存取方式:隨機(jī)存儲器、只讀存儲器、順序存儲器和直接存儲器。

隨機(jī)存儲器:存儲器中的任何一個存儲單元的內(nèi)容都能被隨機(jī)存取,且存取

時間都一樣,與存儲單元的物理位置無關(guān)(RAM),可以用存儲周期來表示其工作

速度。

只讀存儲器:存儲器工作的時候只能讀,不能寫,通常保存一些特別重要的

信息。它也采用隨機(jī)存取方式。

順序存取存儲器:存儲器中的存儲內(nèi)容只能按順序存取,其存取時間與存儲

單元的物理位置有關(guān)(SAM),如磁帶。

直接存取存儲器(DAM):介于隨機(jī)存儲方式和順序存儲方式之間,典型的直

接存取存儲器是磁盤,磁盤尋址時,首先磁頭定位于磁道類似于隨機(jī)存儲方式,

然后在磁道內(nèi)尋址類似于順序存儲方式。

3)按存儲介質(zhì):半導(dǎo)體存儲器(用半導(dǎo)體器件構(gòu)成的存儲器,多用于主存)

和磁存儲器(磁性材料做成的存儲器,如磁盤)。半導(dǎo)體存儲器又可以細(xì)分為靜態(tài)

存儲器(SRAM)和動態(tài)存儲器(DRAM)。

4)按信息的保存:永久性存儲器(斷電后存儲信息仍可以保持)和易失性存儲

器(斷電后丟失信息),如磁盤是永久性,RAM為易失性。

5)按讀寫功能:讀寫存儲器和只讀存儲器

6)主存儲器分為隨機(jī)存儲器(RAM)和只讀存儲器(ROM),只讀存儲器又可

以分為:可編程只讀存儲器(PROM),可擦可編程只讀存儲器(EPROM),電可擦

可編程只讀存儲滯(E2PROM),以與快閃存儲器。

第二節(jié)主存儲器

1.存儲器的組成

存儲體

讀寫數(shù)據(jù)緩沖器

存儲器是一種能夠?qū)崿F(xiàn)按地址存儲的裝置。存儲器由存儲體、地址緩沖和譯

碼器、讀寫數(shù)據(jù)緩沖器組成。存儲體是存儲器的核心,它有許多存儲單元組成,

每個存儲單元又由假如十個可記憶?;?的存儲元件組成。因此,每個存儲單元

可以存放假如干位二進(jìn)制數(shù),稱為一個字。每個存儲單元按其空間的位置都有一

個固定的編號,稱為存儲單元的地址,簡稱地址。通常說存儲器容量為M*N的,

M表示的是存儲器有多少個字,N表示每個字有多少個存儲元件。

2.主存儲器的技犬指標(biāo)

1)存儲速度:存取時間(TA,又稱取數(shù)時間)和存儲周期(TM)

2)存取時間:存儲器接到讀命令信號到其數(shù)據(jù)輸出端有信號輸出為止的時

間。例如對于2114來說,其存取時間為從WE=1開始到讀寫數(shù)據(jù)緩沖滯中有數(shù)

據(jù)為止。

3)存儲周期:連續(xù)兩次訪問存儲器所需要的最小時間間隔。例如:從CPU

向存儲器發(fā)出讀命令,到CPU的MDR中有數(shù)據(jù)為止。

4)價格:存儲器的價格以位價格衡量,即存儲容量為S,價格為C,P二C/S

是位價格。

3.主存儲器的工作原理

CPU對存儲器進(jìn)展操作的時候,一定要用到兩個存放器:地址存放器(MAR)

和數(shù)據(jù)存放器(MDR)。CPU與存儲器之間的數(shù)據(jù)傳輸分為同步傳輸方式和異步

傳輸方式兩種,

1)同步方式:數(shù)據(jù)傳輸是在固定的時間間隔內(nèi)完成,此時間間隔由CPU的

時鐘脈沖確定,從而構(gòu)成一個完整的存儲器讀寫周期。

2)異步方式:當(dāng)存儲器接到CPU的讀寫命令時,完成一次讀寫操作后,向

CPU發(fā)一個“存儲器功能完成"信號(WMFC),CPU接到此信號后,才完成一

次數(shù)據(jù)傳輸工作。

注:CPU中有一個引腳叫做Ready,其名稱是:準(zhǔn)備好信號,當(dāng)它為1時,

表示CPU可以和存儲器傳輸數(shù)據(jù)。而不是象書中所說是通過Ready做主存儲器

應(yīng)答。

3)讀寫過程

(1)CPU從存儲器中讀取一個字節(jié)數(shù)據(jù)

①把耍讀取的字節(jié)的地址送入MARo

②把要讀取的字節(jié)的地址經(jīng)過地址總線送入存儲器的地址緩沖譯碼器,同時

發(fā)出讀請求。

③存儲器讀操作,找到數(shù)據(jù)送入其數(shù)據(jù)緩沖存放涔,

④由數(shù)據(jù)總線將數(shù)據(jù)送入CPU的MDR,同時發(fā)出WMFC信號(WMFC=1)。

(2)CPU向存儲器寫一個字節(jié)數(shù)據(jù)

①把要寫入存儲器的字節(jié)送入MDRo

②其地址送入MARo

③經(jīng)過數(shù)據(jù)總線和地址總線把數(shù)據(jù)、地址送入存儲器,同時發(fā)出寫請求。

④將數(shù)據(jù)寫入存儲器指定單元,同時發(fā)出WMFC信號。

4.存儲器擴(kuò)容

1)位擴(kuò)展(字長擴(kuò)展)

位擴(kuò)展連接方式:將多片存儲器的地址、片選、讀寫控制連在一起;數(shù)據(jù)線

分別連接。

2)字?jǐn)U展

字?jǐn)U展連接方式:將多片存儲器的地址、數(shù)據(jù)、讀寫控制連在一起;片選信

號來區(qū)別那個芯片被選用(充當(dāng)高位)。

3)字位擴(kuò)展。

字?jǐn)U展連接方式:將多片存儲落的地址、讀寫控制連在一起;片選信號來區(qū)

別那個芯片被選用(充當(dāng)高位),數(shù)據(jù)線分別連接。

可選講:動態(tài)存儲器的刷新

由于動態(tài)存儲器依靠電容上存儲電荷來暫存信息,而電容上存儲的電荷會逐

步衰減,所以動態(tài)存儲器一定要定期刷新。通常動態(tài)存儲芯片要在2ms(毫秒)以

內(nèi)全部刷新一遍,即全部刷新一遍所允許的最大時間間隔為2ms,稱為最大刷新

周期。對于整個存儲器來說,各個存儲芯片可以同時刷新。對于每塊動態(tài)存儲芯

片來說,如此是按行刷新,每次刷新一行,所需時間為一個刷新周期。例如一個

動態(tài)存儲芯片為128行,,如此在2ms內(nèi)應(yīng)該至少安排128個刷新周期。

對于一個動態(tài)存儲器,它在工作過程中實際包括兩種工作狀態(tài):讀寫保持狀

態(tài)和刷新狀態(tài)。如何進(jìn)展刷新呢?通常采用以下三種方式:

(1)集中刷新方式:在2ms之內(nèi)直接安排128個刷新周期,統(tǒng)一刷新。優(yōu)點

是主存利用率高,控制簡單;缺點是存儲器在每個2ms之內(nèi)必定有一段時間不

能進(jìn)展讀寫操作(在進(jìn)展刷新),造成一段死區(qū)。

(2)分散刷新方式:存取操作和刷新同時進(jìn)展,即在每個存儲周期中包括存

取數(shù)據(jù)刷新數(shù)據(jù)兩局部。優(yōu)點:沒有死區(qū),缺點:降低效率。

(3)異步刷新方式:由于2ms/128=15.625us(微秒),所以每隔15.625us提出

一次刷新請求,安排一個刷新周期,如果此時正在進(jìn)展存取工作,如此等到存取

工作完畢后進(jìn)展刷新。

5.多體交叉存儲器

存儲器是存儲指令(程序)和數(shù)據(jù)的地方,CPU工作時將不停的訪問存儲器,

CPU工作的根本周期是時鐘周期(節(jié)拍),存儲器工作的根本周期是存儲周期,即

CPU以時鐘周期表示CPU的速度,存儲器以存儲周期表示存儲器的速度,但是

通常存儲器的存儲周期的時間遠(yuǎn)遠(yuǎn)大于CPU的時鐘周期,所以實際上CPU為工

作速度會降低到與存儲器的速度相當(dāng),CPU工作時不得不在兩個時鐘周期之間

插入空閑周期。

通常存儲器的容量與速度成反比,即1K的存儲器的速度比4K的存儲器的

速度快,因此提出多體交叉存儲器技術(shù)。多體交叉存儲器技術(shù)分為兩種:高位交

叉編址和低位交叉編址。例如,某機(jī)器有一個容量為4K*8的存儲器,為了提高

存儲速度將存儲器變成4個1K*8的存儲模塊。

1)高位交叉編址:該方法的優(yōu)點是便利靈活,便于擴(kuò)展,如將4K的存儲.器

擴(kuò)展成5K的存儲器只需要加一個存儲模塊,某一個存儲模塊出現(xiàn)問題不影響其

他模塊。

2)低位交叉編址:該方法的優(yōu)點是提高CPU工作效率。因為在通常情況下,

數(shù)據(jù)被連續(xù)讀取,如CPU取4個字節(jié),用高位交叉技術(shù)要對存儲器進(jìn)展4次讀

取,而用低位交叉技術(shù)只對存儲器讀取一次即可(四個模塊同時工作)。用低位交

叉技術(shù)的機(jī)器一個存儲周期得到4個字節(jié),其存儲周期相當(dāng)于原來的四分之一。

推而廣之,一個具有n個模塊的存儲器,其存儲周期等效于單模塊的1/n,但這

是個樂觀的估計,總之效率會明顯提高。

注意:理論上講,n的值越大,存儲滯的速度越高,但是實際中一般吆8。

如果n>8速度提高就不在明顯,這是因為多體交叉存儲器存在訪問沖突問題。產(chǎn)

生訪問沖突的原因是:一、程序中有轉(zhuǎn)移指令,二、是數(shù)據(jù)的隨機(jī)性。

對于多體交叉存儲器的控制有兩種:一種是同時啟動各模塊,然后在主存控

制部件的控制下,分時使用總線傳輸;另一種是各模塊分時啟動,如四個模塊就

是每隔四分之一存儲周期啟動一個模塊,后者應(yīng)用多些。

6.存儲器校驗

二進(jìn)制信息在傳送時,可能發(fā)生錯誤,校驗碼是一種具有校驗過失能力的代

碼。校驗碼由兩局部組成:信息位和校驗位,信息位就是要傳送的數(shù)據(jù)信息,校

驗位是在信息位的根底上根據(jù)具體的校驗方法得到的一些附加數(shù)據(jù)。校驗的方法

不同,信息位也不同。

根本概念

碼字:表示一個數(shù)(或字符)的假如干位二進(jìn)制代碼;碼元:碼字中的一位二

進(jìn)制數(shù):碼組:滿足一定規(guī)如此的碼字集合:最小碼距:一個碼組中任何兩個碼

字之間的不同碼元的最小個數(shù)。

假如實現(xiàn)數(shù)據(jù)校驗,必須在原有碼字(信息位)的根底上增加額外碼元(校驗

位),從而增大碼組中的最小碼距。最小碼距與校驗?zāi)芰Φ年P(guān)系滿足下面公式:L

=2C+1,L=D+1其中L表示最小碼距,C表示可糾錯位數(shù),D表示可檢錯位

數(shù)。

奇偶校驗

所謂奇偶校驗就是在傳輸?shù)臄?shù)據(jù)后面加一位奇偶校驗位,為奇校驗時就是加

校驗位后,保證在全部數(shù)據(jù)中“1〃的個數(shù)為奇數(shù)個,為偶校驗時就是加校驗位

后,保證在全部數(shù)據(jù)中“1〃的個數(shù)為偶數(shù)個。

假設(shè)數(shù)據(jù)位四位,對于奇校驗來說,總是P=B3十……十B0十1

對于偶校驗位P=B3十B2十B1十B0

加奇偶校驗位時可以根據(jù)校驗位的位置分為橫向奇偶校驗、縱向奇偶校驗和

橫縱奇偶校驗。例如有以下一組數(shù)據(jù):

0011000000110001001100100011001100110100(數(shù)字:01234)

采用橫向奇校驗時編碼為:

001100001

001100010

001100100

001100111

001101000

即:001100001001100010001100100001100111001101000

第三節(jié)高速緩沖存儲器

1.存儲系統(tǒng)的層次結(jié)構(gòu)

計算機(jī)系統(tǒng)對存儲器的根本要求是:高速度、大容量、低價格。這三個條件

互相矛盾,不可能同時實現(xiàn),為了解決這一矛盾,必須對存儲系統(tǒng)進(jìn)展層次劃分。

1)主存、輔存結(jié)構(gòu):以速度快、價格高的半導(dǎo)體存儲器作主存,以磁存儲

器做輔存。

2)高速緩存、主存、輔存三級結(jié)構(gòu)。

通常把CPU當(dāng)前正在執(zhí)行的程序和數(shù)據(jù)放在主存中,而暫時不執(zhí)行的程序

和數(shù)據(jù)放在輔存中。在執(zhí)行過程中,不斷地把輔存中即將處理的信息調(diào)入主存,

處理過的信息不斷地調(diào)出主存。這一過程現(xiàn)在由操作系統(tǒng)中的虛擬存儲器技術(shù)實

現(xiàn)。對于那些使用頻率極高的數(shù)據(jù)如此保存在Cache中。采用了三級結(jié)構(gòu),理想

情況是高速緩存的速度,輔存的容量、價格。

2.高速緩沖存儲器(Cache)

引用虛擬存儲器的目的是令主存空間擴(kuò)大,引用Cache是為了提高主存的速

度。虛擬存儲器靠OS軟管理,而Cache靠硬件管理。Cache本身是一個高速的

存儲器件,其速度與CPU的速度相當(dāng),如果搞好Cache與主存的關(guān)系,可以大

大提高主存的速度,乂由于Cache對于系統(tǒng)程序員來說也是透明的。有人把Cache

劃入CPU中。由于Cache和主存都可以與CPU相關(guān),Cache與主存的關(guān)系有點

像頁式虛擬存儲器中的快表。

通常把Cache和主存等分成塊,每當(dāng)給出一個主存字地址進(jìn)展訪存時,都必

須通過主存-Cache地址映像變換機(jī)構(gòu)判定該訪問字所在的塊是否已經(jīng)在Cache

中,如果在,如此經(jīng)地址映像變換機(jī)構(gòu)將主存地址變換成Cache的地址去訪問

Cache,此時Cache與處理機(jī)之間進(jìn)展單子寬信息的交往;如果不在Cache中,

如此產(chǎn)生Cache失效,這時要從訪主存的通路中把包含該字的一塊信息通過多字

寬通路調(diào)入Cache,同時將被訪問字由主存送入CPU,如果Cache中已裝不進(jìn)了,

即發(fā)生塊沖突,此時需要按所選擇的替換算法將該塊替換進(jìn)Cache,并修改地址

映像表中有關(guān)的地址映像關(guān)系和修改好Cache各塊使用狀態(tài)標(biāo)志等信息。

1)地址映像與變換:

①全相聯(lián)映射

讓主存中任意的一塊均可以映像到Cache中的任意一塊位置上。此時要求有

一個專門硬件設(shè)置的目錄表,目錄表中記錄著主存塊號與Cache塊號之間的變換

關(guān)系,主存地址通過目錄表可以轉(zhuǎn)換成Cache中的地址。

優(yōu)點:塊沖突率低,缺點:Cache變大,目錄表也大,速度降低。

②直接映射

讓主存中每一個塊只能映像到Cache中唯一的一個位置上,例如設(shè)Cache

中可以放X塊,主存中的第i塊映像到Cache中的第(iMODX)塊中。這相當(dāng)于

把主存空間按Cache的空間分成區(qū),每區(qū)的各塊均只能按位置一一對應(yīng)到Cache

的相應(yīng)位置。此時主存地址分為區(qū)號,主存塊號,塊內(nèi)地址三局部,目錄表只記

錄各塊的區(qū)號,變換時,以主存塊號為地址到目錄表中的對應(yīng)局部取區(qū)號與主存

地址區(qū)號比擬一樣,如此主存塊號與塊內(nèi)地址成Cache地址,不一樣,如此換頁。

優(yōu)點:電路簡單,速度快;缺點:沖突率高。

③組相聯(lián)映射

將Cache各塊分組,主存以Cache大小分區(qū),區(qū)下分組,組下分塊。組間采

用直接映像,組內(nèi)采用全相聯(lián)映像。

2)Cache的讀寫:

①讀操作:訪存時,一方面主存地址送主存,啟動讀主存,另一方面地址送

Cache映象成Cache地址。從Cache頁中讀取內(nèi)容,并將相應(yīng)的Cache標(biāo)記與主

存地址中的主存頁標(biāo)記進(jìn)展比擬,如果二者一樣,如此表示訪問Cache命中,讀

出數(shù)據(jù)送往CPU,不等主存讀操作完畢,就可以繼續(xù)下一次訪存操作。如果標(biāo)

記不符合,或是按映像方式搜索完畢仍未找到相符的Cache標(biāo)志,明確本次訪問

Cache失敗,如此從主存讀出數(shù)據(jù)送CPU,偶爾一次不命中,不一定立即替換,

一般是在命中率變低時才考慮替換,如果替換,如此以頁為單位整頁替換,并相

應(yīng)修改Cache標(biāo)記。

②寫操作:

寫回法(標(biāo)志替換法)。在數(shù)據(jù)回寫的時候,只寫入Cache,同時在Cache塊

中設(shè)置一個標(biāo)志位,標(biāo)志位為1表示有數(shù)據(jù)寫回此Cache塊,當(dāng)此Cache塊被替

換的時候?qū)懭胫鞔?,但是如果在替換時,恰好主存沒有此Cache塊(先被虛擬存

儲器替換),如此出錯。這種方式不在Cache操作過程中插入寫主存操作,保持

程序的運行速度。

寫直達(dá)法。寫入Cache同時寫入主存,但有些寫入是多余的。這種方式保持

了Cache與主存的一致性。

本章思考題

1.計算機(jī)中哪些部件可用于存儲信息?

2.說明存取周期和存取時間的區(qū)別。

3.存儲器層次結(jié)構(gòu)主要表現(xiàn)在什么地方,為什么要分這些層次?

4.什么叫刷新,為什么進(jìn)展刷新?

5.什么是存儲器的帶寬。

第五章輸入輸出系統(tǒng)

教學(xué)時數(shù):8學(xué)時

教學(xué)目的與要求:使學(xué)生了解計算機(jī)系統(tǒng)中常用I/O設(shè)備的根本接口,主要

技術(shù)指標(biāo),工作原理等知識,重點I/O設(shè)備與CPU傳輸數(shù)據(jù)的三種方式。

教學(xué)重點:程序查詢方式和中斷方式的工作原理、根本接口。

教學(xué)難點:DMA的傳送方式與傳送過程。

第一節(jié)I/O設(shè)備

輸入輸出系統(tǒng)包括輸入輸出設(shè)備、設(shè)備控制器以與同輸入輸出操作有關(guān)的硬

件與軟件。如:鍵盤一輸入設(shè)備,8042—設(shè)備控制器,8255—相關(guān)硬件,int9—

相關(guān)軟件。

第二節(jié)I/O接口

1.輸入輸出設(shè)備編址方式:

輸入輸出設(shè)備的編址方式分為兩種:獨立I/O編址、(與內(nèi)存)統(tǒng)一編址。如

PC機(jī)采用前者,INAL,60H;讀入掃描碼

2.輸入輸出數(shù)據(jù)傳送的控制方式:

(1)程序直接控制方式

(2)程序中斷傳送方式

(3)直接存儲器存取①MA)傳送方式

(4)通道控制方式

(5)I/O處理機(jī)

第三節(jié)程序查詢方式

程序直接控制方式

主機(jī)與外設(shè)之間的數(shù)據(jù)傳輸由程序來控制,在程序中安排一段由輸入輸出指

令和其他指令組成的程序段直接控制外設(shè)的工作。程序直接控制方式分為無條件

傳送方式和有條件(查詢)傳送方式。

無條件傳送:外設(shè)與CPU之間的工作關(guān)系、動作時間固定,所以可以采用

無條件傳送。

查詢:傳送數(shù)據(jù)之前先由程序?qū)ν庠O(shè)狀態(tài)進(jìn)展測試,測試結(jié)果滿足時,傳送

數(shù)據(jù)。(說明:與外設(shè)相關(guān)的芯片有狀態(tài)存放器和控制存放器,狀態(tài)存放器提供

芯片的狀態(tài),即外設(shè)的狀態(tài),常常依靠IN指令把外設(shè)芯片的狀態(tài)讀入CPU來進(jìn)

展查詢方式的數(shù)據(jù)傳送,CPU發(fā)給外設(shè)芯片的控制命令常常依靠OUT指令送入

控制存放器,使外設(shè)按照CPU的要求工作。

第四節(jié)程序中斷方式

程序中斷傳送方式

1)中斷:在計算機(jī)的運行過程中,如果發(fā)生某種隨機(jī)事態(tài),CPU將暫停執(zhí)

行現(xiàn)行程序,轉(zhuǎn)去執(zhí)行中斷處理程序,為該事態(tài)服務(wù),并在服務(wù)完畢后自動恢復(fù)

原程序的執(zhí)行。

中斷的定義包含了程序切換與隨機(jī)性兩個概念。

中斷的實質(zhì)是一種程序切換過程。轉(zhuǎn)子程序也是一種程序切換,但區(qū)別在于

中斷是隨機(jī)切換,而轉(zhuǎn)子程序的切換不是隨機(jī)的。

2)中斷方式的應(yīng)用

(1)以中斷方式管理中低速I/O操作,使CPU與外設(shè)并行工作

(2)軟中斷

(3)故障處理:掉電、校驗錯、軟件故障、溢出

(4)實時處理:通過定時器實時采集數(shù)據(jù)

(5)多機(jī)通信:依靠中斷通信

(6)人機(jī)對話:

3)程序中斷與簡單中斷

程序中斷:中斷發(fā)生之后執(zhí)行一段程序

簡單中斷:中斷發(fā)生之后不執(zhí)行程序,只是讓出幾個CPU周期,如DMA

中斷

第五節(jié)DMA方式

1.直接存儲器存取(DMA)傳送方式

對于高速外設(shè)的成批信息交換通常采用DMA方式。在DMA方式中數(shù)據(jù)交

換不是由CPU執(zhí)行程序來完成,而是由DMA控制器控制,如軟盤操作。DMA

方式分為三種:CPU暫停、CPU周期竊取、CPU與10交替訪問存儲器

2.通道控制方式

DMA可以處理大批數(shù)據(jù),但是對外設(shè)的管理仍由CPU承當(dāng),為能更好的發(fā)

揮CPU效率,設(shè)置新硬件通道。通道是專門執(zhí)行輸入輸出操作的處理機(jī),它獨

立的對輸入輸出操作進(jìn)展管理。當(dāng)CPU執(zhí)行I/O指令時,CPU不執(zhí)行輸入輸出

操作,只啟動通道執(zhí)行輸入輸出操作,并將控制權(quán)轉(zhuǎn)給通道。

3.主機(jī)與外設(shè)間的連接模式

總線型

在這種結(jié)構(gòu)中,CPU通過系統(tǒng)總線與外設(shè)相連,各外設(shè)通過各自的接口直

接與公共的系統(tǒng)總線相連。CPU經(jīng)過地址鎖存器向系統(tǒng)總線發(fā)出地址代碼,經(jīng)

過數(shù)據(jù)緩沖器向系統(tǒng)總線發(fā)出或接收數(shù)據(jù)代碼,經(jīng)過總線控制器發(fā)出或接收控制

信號。如果CPU暫時放棄對系統(tǒng)總線的控制,如此有關(guān)的輸出端呈高阻態(tài),即

與總線脫鉤。

此結(jié)構(gòu)優(yōu)點:結(jié)構(gòu)簡單,易于擴(kuò)展,易于實現(xiàn);缺點:信息吞吐量有限。

輻射型

在這種結(jié)構(gòu)中,各外設(shè)和主機(jī)之間有各自獨立的數(shù)據(jù)通路,因而形成以主機(jī)

為中心向各設(shè)備輻射的星型連接?,F(xiàn)在多采用CPU通過系統(tǒng)總線連接一個多口

接口卡,由多口接口卡分別連接外設(shè)。各外設(shè)之間不能直接傳送信息,它只能把

信息通過接口送入主機(jī),再由主機(jī)送別的外設(shè)。

優(yōu)點:各外設(shè)各自獨立,相互干擾??;缺點:不能實現(xiàn)設(shè)備之間直接通信。

通道控制方式

通道是一種專門負(fù)責(zé)管理輸入輸出操作的控制器,它執(zhí)行一種通道程序。

CPU啟動通道后可以并行地執(zhí)行自身的程序,而通道如此執(zhí)行通道程序,或以

DMA方式實現(xiàn)主存與外設(shè)之間的數(shù)據(jù)直傳,或讓數(shù)據(jù)輸入CPU或從CPU輸出。

這就使CPU從繁重的1/()操作中解脫出來,發(fā)揮其高速處理的優(yōu)勢,讓CPU的

處理與通道管理下的U0操作并行地進(jìn)展。

從連接角度看,主機(jī)一般通過單獨的數(shù)據(jù)通路分別連接數(shù)目有限的通道,各

通道再用總線結(jié)構(gòu)通過接口連接外設(shè),可稱為四級連接模式,即主機(jī)-通道-I/O

接口或設(shè)備控制器-外圍設(shè)備。通道的概念具有較大彈性,在邏輯劃分與功能上

可作多種變化。有的系統(tǒng)讓通道控制器位于CPU之中,稱為結(jié)合型通道;有的

系統(tǒng)如此讓它獨立于CPU之外,稱為獨立型通道。通道執(zhí)行的通道程序,可以

放在主存中,與CPU共享主存;也可以自帶局舒存儲器存放通道程序。它的功

能可以只負(fù)責(zé)管理實現(xiàn)數(shù)據(jù)的輸入輸出,也可以開展為實現(xiàn)較復(fù)雜的預(yù)處理,變

成輸入輸出處理機(jī)。

輸入輸出處理機(jī)(IOP)方式

IOP比通道具有更強(qiáng)的獨立性與通用性,它的功能與CPU類似,只是專用

化,面向輸入輸出管理與相應(yīng)的處理。IOP有自己的指令系統(tǒng),可以編制自己的

程序;通過執(zhí)行程序?qū)崿F(xiàn)獨立于CPU的輸入輸出操作。

在大型計算機(jī)系統(tǒng)中,主機(jī)通過專門的數(shù)據(jù)通路與IOP連接,IOP通過總線

再與外圍設(shè)備連接。高檔微型計算機(jī)系統(tǒng)也采用輸入輸出處理器,將IOP集成

在一塊芯片中。這種IOP芯片與CPU一起掛接在系統(tǒng)總線上,可共享主存,當(dāng)

CPU進(jìn)展輸入輸出時,將任務(wù)寫入存儲器的個特殊區(qū)域中,然后通知IOPOIOP

從該區(qū)域中獲知CPU的要求,并執(zhí)行程序,完成指定的輸入輸出操作,然后用

某些約定的特征信息或以中斷請求信號通知CPU。

本章思考題

I.I/O設(shè)備有哪些編址方式,各有何特點?

2.I/O設(shè)備與主機(jī)交換信息時,共有哪幾種控制方式?簡述特點。

3.圖形顯示和圖像顯示有何區(qū)別?

4.中斷向量通過什么總線送至什么地方?為什么?

5.試從5個方向比擬程序中斷方式和DMA方式的區(qū)別。

第六章計算機(jī)的運算方法

教學(xué)時數(shù):8學(xué)時

教學(xué)目的與要求:使學(xué)生掌握計算機(jī)系統(tǒng)信息的表示方法、根本邏輯運算和

四如此運算,理解運算的實現(xiàn)方法,信息的流動方式,運算器部件的組成結(jié)構(gòu)與

設(shè)計方法。

教學(xué)重點:計算機(jī)信息的表示方法、定點數(shù)和浮點數(shù)的四如此運算。

教學(xué)難點:原碼一位串行乘法算法乘法器、浮點乘除運算算法。

第一節(jié)無符號數(shù)與有符號數(shù)

1.機(jī)器數(shù)

機(jī)器數(shù)包括原碼、反碼、補碼和移碼。

1)原碼是一種機(jī)器數(shù)的表示法。它約定:對于一個正數(shù),用”0〃表示它的

符號,后面的數(shù)值局部就是它的二進(jìn)制數(shù);對于一個負(fù)數(shù),用“1〃表示它的符號,

后面的數(shù)值局部就是它的二進(jìn)制數(shù)。

2)反碼是一種機(jī)器數(shù)的表示法。它約定:對于一個正數(shù),用“0〃表示它的

符號,后面的數(shù)值局部就是它的二進(jìn)制數(shù);對于一個負(fù)數(shù),用“1〃表示它的符號,

后面的數(shù)值局部就是它的二進(jìn)制數(shù)(即原碼)逐位變反(即“0〃變”1〃,“1”變

“0〃)o

3)補碼是一種機(jī)器數(shù)的表示法。它約定:對于一個正數(shù),用“0〃表示它的

符號,后面的數(shù)值局部就是它的二進(jìn)制數(shù);對于一個負(fù)數(shù),用力〃表示它的符號,

后面的數(shù)值局部就是它的二進(jìn)制數(shù)(即原碼)逐位變反,然后加io

對負(fù)的補碼進(jìn)展復(fù)原的時候,數(shù)值位仍然采用逐位變反,然后加1的方法。

對于一個四位的二進(jìn)制數(shù)來說,變反意味著用一個最大的四位二進(jìn)制數(shù)來減此二

進(jìn)制數(shù),Z=00l0,Z變反即1111-0010=1101;變反加1,可以表示成

1111-0010+1=10000-0010=11lOo對于同一個數(shù)進(jìn)展兩次變反加I,就可表示成:

10000-(10(X)0-0010)=10000-1()()()()+()()10=001()由此可知,對于同一個數(shù)進(jìn)展兩次

變反加1,就可復(fù)原原來的數(shù),所以補碼復(fù)原仍是采用變反加1的方法。

4)移碼是一種機(jī)器數(shù)的表示法。它約定:對于一個正數(shù),用“1〃表示它的

符號,后面的數(shù)值局部就是它的二進(jìn)制數(shù);對于一個負(fù)數(shù),用“0〃表示它的符號,

后面的數(shù)值局部就是它的二進(jìn)制數(shù)(即原碼)逐位變反,然后加1(移碼和補碼在符

號上是相反的)。移碼復(fù)原只能先把它變成補碼,再復(fù)原。

注意:對于原碼00000和10000都表示十進(jìn)制的“0〃,對于反碼00000和

11111都表示十進(jìn)制的“0〃,而對于補碼()()()()()表示“0”,而1000()表示絕對

值最大的負(fù)數(shù)(-16),同理對于移碼10000表示“0〃,而00000表示絕對值最大

的負(fù)數(shù)(-16)。注2:對于原碼,反碼和補碼可以表示整數(shù)也可以表示小數(shù),而移

碼只能表示整數(shù),移碼只用于浮點數(shù)的階碼表示。

第二節(jié)數(shù)的定點表示與浮點表示

1.定點數(shù)

定點數(shù)表示法約定:機(jī)器在運算過程中,所有數(shù)據(jù)的小數(shù)點位置固定不變,

小數(shù)點的位置由系統(tǒng)設(shè)計者指定一個不變的位置,它不占二進(jìn)制的一位,而是隱

含在機(jī)器數(shù)中的某個位置上。

事實上,不論是定點小數(shù)還是定點整數(shù)都不能直接表示表示:+11.11

如果出現(xiàn)此種情況那么11.11=22*0.1111=2-2*1111.0

此時用定點數(shù)來表示數(shù)據(jù)必須另外參加一個比例因子,以便正確說明記錄的

數(shù)據(jù)。用定點數(shù)進(jìn)展運算處理的機(jī)器稱定點機(jī)。

2.浮點數(shù)

將定點數(shù)所需的比例因子引入數(shù)據(jù)表示中,形成了浮點數(shù)。浮點數(shù)由階數(shù)和

尾數(shù)兩局部構(gòu)成。浮點數(shù)的形式如下:N=±R±E*M

其中R為階碼的底,可以為2、4、8、16等等,E為階碼,M為尾數(shù)。

通常,描述一個浮點數(shù)需要考慮以下六個參數(shù)

(1)尾數(shù)值:包括采用什么碼制(原碼、反碼、補碼,常采用原碼或補碼),

采用什么數(shù)制(小數(shù)、整數(shù),常采用小數(shù))

(2)階值:包括采用什么碼制(補碼、移碼,常采用移碼),采用什么數(shù)制(一

般采用整數(shù))

(3)尾數(shù)的基:尾數(shù)采用二進(jìn)制、四進(jìn)制、8進(jìn)制、16進(jìn)制、10進(jìn)制

(4)階的基:目前采用的只有二進(jìn)制

(5)尾數(shù)的長度

(6)階的長度

浮點數(shù)的表示形式為:

數(shù)符階符階碼數(shù)值(尾數(shù))

浮點數(shù)的表示法有很多,我們以以下四種加以說明:

原碼表示法:階和尾全是原碼;

反碼表示法:階和尾全是反碼;

補碼表示法:階和尾全是補碼;

階移尾補表示法:階為移碼,尾為補碼;

在表示浮點數(shù)的時候,為了充分利用尾數(shù)的有效位數(shù),提高數(shù)據(jù)精度需要采

用規(guī)格化表示,所以約定浮點數(shù)的尾數(shù)的數(shù)值最高位一定是有效的數(shù)據(jù)。對于原

碼表示的浮點數(shù),尾數(shù)的數(shù)值最高位為1,表示規(guī)格化;對于反碼、補碼表示的

浮點數(shù),符號位與尾數(shù)的數(shù)值最高位不一致,表示規(guī)格化。

對于一個數(shù)V,如果出現(xiàn)v>x,我們稱之為(正)上溢;如果出現(xiàn)v<z,我們

稱之為(負(fù))上溢;如果出現(xiàn)W<V<Y,我們稱之為下溢;出現(xiàn)上溢現(xiàn)象要進(jìn)展相

應(yīng)的溢出處理,出現(xiàn)下溢現(xiàn)象如此把結(jié)果直接看做是0(階、尾數(shù)全0)。當(dāng)浮點

數(shù)的位數(shù)越多,它可以表示的X圍就越大。

數(shù)據(jù)精度:指一個數(shù)的有效位數(shù)。定點數(shù)的精度為16,浮點數(shù)為11。

而在計算機(jī)中使用最多的是IEEE754標(biāo)準(zhǔn)。

第三節(jié)定點運算

1.原碼,反碼和補碼、移碼的運算

1)原碼運算:

加法:同符號相加或是異符號相減,保存符號,直值相加。

減法:異符號相加或是同符號相減,符號與絕對值大的數(shù)保持一致,真值相

減。

2)反碼運算:只有加法運算,符號參與運算

3)補碼運算:只有加法運算,符號參與運算

4)移碼運算:移碼加減移碼運算,然后修正。

2.定點數(shù)運算的溢出處理

1)溢出現(xiàn)象。對于定點數(shù)的加減運算來說,實際上可以分為兩類:同號加(加)

和異號加(減)。同號相加的時會產(chǎn)生結(jié)果不正確的現(xiàn)象,其原因是由于正確的結(jié)

果超過了數(shù)據(jù)所能夠表示的X圍,故爾稱之為溢出現(xiàn)象,異號相加是不會出現(xiàn)

溢出現(xiàn)象的。

2)溢出的判別

(1)由于溢出現(xiàn)象只出現(xiàn)在同號相加,其現(xiàn)象為正加正得負(fù)或是負(fù)加負(fù)得

正,

也可以表述為:當(dāng)符號一樣的兩個數(shù)相加時,如果結(jié)果的符號與加數(shù)(或被

加數(shù))的符號不同時,如此為溢出。

(2)當(dāng)兩個數(shù)相加,如果C<>CF,如此為溢出。溢出標(biāo)志為F=CeCF

其中C為數(shù)值位的進(jìn)位,CF為符號位的進(jìn)位。

(3)采用雙符號位。

即用00表示正數(shù),用11表示負(fù)數(shù),當(dāng)出現(xiàn)01時是正溢,出現(xiàn)10時是負(fù)溢。

3)溢出處理

計算機(jī)在運算過程中,一旦發(fā)現(xiàn)結(jié)果有溢出現(xiàn)象,必然會進(jìn)展處理。溢出處

理有的是采用軟件處理,有的是采用硬件處理。軟件硬件等效。

3.二進(jìn)制定點乘法

在計算機(jī)中,運算使用全加器,一次只能兩個數(shù)相加,所以采用累加的方式

即:A=A+B,其中A中放入的是累加的結(jié)果(局部積),B中放入的是乘數(shù)的某一

位與被乘數(shù)相乘的結(jié)果(被乘數(shù));而在計算機(jī)中都是定點小數(shù)運算,為了保證每

一位的正確位置,采用移位的方式(右移1位),所以在計算機(jī)中做乘法,就是靠

累加和移位實現(xiàn)的。

1)定點原碼一位乘法。

兩個原碼相乘,積的符號由兩原碼的符號異或而成,積的值由兩個原碼的絕

對值相乘而得。實現(xiàn)原碼一位乘,電路中應(yīng)該設(shè)有存放器A、B、C;計數(shù)器Count,

其中存放器A用于存放局部積,他在運算之初為0,在運算過程中,每次累加的

結(jié)果放入A,最終A保存的是積的高位局部,存放器B用于存放被乘數(shù),存放

器C用于存放乘數(shù),由于每次移位都是A、C同時移動,所以當(dāng)運算完畢的時候

C保存的是積的低位局部。計數(shù)器Count中保存的是被乘數(shù)、乘數(shù)的數(shù)值位數(shù)。

注:原碼移位的時候采用的是邏輯移位。

2)定點補碼一位乘

補碼乘法與原碼乘法相似,不同之處是補碼的符號位可以直接參與運算。要

實現(xiàn)補碼一位乘,電路中應(yīng)該設(shè)有存放器A、B、C;計數(shù)器Count,其中存放器

A用于存放局部積,他在運算之初為0,在運算過程中,每次累加的結(jié)果放入A,

最終A保存的是積的高位局部,存放器B用于存放被乘數(shù)補碼數(shù)值局部,存放

器C用于存放乘數(shù)補碼數(shù)值局部,由于每次移位都是A、C同時移動,所以當(dāng)運

算完畢的時候C保存的是積的低位局部。計數(shù)器Count中保存的是被乘數(shù)、乘

數(shù)的數(shù)值位數(shù)。注:采用校正法,每次做加法之后要算術(shù)右移,但做校正時只加,

不移位。

3)原碼兩位乘法(軟件工程、物聯(lián)網(wǎng)、信息管理專業(yè)略)

進(jìn)展原碼兩位乘法的時候,當(dāng)乘數(shù)末兩位為00如此A=A+0;當(dāng)乘數(shù)末兩位

為01如此A=A+X;當(dāng)乘數(shù)末兩位為10如此A=A+2X;當(dāng)乘數(shù)末兩位為11如此

A=A+3X。由于3X不好實現(xiàn)所以改為4X-X,即當(dāng)乘數(shù)末兩位為11如此A=A-X,

然后右移2位,并設(shè)標(biāo)志位CJ=1。

關(guān)于原碼兩位乘的說明:

①符號位由兩個乘數(shù)的的符號位相異或,數(shù)值的絕對值相乘(符號位三位防

止假溢出)。

②運算規(guī)如此見上表,+X表示加被乘數(shù)的絕對值,-X表示加被乘數(shù)的絕對

值的補。

③乘數(shù)如果為奇數(shù)位時,末位加個,0',或最后一次移位只移動一位。

④運算到最高數(shù)值位完畢,但當(dāng)此時CJ=1,要追加一個+X,但不移位。

4.補碼兩位乘法

采用兩位布斯算法,所以要加一個附加位,置為0。說明:對于數(shù)值位為奇

數(shù)n個位的數(shù)來說,操作(n+l)/2次,且最后一次只右移1位。對于數(shù)值位為偶

數(shù)n個位的數(shù)來說,①補個7T,操作n/2+l次,且最后一次只右移1位。②Y采

用雙符號操作n/2+l次,且最后一次不移位。

第四節(jié)浮點四如此運算

1.浮點數(shù)加減法

i)檢測操作數(shù)是否為0

判斷浮點數(shù)為0的方式:(1)尾數(shù)為0,(2)階碼下溢

加法:如果有一個為0,和就是另一個數(shù)。

減法:如果被減數(shù)為0,差為減數(shù)求補;如昊減數(shù)為0,差為被減數(shù)。

2)對階:調(diào)整兩個浮點數(shù)的階碼,使他們的階一致。通常把階小的數(shù)調(diào)整

成與階大的一致。

3)數(shù)相加減:其方法與定點數(shù)一樣。

4)結(jié)果規(guī)格化:運算完畢,當(dāng)尾數(shù)的絕對值大于等于1時,尾數(shù)右移1位,

階加1,使之規(guī)格化,成為右規(guī);當(dāng)尾數(shù)的絕對值小于1/2時,尾數(shù)左移,階相

減,使之規(guī)格化,成為左規(guī)。通常浮點數(shù)加減運算不會溢出,但是理論上仍然有

溢出的可能。例如兩個極大的數(shù)相加,規(guī)格化時,導(dǎo)致階碼溢出,此時浮點數(shù)溢

出。

5)舍入:由于對階的時候階小的要與階大的對齊,所以常常會導(dǎo)致一些階

小的浮點數(shù)的一些數(shù)據(jù)被移出浮點數(shù)的尾數(shù)(尾數(shù)的位數(shù)不夠),所以要采取舍入

處理。以一個8位階24位尾的浮點數(shù)為例。

①截斷法:把多余局部截去。

電路可以不加任何多余電路,誤差最大。最大誤差=2-23。如果尾數(shù)采用補

碼,正數(shù)和負(fù)數(shù)的積累誤差最大,正數(shù)積累誤差偏負(fù)(比熨際值?。?,負(fù)數(shù)積累誤

差偏正(比實際值大),如果把數(shù)據(jù)一起考慮總誤差為()。

②舍入法:()舍1入。

電路加1位,最大誤差=2-24,如果尾數(shù)采用補碼,正數(shù)和負(fù)數(shù)的積累誤差

比③小。

③恒1法:末位恒置Io

電路可以不加任何多余電路,最大誤差合2?23,如果尾數(shù)采用補碼,正數(shù)和

負(fù)數(shù)的積累誤差比①小。

④查表舍入法

它把尾數(shù)的低K-1位和被舍入局部的最高位送入一個ROM表,通過表的內(nèi)

容得到對應(yīng)的近似結(jié)果。這個方法電路復(fù)雜,但是速度快,ROM速度比做加法

快,平均誤差=0,如果尾數(shù)采用補碼,正數(shù)和負(fù)數(shù)的積累誤差最小。

6)溢出判斷:當(dāng)階碼局部正溢,如此稱浮點數(shù)上溢出,進(jìn)入溢出處理;當(dāng)

階碼局部負(fù)溢,如此稱浮點數(shù)下溢出,浮點數(shù)直接置為0(尾數(shù)為0)。

2.浮點乘法

(1)檢查操作數(shù)是否為0,并置結(jié)果符號。如果有一個操作數(shù)為0,結(jié)果為0。

(2)階碼相加:階碼相加可能會產(chǎn)生溢出,上溢出進(jìn)入溢出處理,下溢出直

接積為Oo

(3)尾數(shù)相乘:方法同定點乘法。

(4)規(guī)格化。

(5)舍入

(6)溢出處理

第五節(jié)算術(shù)邏輯單元

1.算術(shù)邏輯運算部件(ALU)

參見書中281頁圖6.17o

2.先行進(jìn)位鏈

通過對一位全加電路的學(xué)習(xí)我們知道,一位全加器有三個輸入A

溫馨提示

  • 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

提交評論