計(jì)算機(jī)考研組成原理知識(shí)點(diǎn)講解_第1頁(yè)
計(jì)算機(jī)考研組成原理知識(shí)點(diǎn)講解_第2頁(yè)
計(jì)算機(jī)考研組成原理知識(shí)點(diǎn)講解_第3頁(yè)
計(jì)算機(jī)考研組成原理知識(shí)點(diǎn)講解_第4頁(yè)
計(jì)算機(jī)考研組成原理知識(shí)點(diǎn)講解_第5頁(yè)
已閱讀5頁(yè),還剩45頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、計(jì)算機(jī)考研組成原理知識(shí)點(diǎn)講解重點(diǎn)知識(shí)和概念精講第一章計(jì)算機(jī)系統(tǒng)概述復(fù)習(xí)要點(diǎn):了解計(jì)算機(jī)發(fā)展歷程;了解計(jì)算機(jī)系統(tǒng)層次結(jié)構(gòu)及其相關(guān)的硬件基本組成、軟件分類(lèi)和工作過(guò)程;了解計(jì)算機(jī)性能指標(biāo)及有關(guān)的計(jì)算與術(shù)語(yǔ)解釋簡(jiǎn)單說(shuō)明在教材內(nèi)容選擇和教學(xué)過(guò)程中,計(jì)算機(jī)系統(tǒng)概述是作為課程緒論性質(zhì)的內(nèi)容來(lái)對(duì)待的,重點(diǎn)不是要求學(xué)生掌握更深入的具體知識(shí),而強(qiáng)調(diào)盡早地從層次的觀點(diǎn)了解計(jì)算機(jī)系統(tǒng)硬件、軟件的完整組成,認(rèn)識(shí)硬軟件之間的相互依存和同一功能既能用硬件也可用軟件來(lái)實(shí)現(xiàn)的等效關(guān)系;了解組成計(jì)算機(jī)硬件系統(tǒng)的5個(gè)功能部件及其通過(guò)3種類(lèi)型的總線實(shí)現(xiàn)相互之間的連接關(guān)系,了解計(jì)算機(jī)系統(tǒng)主要的技術(shù)指標(biāo),了解組成軟件系統(tǒng)的操作系統(tǒng)、3個(gè)

2、級(jí)別語(yǔ)言的特點(diǎn)及其運(yùn)行過(guò)程,了解計(jì)算機(jī)的發(fā)展歷程和多種分類(lèi)情況等。在準(zhǔn)備考試的過(guò)程中,應(yīng)該把教材各章中的內(nèi)容融會(huì)貫通,理解為好,不宜死記硬背,例如本章中的技術(shù)與性能指標(biāo)就應(yīng)與后續(xù)各部分的更具體指標(biāo)建立聯(lián)系,理解準(zhǔn)確。這一部分內(nèi)容的試題將以選擇、判斷和填空為主,不存在答題技巧等方面的問(wèn)題。1.1 計(jì)算機(jī)的產(chǎn)生、發(fā)展與應(yīng)用1 .硬件的發(fā)展自從1946年誕生人類(lèi)第一臺(tái)數(shù)字電子計(jì)算機(jī)ENIAC以來(lái),即從1946年直至現(xiàn)在,構(gòu)成計(jì)算機(jī)硬件的主要器件從電子管發(fā)展成晶體管、中小規(guī)模集成電路、大規(guī)模集成電路直至超大規(guī)模集成電路,使計(jì)算機(jī)從第一代發(fā)展到四代,直至現(xiàn)在正研制的新一代計(jì)算機(jī),它的速度從40000次/

3、秒發(fā)展到100000000次/秒。微處理機(jī)白字長(zhǎng)從4位的4004發(fā)展到8位的8080直至目前64位的PentiumIV。根據(jù)摩爾定律集成電路容量大體上每18個(gè)月翻一番,可能今后的10年仍然會(huì)如此。2 .軟件的發(fā)展計(jì)算機(jī)系統(tǒng)的發(fā)展與軟件技術(shù)的興起和發(fā)展也是密切相關(guān)的。計(jì)算機(jī)語(yǔ)言的發(fā)展歷經(jīng)了面向機(jī)器的機(jī)器語(yǔ)言和匯編語(yǔ)言、面向問(wèn)題的高級(jí)語(yǔ)言;高級(jí)語(yǔ)言的發(fā)展也從科學(xué)計(jì)算和工程計(jì)算的FORTRAN、結(jié)構(gòu)化程序設(shè)計(jì)PASCAL到面向?qū)ο蟮腃+語(yǔ)言和適應(yīng)網(wǎng)絡(luò)環(huán)境的Java語(yǔ)言;與此同時(shí),直接影響計(jì)算機(jī)系統(tǒng)性能提升的各種系統(tǒng)軟件,也有了長(zhǎng)足的發(fā)展,特別是微機(jī)的操作系統(tǒng),從DOS發(fā)展到目前的窗口與網(wǎng)絡(luò)操作系統(tǒng)。

4、3 .計(jì)算機(jī)的應(yīng)用計(jì)算機(jī)系統(tǒng)的發(fā)展實(shí)際上與計(jì)算機(jī)的應(yīng)用是互相促進(jìn)的,計(jì)算機(jī)的應(yīng)用從早期的科學(xué)計(jì)算、數(shù)據(jù)處理到工業(yè)控制、實(shí)時(shí)控制,直至目前的網(wǎng)絡(luò)技術(shù)(電子商務(wù)、網(wǎng)絡(luò)教育)、和多媒體技術(shù)與人工智能方面等等諸多的應(yīng)用。隨著社會(huì)需求和微電子技術(shù)的不斷發(fā)展,計(jì)算機(jī)的系統(tǒng)結(jié)構(gòu)仍在繼續(xù)發(fā)展,其發(fā)展趨勢(shì)是:從體積上向巨型化和微小型化發(fā)展;從處理與應(yīng)用上向并行處理、網(wǎng)絡(luò)化、多媒體、智能化等方向發(fā)展;計(jì)算機(jī)的體系結(jié)構(gòu)等方面可能有發(fā)展或重大突破。1.2 計(jì)算機(jī)的分類(lèi)按信號(hào)類(lèi)型分為模擬計(jì)算機(jī)和數(shù)字計(jì)算機(jī);按規(guī)模分為:嵌入式,單片機(jī),微型機(jī),小型機(jī),中型機(jī),大型機(jī)和巨型機(jī);按發(fā)展歷程分為(世界上第一臺(tái)計(jì)算機(jī)誕生的時(shí)間1

5、946年和名稱ENIAC):電子管,晶體管,集成電路,大規(guī)模、超大規(guī)模集成電路4代計(jì)算機(jī);(1)單指令流、(2)單指令流、(3)多指令流、(4)多指令流、單數(shù)據(jù)流系統(tǒng)多數(shù)據(jù)流系統(tǒng)單數(shù)據(jù)流系統(tǒng)多數(shù)據(jù)流系統(tǒng)按指令和數(shù)據(jù)流分為:SISD(傳統(tǒng)馮諾依曼體系結(jié)構(gòu)),SIMD(陣列處理機(jī)和向量處理機(jī)系統(tǒng))MISI(?),MIMD(多處理機(jī)和多計(jì)算機(jī)系統(tǒng))<1.3 計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)計(jì)算機(jī)硬件的基本組成1 .馮諾依曼體系結(jié)構(gòu)計(jì)算機(jī),存儲(chǔ)程序的計(jì)算機(jī),其特點(diǎn)是:使用電子電路實(shí)現(xiàn)計(jì)算機(jī)的主要功能,完成高速、自動(dòng)的運(yùn)行過(guò)程,使用二進(jìn)制代碼,既表示數(shù)據(jù)又表示指令,運(yùn)行的程序和數(shù)據(jù)保存在存儲(chǔ)器中,按地址順序存

6、放,通過(guò)地址完成讀寫(xiě)在早期是以運(yùn)算器為中心來(lái)組織的,指令串行執(zhí)行,是典型的單指令流單數(shù)據(jù)流的系統(tǒng)。2 .硬件組成的5個(gè)功能部件:計(jì)算機(jī)硬件的5個(gè)功能部件奠定了至今仍在沿用的計(jì)算機(jī)的基本結(jié)構(gòu),但有了許多改進(jìn)和完善。(1)運(yùn)算器:完成數(shù)據(jù)的暫存、變換、算術(shù)和邏輯運(yùn)算功能,(2)控制器:完成對(duì)計(jì)算機(jī)各部件協(xié)同運(yùn)行的指揮控制,即保證指令按預(yù)定的次序執(zhí)行,保障每一條指令按規(guī)定的執(zhí)行步驟正確執(zhí)行,還要處理各項(xiàng)緊急事件。(3)存儲(chǔ)器:主存和輔存,主存存儲(chǔ)正在運(yùn)行的程序和相關(guān)數(shù)據(jù),輔存保存程序和數(shù)據(jù)文檔;(4)輸入設(shè)備:用于向計(jì)算機(jī)送入用戶操作命令、程序和數(shù)據(jù);(5)輸出設(shè)備:用于送出計(jì)算機(jī)的運(yùn)行結(jié)果等內(nèi)容,

7、計(jì)算機(jī)的5個(gè)功能部件通過(guò)數(shù)據(jù)總線、地址總線、控制總線彼此連接在一起,實(shí)現(xiàn)信息通訊,3種總線分別用于傳送數(shù)據(jù)(指令)信息,主存和入出設(shè)備接口的地址信息,主存和入出設(shè)備等的操作與控制信息。1.4 計(jì)算機(jī)軟件的分類(lèi)1 .分類(lèi)(1)系統(tǒng)軟件用于管理整個(gè)計(jì)算機(jī)系統(tǒng)語(yǔ)言處理程序:有操作系統(tǒng);服務(wù)性程序;數(shù)據(jù)庫(kù)管理系統(tǒng);網(wǎng)絡(luò)軟件。(2)應(yīng)用軟件:指按任務(wù)需要編制成的各種程序。2 .三個(gè)級(jí)別的語(yǔ)言(1)機(jī)器語(yǔ)言機(jī)器語(yǔ)言指的是一臺(tái)計(jì)算機(jī)的指令系統(tǒng),它可以被用來(lái)編寫(xiě)程序,構(gòu)成編寫(xiě)程序的一種語(yǔ)百,又被稱為二進(jìn)制代碼語(yǔ)百。(2)匯編語(yǔ)言匯編語(yǔ)言大體上是對(duì)計(jì)算機(jī)機(jī)器語(yǔ)言的符號(hào)化處理的結(jié)果,再增加一些為方便程序設(shè)計(jì)而實(shí)現(xiàn)

8、的擴(kuò)展功能。(3)高級(jí)語(yǔ)言高級(jí)語(yǔ)言又稱算法語(yǔ)言(algorithmlanguage),它的實(shí)現(xiàn)思路,不再是過(guò)分地“靠攏”計(jì)算機(jī)硬件的指令系統(tǒng),而是著重面向解決實(shí)際問(wèn)題所用的算法。1.5 計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)完整的計(jì)算機(jī)系統(tǒng)由硬件(hardware)和軟件(software)兩類(lèi)資源組成計(jì)算機(jī)的硬件系統(tǒng)是計(jì)算機(jī)系統(tǒng)中的物理設(shè)備,是一種高度復(fù)雜的、由多種電子線路、精密機(jī)械裝置等構(gòu)成的、能自動(dòng)并且高速地完成數(shù)據(jù)計(jì)算的裝置或者工具。計(jì)算機(jī)的軟件系統(tǒng)是計(jì)算機(jī)系統(tǒng)中的程序和相關(guān)數(shù)據(jù),包括完成計(jì)算機(jī)資源管理、方便用戶使用的系統(tǒng)軟件(廠家提供),和完成用戶對(duì)數(shù)據(jù)的預(yù)期處理功能的應(yīng)用軟件(廠家提供)與用戶軟件(

9、用戶設(shè)計(jì)并自己使用)兩大部分。計(jì)算機(jī)的硬、軟件,二者相互依存,分工互動(dòng),缺一不可。硬件是計(jì)算機(jī)系統(tǒng)中保存與運(yùn)行軟件程序的物質(zhì)基礎(chǔ),軟件則是指揮硬件完成預(yù)期功能的智力部分,正如一個(gè)健全和健康的人一樣,必須同時(shí)具備物質(zhì)性的肉體和精神性的智力與思維。計(jì)算機(jī)硬件和軟件系統(tǒng)的組成關(guān)系可以從如圖1.1所示的六個(gè)層次來(lái)進(jìn)一步深入認(rèn)識(shí)。圖中最下面的2層屬于硬件部分,最上面的3層屬于軟件部分,而中間的指令系統(tǒng)層連接了硬件和軟件兩部分,與兩部分都有密切關(guān)系。構(gòu)成計(jì)算機(jī)系統(tǒng)的最底層即第0層,是數(shù)字邏輯層。這說(shuō)明實(shí)現(xiàn)計(jì)算機(jī)硬件的最重要的物質(zhì)材料是電子線路,是能夠直接處理離散的數(shù)字信號(hào)的數(shù)字邏輯電路。數(shù)字電路和邏輯設(shè)計(jì)

10、是學(xué)習(xí)計(jì)算機(jī)組成原理時(shí)要用到的預(yù)備性知識(shí)。第1層是微體系結(jié)構(gòu)(microarchitecture)層,也可以稱其為計(jì)算機(jī)裸機(jī)。計(jì)算機(jī)的核心功能是執(zhí)行程序,程序是按一定規(guī)則和順序組織起來(lái)的指令序列。這一層體現(xiàn)的是,為了執(zhí)行指令,需要在計(jì)算機(jī)中設(shè)置哪些功能部件(例如:存儲(chǔ)、運(yùn)算、輸入和輸出、接口和總線等部件,當(dāng)然還有更復(fù)雜一點(diǎn)的是控制器部件),每個(gè)部件又如何具體組成和怎樣運(yùn)行,這些部件如何實(shí)現(xiàn)相互連接并協(xié)同工作等方面的知識(shí)和技術(shù)。通常,計(jì)算機(jī)硬件系統(tǒng)由運(yùn)算器部件(數(shù)據(jù)通路)、控制器部件、存儲(chǔ)器部件、輸入設(shè)備、輸出設(shè)備這5部分組成。第2層是指令系統(tǒng)(instructionset)層,它介于硬件和軟件

11、之間。這涉及到需要確定使用哪些指令,指令能夠處理的數(shù)據(jù)類(lèi)型和對(duì)其運(yùn)算所用的算法,每一條指令的格式和完成的功能,如何指出想要對(duì)其執(zhí)行讀操作或者寫(xiě)操作的存儲(chǔ)器的一個(gè)存儲(chǔ)單元,如何指出想要執(zhí)行輸入或者輸出操作的一個(gè)外圍設(shè)備,對(duì)哪一個(gè)或二個(gè)數(shù)據(jù)進(jìn)行運(yùn)算,執(zhí)行哪一種運(yùn)算、如何保存計(jì)算結(jié)果等。指令系統(tǒng)是計(jì)算機(jī)硬件系統(tǒng)設(shè)計(jì)、實(shí)現(xiàn)的最基本和最重要的依據(jù),與計(jì)算機(jī)硬件實(shí)現(xiàn)的復(fù)雜程度、設(shè)計(jì)程序的難易程度、程序占用硬件資源的多少、程序運(yùn)行的效率等都直接相關(guān)。計(jì)算機(jī)是由人指揮控制的,供人來(lái)使用的。第3層是操作系統(tǒng)(operatingsystem)層。它主要分擔(dān)計(jì)算機(jī)系統(tǒng)中的資源管理與分配,也向使用者和程序設(shè)計(jì)人員提供

12、簡(jiǎn)單、方便、高效的服務(wù)。一套計(jì)算機(jī)系統(tǒng),包含了大量的、高價(jià)的、管理和使用相當(dāng)復(fù)雜的硬件資源和軟件資源,不僅一般水平的使用人員,就是水平很高的專(zhuān)業(yè)人員都難以直接控制和操作,還是把資源管理和調(diào)度功能留給計(jì)算機(jī)系統(tǒng)本身來(lái)完成更可靠,這些功能是由操作系統(tǒng)承擔(dān)的。操作系統(tǒng)的存在,又為使用計(jì)算機(jī)的用戶提供了許多支持,與程序設(shè)計(jì)語(yǔ)言相結(jié)合,使得程序設(shè)計(jì)更簡(jiǎn)化,建立用戶的應(yīng)用程序和操作計(jì)算機(jī)更方便。第4層是匯編語(yǔ)言(assemblylanguage)層。匯編語(yǔ)言大體上是對(duì)計(jì)算機(jī)機(jī)器語(yǔ)言的符號(hào)化處理的結(jié)果,再增加一些為方便程序設(shè)計(jì)而實(shí)現(xiàn)的擴(kuò)展功能。與機(jī)器語(yǔ)言相比,匯編語(yǔ)言至少有2大優(yōu)點(diǎn)。首先實(shí)現(xiàn)用英文單詞或其縮

13、寫(xiě)形式替代二進(jìn)制的指令代碼,更容易為人們記憶和理解;其次是可以選用含義明確的英文單詞來(lái)表示程序中用到的數(shù)據(jù)(常量和變量),并且避免程序設(shè)計(jì)人員親自花費(fèi)精力為這些數(shù)據(jù)分配存儲(chǔ)單元。如果在此基礎(chǔ)上,還可以在支持程序的不同結(jié)構(gòu)特性(如循環(huán)和重復(fù)執(zhí)行等結(jié)構(gòu)),子程序所用形式參數(shù)替換為真實(shí)參數(shù)等方面提供必要的支持。匯編語(yǔ)言的程序必須經(jīng)過(guò)一個(gè)叫做匯編程序的系統(tǒng)軟件的翻譯,將其轉(zhuǎn)換為計(jì)算機(jī)的機(jī)器語(yǔ)言后,才能在計(jì)算機(jī)的硬件系統(tǒng)上予以執(zhí)行。第5層是高級(jí)語(yǔ)言層,高級(jí)語(yǔ)言又稱算法語(yǔ)言(algorithmlanguage),它的實(shí)現(xiàn)思路,不再是過(guò)分地“靠攏”計(jì)算機(jī)硬件的指令系統(tǒng),而是著重面向解決實(shí)際問(wèn)題所用的算法,更

14、多的是為方便程序設(shè)計(jì)人員寫(xiě)出自己解決問(wèn)題的處理方案和解題過(guò)程的程序。目前常用的高級(jí)語(yǔ)言有BASIC、C、C+、1PASCAL、JAVA、PROLOG等多種。用這些語(yǔ)言設(shè)計(jì)出來(lái)的程序,通常需要經(jīng)過(guò)一個(gè)叫做編譯程序的軟件編譯成機(jī)器語(yǔ)言程序,或者首先編譯成匯編程序后,再經(jīng)過(guò)匯編操作后得到機(jī)器語(yǔ)言程序,才能在計(jì)算機(jī)的硬件系統(tǒng)上予以執(zhí)行;也可以由一個(gè)叫做解釋執(zhí)行程序的軟件,逐條取來(lái)相應(yīng)高級(jí)語(yǔ)言程序的每個(gè)語(yǔ)句并直接控制其完成執(zhí)行過(guò)程,而不是把整個(gè)程序編譯為機(jī)器語(yǔ)言程序之后再交給硬件系統(tǒng)加以執(zhí)行,解釋執(zhí)行程序的最大缺點(diǎn)是運(yùn)行效率比很低。高級(jí)語(yǔ)言不屬于計(jì)算機(jī)組成課程的內(nèi)容。在高級(jí)語(yǔ)言層之上,還可以有應(yīng)用層,由

15、解決實(shí)際問(wèn)題的處理程序組成,例如文字處理軟件,數(shù)據(jù)庫(kù)軟件,網(wǎng)絡(luò)軟件,多媒體信息處理軟件,辦公自動(dòng)化軟件等。計(jì)算機(jī)是用于解決各種應(yīng)用問(wèn)題的系統(tǒng),為有應(yīng)用而存在,為處理各種應(yīng)用問(wèn)題而體現(xiàn)出它的性能和價(jià)值。上述可知,計(jì)算機(jī)系統(tǒng)的6層結(jié)構(gòu)在不同層次之間的關(guān)系表現(xiàn)為:(1)上面的一層是建立在下一層的基礎(chǔ)上實(shí)現(xiàn)出來(lái)的,實(shí)現(xiàn)的功能更強(qiáng)大。也就是說(shuō),上一層較下一層更接近人們解決問(wèn)題的思維方式和處理問(wèn)題的具體過(guò)程,更便于使用,而且使用這一層提供的功能時(shí),不必關(guān)心下一層的實(shí)現(xiàn)細(xì)節(jié)。(2)下面一層是實(shí)現(xiàn)上一層的基礎(chǔ),更接近計(jì)算機(jī)硬件實(shí)現(xiàn)的細(xì)節(jié),實(shí)現(xiàn)的功能相對(duì)簡(jiǎn)單,人們使用這些功能更感到困難。在實(shí)現(xiàn)這一層的功能時(shí),可

16、能尚無(wú)法了解其上一層的最終目標(biāo)和將要解決的問(wèn)題,也不必理解其更下一層實(shí)現(xiàn)中的有關(guān)細(xì)節(jié)問(wèn)題,只要使用下一層所提供出來(lái)的功能來(lái)完成本層次的功能處理即可。(3)采用這種分層次的方法來(lái)分析和解決某些問(wèn)題,有利于簡(jiǎn)化處理問(wèn)題的難度,在某一段時(shí)間,在處理某一層中的問(wèn)題時(shí),只需集中精力解決當(dāng)前最需要關(guān)心的核心問(wèn)題即可,而不必牽扯各上下層中的其他問(wèn)題。例如,在用高級(jí)語(yǔ)言設(shè)計(jì)程序時(shí),無(wú)需深入了解匯編及其各低層內(nèi)容。在大部分的教材中,人們通常把沒(méi)有配備軟件的純硬件系統(tǒng)成為“裸機(jī)”,這是計(jì)算機(jī)系統(tǒng)的根基或稱“內(nèi)核”,它的設(shè)計(jì)目標(biāo)更多地集中到有利于提供性能又方便硬件實(shí)現(xiàn)和降低成本,因此提供的功能相對(duì)較弱,只能執(zhí)行由機(jī)

17、器語(yǔ)言構(gòu)成的程序,非常難以使用。為此,人們期望能開(kāi)發(fā)出功能更強(qiáng)、更接近人的思維方式和使用習(xí)慣的語(yǔ)言,這是通過(guò)在裸機(jī)上配備適當(dāng)?shù)能浖?lái)完成的。每加一層軟件就構(gòu)成一個(gè)新的“虛擬計(jì)算機(jī)”,功能更強(qiáng)大,使用也更加方便。例如,可以把計(jì)算機(jī)系統(tǒng)的一到五層分別稱為L(zhǎng)0裸機(jī)、L1虛擬機(jī)(支持機(jī)器語(yǔ)言卜L2虛擬機(jī)(增加了操作系統(tǒng)卜L3虛擬機(jī)(增加了匯編語(yǔ)言)、L4虛擬機(jī)(增加了高級(jí)語(yǔ)言)。1.6 計(jì)算機(jī)的工作過(guò)程使用計(jì)算機(jī)處理一個(gè)實(shí)際問(wèn)題的過(guò)程(1)建立數(shù)學(xué)模型,找出反映待處理問(wèn)題規(guī)律的數(shù)學(xué)模型(2)找出計(jì)算方法,選擇實(shí)現(xiàn)模型計(jì)算的具體算法(3)編寫(xiě)計(jì)算機(jī)程序,選用合適的計(jì)算機(jī)語(yǔ)言編寫(xiě)實(shí)現(xiàn)算法的程序(4)調(diào)試運(yùn)

18、行程序,調(diào)試寫(xiě)好的程序,調(diào)試正確后則運(yùn)行這個(gè)程序(5)輸出運(yùn)算結(jié)果,把程序的運(yùn)行結(jié)果輸出出來(lái)計(jì)算機(jī)硬件的工作過(guò)程如果僅從得到計(jì)算機(jī)機(jī)器語(yǔ)言的程序之后看(1)把程序和數(shù)據(jù)裝入到主存儲(chǔ)器中(2)從程序的起始地址運(yùn)行程序;(3)用程序首地址從存儲(chǔ)器中取出第1條指令,經(jīng)過(guò)譯碼、執(zhí)行步驟等控制計(jì)算機(jī)各功能部件協(xié)同運(yùn)行,完成這條指令功能,并計(jì)算出下一條指令的地址;(4)用新得到的指令地址繼續(xù)讀出第2條指令并執(zhí)行之,直到程序結(jié)束為止;每一條指令都是在取指、譯碼和執(zhí)行的循環(huán)過(guò)程中完成的。1.7 計(jì)算機(jī)系統(tǒng)性能指標(biāo)這里只是從整機(jī)的角度,給出計(jì)算機(jī)系統(tǒng)的某些技術(shù)與性能指標(biāo),突出幾個(gè)重要概念和基本術(shù)語(yǔ),各個(gè)部件的更

19、具體的指標(biāo)安排到后續(xù)的章節(jié)去介紹。(1)計(jì)算機(jī)字長(zhǎng)從物理上容易實(shí)現(xiàn)和數(shù)據(jù)運(yùn)算規(guī)則簡(jiǎn)單考慮,現(xiàn)代的計(jì)算機(jī)普遍使用二進(jìn)制,即每一位(一個(gè)bit)上的數(shù)值只有0和1兩個(gè)值,相鄰數(shù)位之間采用“逢二進(jìn)一”的規(guī)則處理,用從右到左依次排列起來(lái)的一串二進(jìn)制的數(shù)表示不同的數(shù)值和信息。在計(jì)算機(jī)系統(tǒng)內(nèi)部,通常選用多少個(gè)二進(jìn)制位來(lái)表示一個(gè)數(shù)據(jù)或一條指令是一個(gè)關(guān)鍵技術(shù)指標(biāo),例如16、32或者64位,這個(gè)位數(shù)被稱為計(jì)算機(jī)字長(zhǎng)。通常是2、4、8個(gè)Byte(Byte,由8個(gè)二進(jìn)制位組成)。(2) CPU速度衡量CPU速度,通常有兩種方式。第一種方式使用CPU主頻,即CPU系統(tǒng)使用的時(shí)鐘脈沖的頻率(每一秒鐘提供的時(shí)鐘脈沖的個(gè)數(shù)

20、稱為赫茲Hz,106Hz:MHz,109Hz:GHz)來(lái)表示,例如500MHz。對(duì)同一個(gè)型號(hào)的計(jì)算機(jī),其主頻越高,完成指令的一個(gè)執(zhí)行步驟所用的時(shí)間越短,執(zhí)行指令的速度越快,但對(duì)不同廠家、不同系列的計(jì)算機(jī)系統(tǒng),只用CPU主頻來(lái)說(shuō)明其運(yùn)行速度就未必準(zhǔn)確。第二種方式使用CPU每一秒鐘能執(zhí)行的指令條數(shù),單位是MIPS(millioninstructionspersecond),其計(jì)算公式可以通過(guò)如下方式推導(dǎo)出來(lái):T=CPIXT_ICXI這里的T是執(zhí)行一個(gè)程序占用的全部時(shí)間,CPI是執(zhí)行一條指令平均使用的CPU時(shí)鐘個(gè)數(shù),T_IC是一個(gè)CPU時(shí)鐘的時(shí)間長(zhǎng)度,是CPU主頻f的倒數(shù)1/f,I是這個(gè)程序的指令條

21、數(shù),3個(gè)數(shù)值的乘積就等于這個(gè)程序總的運(yùn)行時(shí)間To由此得到:I=T/(CPIx1/f)=(TXf)/CPI,這個(gè)公式表明,單位時(shí)間內(nèi)執(zhí)行的指令條數(shù)正比于CPU的時(shí)鐘頻率f,這個(gè)頻率的高低取決于計(jì)算機(jī)的實(shí)現(xiàn)技術(shù)、生產(chǎn)工藝和計(jì)算機(jī)組成;反比于每條指令的執(zhí)行步驟數(shù)目,它反映計(jì)算機(jī)的實(shí)現(xiàn)技術(shù)、計(jì)算機(jī)指令系統(tǒng)的結(jié)構(gòu)和計(jì)算機(jī)組成;一個(gè)程序的指令條數(shù)還與計(jì)算機(jī)指令系統(tǒng)的結(jié)構(gòu)和編譯技術(shù)有關(guān)系。當(dāng)取T=1秒,并假定f為300Mhz,CPI為4,則計(jì)算出該CPU系統(tǒng)的性能為300/4,等于75個(gè)MIPS,即每秒執(zhí)行75個(gè)百萬(wàn)條指令。若有辦法使這臺(tái)計(jì)算機(jī)的CPI靠近1,則其運(yùn)行性能就可以提高近4倍,這正是精簡(jiǎn)指令系統(tǒng)

22、計(jì)算機(jī)(RISC)所追求的目標(biāo)。若進(jìn)一步細(xì)化,可以寫(xiě)出計(jì)算CPI的公式,CPI=!2CPIjXIj/I(j的值由1到n),這里的I是程序的總指令條數(shù),n是指令的種類(lèi),CPIi是每類(lèi)指令的執(zhí)行步驟數(shù),Ij/I表示在程序中這類(lèi)指令數(shù)目與總指令數(shù)目的比例。這種通過(guò)引入不同指令在程序中出現(xiàn)的頻率來(lái)計(jì)算加權(quán)CPI的方法,更能反應(yīng)計(jì)算機(jī)系統(tǒng)運(yùn)行的真實(shí)性能。由于在計(jì)算機(jī)中用于計(jì)算整數(shù)的指令和計(jì)算機(jī)浮點(diǎn)數(shù)(實(shí)數(shù))的指令執(zhí)行速度差異較大,不同程序中這兩類(lèi)指令所占的比例也有很大不同,為此人們還分別用MIPS、MFLOPS描述整數(shù)指令和浮點(diǎn)數(shù)指令的執(zhí)行速度,以便對(duì)比不同計(jì)算機(jī)系統(tǒng)的CPU性能水平。(3)存儲(chǔ)容量計(jì)算

23、機(jī)中的存儲(chǔ)器通常包括內(nèi)存儲(chǔ)器和外存儲(chǔ)器兩大類(lèi),內(nèi)存儲(chǔ)器又被稱為主存儲(chǔ)器,通常用半導(dǎo)體器件實(shí)現(xiàn),讀寫(xiě)速度快,價(jià)格較高,通常容量要小一些,可供CPU通過(guò)指令直接訪問(wèn)。外存儲(chǔ)器又稱輔助存儲(chǔ)器、海量存儲(chǔ)器等,主要包括磁盤(pán)設(shè)備、光盤(pán)設(shè)備、磁帶設(shè)備等,通常是在機(jī)械旋轉(zhuǎn)或移動(dòng)的盤(pán)片、磁帶上設(shè)置一層記錄信息的物質(zhì),用磁化、改變反射光強(qiáng)度的方式寫(xiě)入或讀出二進(jìn)制的信息,讀寫(xiě)速度要慢得多,容量很大。存儲(chǔ)器的容量大,就可以保存更多的信息,計(jì)算機(jī)運(yùn)行的速度就可以更快,相應(yīng)的硬件成本也就更高。(4)內(nèi)存的存取周期和外存的數(shù)據(jù)傳送速率內(nèi)存儲(chǔ)器的讀寫(xiě)周期是指啟動(dòng)連續(xù)的兩次讀寫(xiě)操作所必需的時(shí)間間隔,通常都比較短,當(dāng)前的內(nèi)存儲(chǔ)器

24、存取周期為幾個(gè)納秒到十幾個(gè)納秒(ns),讀寫(xiě)速度快的存儲(chǔ)器價(jià)格要貴一些,要合理選用。外存儲(chǔ)器會(huì)涉及到機(jī)械運(yùn)動(dòng),找到要讀寫(xiě)數(shù)據(jù)在硬磁盤(pán)中的位置通常需要幾個(gè)到十幾個(gè)毫秒(ms),一次讀出幾百個(gè)字節(jié)的信息通常需要若干毫秒,而連續(xù)讀出一批數(shù)據(jù)平均到每個(gè)信息上的讀出時(shí)間可以更短。通常把單位時(shí)間內(nèi)可以對(duì)磁盤(pán)設(shè)備讀寫(xiě)的數(shù)據(jù)數(shù)量稱為設(shè)備的傳輸速率。(5)輸入輸出設(shè)備的入出速度計(jì)算機(jī)的輸入輸出設(shè)備是計(jì)算機(jī)系統(tǒng)中比較復(fù)雜的部分,其組成和運(yùn)行原理各不相同,與計(jì)算機(jī)主機(jī)的連接與控制方式也多有差異,在電子線路之外還涉及到精密機(jī)械、光學(xué)、激光、電磁轉(zhuǎn)換等許多知識(shí)。不同的輸入輸出設(shè)備的運(yùn)行速度各不相同,例如針式打印機(jī)每秒只

25、能打印幾個(gè)字符,而激光打印機(jī)則可以打印多行甚至幾頁(yè)打印紙的信息,鍵盤(pán)輸入則主要取決于人員打字的速度。顯示器的屏幕大小、分辨率高低、顯示字符還是圖形不同內(nèi)容、屏幕刷新頻率等都對(duì)系統(tǒng)性能有重要影響1.8 幾個(gè)專(zhuān)業(yè)術(shù)語(yǔ)和概念系列機(jī):具有基本相同的體系結(jié)構(gòu),使用相同的基本指令系統(tǒng)的多個(gè)不同型號(hào)的計(jì)算機(jī)組成一個(gè)產(chǎn)品系列,系列機(jī)的出現(xiàn)是計(jì)算機(jī)發(fā)展過(guò)程中的一個(gè)重要事件,對(duì)計(jì)算機(jī)的推廣應(yīng)用起到重要的作用。兼容:指計(jì)算機(jī)軟件或硬件的通用性,使用或運(yùn)行在這個(gè)型號(hào)的計(jì)算機(jī)系統(tǒng)中的硬件、軟件也能應(yīng)用于另外一個(gè)型號(hào)的計(jì)算機(jī)系統(tǒng)時(shí),則稱這兩臺(tái)計(jì)算機(jī)在硬件或軟件上存在兼容性,通常在同一個(gè)系列的不同型號(hào)的計(jì)算機(jī)之間是存在這種

26、兼容性的,老的軟件和早期的硬件產(chǎn)品可以在新的機(jī)型中使用,這極大地保護(hù)了用戶的投資,也算是計(jì)算機(jī)可以更好地推廣應(yīng)用的必要條件。兼容計(jì)算機(jī)和兼容部件,某個(gè)廠家的成功計(jì)算機(jī)系統(tǒng)或某些部件被其他廠家在保持相同的功能特性的前提下,通過(guò)合法渠道重新設(shè)計(jì)、組織生產(chǎn)并投入市場(chǎng)營(yíng)銷(xiāo),這些產(chǎn)品被稱為兼容計(jì)算機(jī)或部件產(chǎn)品。軟件可移植性:指把使用在某個(gè)系列計(jì)算機(jī)中的軟件直接或很少修改就能運(yùn)行在另外一個(gè)系列計(jì)算機(jī)的可能性,通常希望在同一個(gè)系列的計(jì)算機(jī)中要有這種兼容性,至少期望后來(lái)出現(xiàn)的性能更高的計(jì)算機(jī)要能運(yùn)行早期計(jì)算機(jī)系統(tǒng)中已有的軟件。但這里更多指的是在不同系列的計(jì)算機(jī)中的程序是否可以直接移植或者實(shí)現(xiàn)移植的難易程度,通

27、常只有高級(jí)語(yǔ)言的源程序才有移植的可能性,匯編語(yǔ)言或機(jī)器語(yǔ)言基本上沒(méi)有移植的可能性。固件:同一項(xiàng)功能,既可以用硬件實(shí)現(xiàn),處理速度和實(shí)現(xiàn)成本可能要高一些,也可以用軟件實(shí)現(xiàn),會(huì)降低硬件成本,但運(yùn)行速度可能要慢一些。例如,早期的計(jì)算機(jī)中有的沒(méi)有設(shè)置完成浮點(diǎn)數(shù)運(yùn)算的硬件,就用軟件子程序來(lái)完成浮點(diǎn)數(shù)的運(yùn)算功能。而現(xiàn)在的計(jì)算機(jī)系統(tǒng)中,通常都配置了硬件的浮點(diǎn)數(shù)運(yùn)算部件,有更高的處理能力。哪些功能選用硬件實(shí)現(xiàn),哪些功能選用軟件實(shí)現(xiàn)是要權(quán)衡的一件事情。通常人們把原來(lái)用軟件實(shí)現(xiàn)的一項(xiàng)功能改為用硬件來(lái)實(shí)現(xiàn),則稱這一硬件為固件。常見(jiàn)題型及其解法題型一選擇填空題例2.1諾依曼機(jī)工作方式的基本特點(diǎn)是(A) 多指令流單數(shù)據(jù)流

28、(B) 按地址訪問(wèn)并順序執(zhí)行指令(C) 堆棧操作(D) 存儲(chǔ)器按內(nèi)部選擇地址解:(B)例2.2計(jì)算機(jī)系統(tǒng)中的存儲(chǔ)器系統(tǒng)是指,沒(méi)有外部存儲(chǔ)器的計(jì)算機(jī)監(jiān)控程序可以存放在中。(A)RAMCPU(B)ROMRAM(C)主存儲(chǔ)器,RAMF口ROM(D)主存儲(chǔ)器和外存儲(chǔ)器,ROM解:(D)例2.3計(jì)算機(jī)系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)構(gòu)成,硬件系統(tǒng)由、輸入設(shè)備和輸出設(shè)備等五部分組成。軟件系統(tǒng)通常分為和兩大類(lèi)。解:運(yùn)算器;控制器;存儲(chǔ)器;系統(tǒng)軟件;應(yīng)用軟件;例2.4對(duì)計(jì)算機(jī)發(fā)展史的劃分,歷史上常以器件為標(biāo)準(zhǔn)劃分:第一代是計(jì)算機(jī),第二代是計(jì)算機(jī),第三代是計(jì)算機(jī),第四代是大規(guī)模集成電路計(jì)算機(jī);以計(jì)算機(jī)語(yǔ)言可劃分為:第一

29、級(jí)是-第二級(jí)是,第三級(jí)是,第四級(jí)是模塊化語(yǔ)言。解:電子管;晶體管;集成電路;機(jī)器語(yǔ)言;匯編語(yǔ)言;高級(jí)語(yǔ)言;例2.5主頻是計(jì)算機(jī)的一個(gè)重要指標(biāo),它的單位是;運(yùn)算速度的單位是MIPS,也就是。解:MHz;每秒百萬(wàn)指令數(shù);知識(shí)點(diǎn)測(cè)試一、選擇(單選)1 .計(jì)算機(jī)經(jīng)歷了從器件角度劃分的四代發(fā)展歷程,但從系統(tǒng)結(jié)構(gòu)來(lái)看,至今為止絕大多數(shù)計(jì)算機(jī)仍是式計(jì)算機(jī)。(A)實(shí)時(shí)處理;(B)智能化;(C)并行;(D)馮諾依曼;2 .Von.Neumann型計(jì)算機(jī)的最根本特征是。(可多選)(A)以運(yùn)算器為中心;(B)指令并行執(zhí)行;(C)存儲(chǔ)器按地址訪問(wèn);(D)數(shù)據(jù)以二進(jìn)制編碼,并采用二進(jìn)制運(yùn)算;3 .計(jì)算機(jī)的外圍設(shè)備是指(

30、A)輸入/輸出設(shè)備;(B)外存儲(chǔ)器;(C)遠(yuǎn)程通信設(shè)備;(D)除了CPU和內(nèi)存以外的其它設(shè)備;4 .完整的計(jì)算機(jī)系統(tǒng)應(yīng)包括(A)運(yùn)算器、存儲(chǔ)器、控制器;(B)外部設(shè)備和主機(jī);(C)主機(jī)和實(shí)用程序;(D)配套的硬件設(shè)備和軟件系統(tǒng);5.至今為止,計(jì)算機(jī)中的所有信息仍以二進(jìn)制方式表示的理由是(A)節(jié)約元件;(B)運(yùn)算速度快;(C)物理器件的性能決定;(D)信息處理方便;6 .對(duì)計(jì)算機(jī)的產(chǎn)生有重要影響的是(A)牛頓、維納、圖靈;(B)萊布尼茲、布爾、圖靈;(C)巴貝奇、維納、麥克斯韋;(D)萊布尼茲、布爾、克柒;7 .運(yùn)算器的主要功能是進(jìn)行(A)邏輯運(yùn)算;(B)算術(shù)運(yùn)算;(C)邏輯運(yùn)算與算術(shù)運(yùn)算;(D

31、)初等函數(shù)的運(yùn)算第二章數(shù)據(jù)的表示和運(yùn)算復(fù)習(xí)要點(diǎn):了解進(jìn)位數(shù)制及相互轉(zhuǎn)換、字符(包括漢字)、字符串和BCD數(shù)在計(jì)算機(jī)中的表示;了解校驗(yàn)碼引入的目的、原理及其應(yīng)用;理解本章的基本概念,如真值、機(jī)器數(shù)、最小碼距、并行進(jìn)位等;理解定點(diǎn)數(shù)的表示原理,掌握定點(diǎn)數(shù)的運(yùn)算、溢出的概念與判斷方法,了解陣列乘旺契.冰命)理解浮點(diǎn)數(shù)的表示,掌握浮點(diǎn)數(shù)的加/減運(yùn)算方法;理解算術(shù)邏輯單元相關(guān)術(shù)語(yǔ)的定義、ALU的基本功能、組成和結(jié)構(gòu)第二章數(shù)據(jù)的表示和運(yùn)算??贾R(shí)點(diǎn)精講2.1 數(shù)制與編碼1 .進(jìn)位計(jì)數(shù)法用少量的數(shù)字符號(hào),按先后次序把它們排成數(shù)位,由低到高進(jìn)行計(jì)數(shù),計(jì)滿進(jìn)位,這樣的方法稱為進(jìn)位計(jì)數(shù)制.N=Dm-1Dm-2Di

32、DoD-1D-2D-kDi(-kWiWm-1)為基本符號(hào),小數(shù)點(diǎn)位置隱含在Do與D-1位之間。m-1N=EDi*rii=-k符號(hào):r基數(shù),進(jìn)位制基本特征數(shù),數(shù)字符號(hào)個(gè)數(shù)i取值-k到m-1ri(位權(quán))此時(shí)該數(shù)制稱r進(jìn)制。常用進(jìn)位數(shù)制:有二進(jìn)制、八進(jìn)制、十六進(jìn)制、十進(jìn)制。2 .進(jìn)位計(jì)數(shù)制之間的轉(zhuǎn)換(1) R進(jìn)制轉(zhuǎn)換成十進(jìn)制按權(quán)展開(kāi)法:先寫(xiě)成多項(xiàng)式,然后計(jì)算十進(jìn)制結(jié)果。(2) r進(jìn)制轉(zhuǎn)換成二進(jìn)制方法十進(jìn)制數(shù)轉(zhuǎn)二進(jìn)制整數(shù)部分的轉(zhuǎn)換:除2取余法(基數(shù)除法)除基取余法:把給定的數(shù)除以基數(shù),取余數(shù)作為最低位的系數(shù),然后繼續(xù)將商部分除以基數(shù),余數(shù)作為次低位系數(shù),重復(fù)操作直至商為0。小數(shù)部分的轉(zhuǎn)換:乘2取整法(

33、基數(shù)乘法)乘基取整法(小數(shù)部分的轉(zhuǎn)換):把給定的r進(jìn)制小數(shù)乘以2,取其整數(shù)作為二進(jìn)制小數(shù)的第一位,然后取小數(shù)部分繼續(xù)乘以2,將所的整數(shù)部分作為第二位小數(shù),重復(fù)操作直至得到所需要的二進(jìn)制小數(shù)。二進(jìn)制(B)轉(zhuǎn)換成八進(jìn)制(Q)或十六進(jìn)制(H):將二進(jìn)制數(shù)自小數(shù)點(diǎn)開(kāi)始左右兩邊分為3位或4位一段,再將每段轉(zhuǎn)成相應(yīng)的1位八或十六進(jìn)制數(shù)即可。八進(jìn)制(Q)或十六進(jìn)制(H)轉(zhuǎn)換二進(jìn)制(B):將八或十六進(jìn)制數(shù)自小數(shù)點(diǎn)開(kāi)始左右兩邊每位轉(zhuǎn)成分為3位或4位二進(jìn)制數(shù),再將它們合起來(lái)即可。2.2 真值和機(jī)器數(shù)真值:正、負(fù)號(hào)加某進(jìn)制數(shù)絕對(duì)值的形式,也即機(jī)器數(shù)所代表的實(shí)際值。機(jī)器數(shù):表示一個(gè)數(shù)值數(shù)據(jù)的機(jī)內(nèi)編碼,也即符號(hào)以及數(shù)值

34、都數(shù)碼化的數(shù)。2.3 BCD碼所謂編碼,就是用少量簡(jiǎn)單的基本符號(hào),對(duì)大量復(fù)雜多樣的信息進(jìn)行一定規(guī)律的組合用于表示多種信息。在計(jì)算機(jī)系統(tǒng)中,凡是要進(jìn)行處理(包括計(jì)算、查找、排序、分類(lèi)、統(tǒng)計(jì)、合并等)、存儲(chǔ)和傳輸?shù)男畔?,都是用二進(jìn)制進(jìn)行編碼的。用四位二進(jìn)制代碼的不同組合來(lái)表示一個(gè)十進(jìn)制數(shù)碼的編碼方法,稱為二一十進(jìn)制編碼,也稱BCD碼(BinaryCodedDecimal)。通常采用壓縮十進(jìn)制串。依據(jù)每個(gè)位有否確定的位權(quán),可把BDC碼分為有權(quán)碼和無(wú)權(quán)碼。常用的BCD碼有8421碼、余3碼和格雷碼等。2.4 字符與字符串1 .字符編碼ASCII碼:"美國(guó)標(biāo)準(zhǔn)信息交換代碼”。用7位二進(jìn)制編碼,

35、可表示27=128個(gè)字符。ASCII碼中,編碼值031為控制字符,用于通信控制或設(shè)備的功能控制。編碼值32是空格SP。編碼值127是DEL碼。其余的94個(gè)字符稱為可印刷字符。EBCDIC碼(擴(kuò)展的BCD碼),8位二進(jìn)制編碼,可以表示256個(gè)編碼,但只選用其中一部分。主要用在舊M公司生產(chǎn)的各種機(jī)器中。2 .漢字的表示與編碼1981年GB2312-80國(guó)家標(biāo)準(zhǔn)。每個(gè)編碼用兩個(gè)字節(jié)表示。共收錄一級(jí)3755、二級(jí)3008個(gè)漢字,各種符號(hào)682個(gè),共計(jì)7445個(gè)。目前最新的漢字編碼是2000年公布的國(guó)家標(biāo)準(zhǔn)GB18030,收錄了27484個(gè)漢字。編碼標(biāo)準(zhǔn)采用單字節(jié)、2B、4B。漢字的編碼:漢字的輸入編碼

36、、漢字內(nèi)碼、字模碼是計(jì)算機(jī)中用于輸入、內(nèi)部處理、輸出三種不同用途的編碼。輸入編碼:數(shù)字編碼,如區(qū)位碼;字音編碼,如拼音碼;字形編碼,如五筆字型;漢字混合編碼等,用于漢字的輸入。內(nèi)部處理:機(jī)內(nèi)碼一一用于漢字的存儲(chǔ)、交換、查詢等,通常機(jī)內(nèi)碼:最高位為1。輸出編碼:字型碼一一用點(diǎn)陣組成的漢字的代碼一一構(gòu)成字庫(kù),用于漢字的顯示或打印等輸出。還就注意區(qū)位碼、國(guó)標(biāo)碼與機(jī)內(nèi)碼的關(guān)系:(十六進(jìn)制)國(guó)標(biāo)碼=區(qū)位碼+2020H機(jī)內(nèi)碼=國(guó)標(biāo)碼+8080H3.字符串的表示字符串已成為最常用的數(shù)據(jù)類(lèi)型之一,許多計(jì)算機(jī)中提供字符串操作功能。字符串是指連續(xù)的一串字符。兩種存放方式:它們占主存連續(xù)多個(gè)字節(jié),當(dāng)主存字由2個(gè)或4

37、個(gè)字節(jié)組成時(shí),在同一個(gè)主存字中,既有按從低位向高位字節(jié)順序存放字串內(nèi)容的,也有按從高位向低位字節(jié)順序存放字串內(nèi)容的。2.5校驗(yàn)碼校驗(yàn)碼是指能夠發(fā)現(xiàn)或又能夠自動(dòng)糾正錯(cuò)誤的數(shù)據(jù)編碼,也稱檢錯(cuò)糾錯(cuò)編碼通常某種編碼都由許多碼字構(gòu)成,兩個(gè)合法代碼對(duì)應(yīng)位上編碼不同的位數(shù)稱為碼距,任意兩個(gè)碼字之間最少變化的二進(jìn)制位數(shù),稱為最小碼距。如果在編碼中引入一定的冗余,增加代碼的最小碼距,使得編碼中出現(xiàn)一個(gè)錯(cuò)誤時(shí)就成為非法代碼。校驗(yàn)碼有如下類(lèi)型:校驗(yàn)位與信息位的形成關(guān)系:線性碼、非線性碼信息位與校驗(yàn)位的約束條件:分組碼、卷積碼碼字本身的結(jié)構(gòu)特點(diǎn):循環(huán)碼、非循環(huán)碼信息位與校驗(yàn)位排列位置關(guān)系:系統(tǒng)碼、非系統(tǒng)碼1 .奇偶校

38、驗(yàn)碼(1)原理:在原編碼加上一個(gè)校驗(yàn)位,它的碼距等于2,能檢測(cè)出一位錯(cuò)(或奇數(shù)位錯(cuò)),但不能確定出錯(cuò)位置,也不能測(cè)出偶數(shù)位錯(cuò),有奇、偶兩種校驗(yàn)。由若干位有效信息(如一個(gè)字節(jié)),再加上一個(gè)二進(jìn)制位(校驗(yàn)位)組成校驗(yàn)碼字。(2)交叉奇偶校驗(yàn):對(duì)一個(gè)數(shù)據(jù)塊另可以采用的方法,即對(duì)每行的數(shù)據(jù)有一個(gè)校驗(yàn)位,同樣對(duì)每列的數(shù)據(jù)有一個(gè)校驗(yàn)位,這樣比較僅采用一位校驗(yàn)要保險(xiǎn)多了。2 .海明校驗(yàn)碼海明碼(n,k),信息位數(shù)k=nr,校驗(yàn)位數(shù)r=n-k,其碼長(zhǎng)n>2r1,最小碼距d=3。是一種很有效的校驗(yàn)方法,只要增加少數(shù)幾個(gè)校驗(yàn)位,就能檢測(cè)出二位同時(shí)出錯(cuò)、亦能檢測(cè)出一位出錯(cuò)并能自動(dòng)恢復(fù)出錯(cuò)位的正確值,后者被稱為

39、自動(dòng)糾錯(cuò)。(1)原理:在k位數(shù)據(jù)加上r個(gè)位校驗(yàn),形成k+r位新碼字,并使碼距比較均勻拉大。使每一數(shù)據(jù)位與不同校驗(yàn)位組合建立對(duì)應(yīng)關(guān)系,則某一位出錯(cuò)后,就會(huì)引起相關(guān)的幾個(gè)校驗(yàn)位的值發(fā)生變化,這不但可以發(fā)現(xiàn)出錯(cuò),還能指出是哪一位出錯(cuò),為進(jìn)一步自動(dòng)糾錯(cuò)提供了依據(jù)。設(shè)k個(gè)數(shù)據(jù)位、r個(gè)校驗(yàn)位,為檢出雙位出錯(cuò)與自動(dòng)校正一位錯(cuò),因此位數(shù)r和位數(shù)k應(yīng)滿足如下關(guān)系:2r-1>k+r3.循環(huán)碼(CRC)CRC碼的任合一個(gè)合法碼字循環(huán)移位得到的仍是一個(gè)合法碼字,用于發(fā)現(xiàn)并糾正信息串行讀寫(xiě)、存儲(chǔ)或傳送中出現(xiàn)的一位、多位錯(cuò)誤,因此串行通信的場(chǎng)合得到普遍應(yīng)用。2.6 定點(diǎn)數(shù)的表示1 .無(wú)符號(hào)數(shù)的表示指整個(gè)機(jī)器字長(zhǎng)的全

40、部二進(jìn)制位均表示數(shù)值位,相當(dāng)于數(shù)的絕對(duì)值。若機(jī)器字長(zhǎng)為n+1位,則數(shù)值表示:X=X0X1X2XnXi=0,1,0<i<nXo2n+X12n-1+Xn-121+Xn數(shù)值范圍0<X<2n+1-1此時(shí)二進(jìn)制的最高位也是數(shù)值位,其權(quán)值等于2n。2 .帶符號(hào)數(shù)的表示最高位被用來(lái)表示符號(hào)位,而不再表示數(shù)值位。(1)定點(diǎn)整數(shù)數(shù)值表示:X=X0X1X2XnXi=0,1,0<i<nX02n+X12n-1+Xn-121+Xn數(shù)值范圍0<X<2n+1-1(2)定點(diǎn)小數(shù)數(shù)值表示X=Xo.X1X2XnXi=0,1,0<i<nX12-1+Xn-12-n+1+Xn

41、2-n數(shù)值范圍0<X<1-2-n定點(diǎn)小數(shù)也被用在浮點(diǎn)數(shù)的尾數(shù)部分。定點(diǎn)數(shù)可以是整數(shù),也可以是純小數(shù),原理是相同的,只是數(shù)值表示范圍不同,故下面用定點(diǎn)小數(shù)來(lái)討論數(shù)據(jù)的原碼、補(bǔ)碼表示。(3)原碼表示是用機(jī)器數(shù)的最高一位代表符號(hào),以下各位給出數(shù)值絕對(duì)值的表示方法。其定義為:X原這里的X為數(shù)的實(shí)際值(真值) 原碼的性質(zhì):符號(hào)位加數(shù)的絕對(duì)值,零有兩個(gè)編碼;0WX < 1-1< X v 0X原為原碼表示的機(jī)器數(shù)。0正1負(fù); 加減運(yùn)算復(fù)雜,乘除運(yùn)算規(guī)則簡(jiǎn)單;表示簡(jiǎn)單,易于同真值之間進(jìn)行轉(zhuǎn)換。(4)補(bǔ)碼表示法最高位為符號(hào),其余各位的值按 2取模。其定義為X補(bǔ)=X0<X< 1

42、2 + X-KX <0MOD 2補(bǔ)碼的性質(zhì): 機(jī)器數(shù)和它的真值的關(guān)系X補(bǔ)=2*符號(hào)位+ X。0有唯一的編碼 兩數(shù)補(bǔ)碼加法,把符號(hào)位與數(shù)值位同等處理,結(jié)果的符號(hào)位與數(shù)值位都正確。X補(bǔ)與其真值的關(guān)系:假定X補(bǔ)=X0X1X2 Xn,則有 兇補(bǔ)=2X0+X o由此又可以得到從X補(bǔ)求X的關(guān)系:X = X補(bǔ)-2X0=X0X1X2 Xn- 2X0=-X0+0.XlX2Xn這個(gè)結(jié)論被用于補(bǔ)碼乘法的運(yùn)算中。(5)反碼表示用機(jī)器數(shù)的最高一位代表符號(hào),數(shù)值位是對(duì)負(fù)數(shù)值各位取反的表示方法,其定義為兇反=XX0<X<1j(2-2-n)+X-1<X<0MOD(2-2-n)反碼的性質(zhì):零有兩個(gè)

43、編碼。現(xiàn)在的計(jì)算機(jī)系統(tǒng)中,較少使用反碼。(6)三種編碼的比較對(duì)于正數(shù)它們值都等于真值本身,而于負(fù)數(shù)各有不同的表示。最高位都是符號(hào)位,補(bǔ)碼和反碼的符號(hào)位可作為數(shù)值位,與數(shù)值位一起參加運(yùn)算;但原碼的符號(hào)位必須分開(kāi)進(jìn)行處理。對(duì)于真值0,原碼和反碼各有兩種表示,補(bǔ)碼只有一種表示。原碼、反碼的正、負(fù)數(shù)范圍相對(duì)零對(duì)稱;補(bǔ)碼負(fù)數(shù)較正數(shù)能多表示一個(gè)數(shù)耳木右程算術(shù)左程0群左移 值。2.7 定點(diǎn)數(shù)的運(yùn)算1 .定點(diǎn)數(shù)的移位運(yùn)算圖2.1計(jì)算機(jī)可以進(jìn)行基本的與、或、非邏輯運(yùn)算,另一類(lèi)邏輯運(yùn)算是移位操作。移位操作分為算術(shù)移位、邏輯移位和循環(huán)移位三種,每一種移位又有左移和右移之分。各種移位操作的示意如圖2.1所示。算術(shù)移位

44、可用于實(shí)現(xiàn)乘除法的運(yùn)算。算術(shù)右移保持最高位(符號(hào)位)不變,而邏輯右移最高位補(bǔ)0。循環(huán)移位可以與進(jìn)位C一起進(jìn)行,構(gòu)成大循環(huán),也可不包括進(jìn)位位,構(gòu)成小循環(huán)。例如補(bǔ)碼數(shù)的算術(shù)移位,將X補(bǔ)的符號(hào)位與數(shù)值位一起右移一位并保持原符號(hào)位的值不變,可實(shí)現(xiàn)除法功能(除以2),即X/2補(bǔ)=X0X0X1X2Xn-1Xn。2 .補(bǔ)碼加/減運(yùn)算(1)補(bǔ)碼加法的公式:X補(bǔ)+Y>卜=X+Y補(bǔ)(mod2)可以證明,在模2意義下,任意兩數(shù)的補(bǔ)碼之和等于該兩數(shù)之和的補(bǔ)碼。其結(jié)論也適用于定點(diǎn)整數(shù)。這是補(bǔ)碼加法的理論基礎(chǔ)。運(yùn)算的特點(diǎn):符號(hào)位要作為數(shù)的一部分一起參加運(yùn)算;在模2的意義下相加,即大于2的進(jìn)位要丟掉。(2)補(bǔ)碼減法運(yùn)

45、算的公式:減法運(yùn)算要設(shè)法化為加法完成,這樣可以運(yùn)算器中只要加法器就行了。XY補(bǔ)=X補(bǔ)一Y補(bǔ)=X補(bǔ)+Y補(bǔ)3 .溢出及其檢測(cè)若在運(yùn)算過(guò)程中如出現(xiàn)結(jié)果的值大于機(jī)器所能表示的數(shù)值范圍的現(xiàn)象,稱為“溢出”。例如定點(diǎn)小數(shù)之和大于等于1或小于-1就是溢出。下溢定點(diǎn)小藪表示一曲一上溢負(fù)溢出負(fù)小數(shù)一小數(shù)正流出-10+1圖2.2定點(diǎn)數(shù)的表示范圍三種判別方法(1)單符號(hào)位參與相加的2個(gè)加數(shù)的最高位,即符號(hào)位參與運(yùn)算,若出現(xiàn)正加正為負(fù),或負(fù)加負(fù)為正等結(jié)果,即出現(xiàn)溢出。(2)雙符號(hào)位法也稱為“變形補(bǔ)碼”或“模4補(bǔ)碼”。結(jié)果的兩個(gè)符號(hào)位的代碼不一致時(shí),表示溢出,兩個(gè)符號(hào)位的代碼一致時(shí),表示沒(méi)有溢出,最高符號(hào)位永遠(yuǎn)表示結(jié)果

46、的正確符號(hào)。4 .定點(diǎn)數(shù)的乘/除運(yùn)算(1)原碼一位乘法設(shè)n位被乘數(shù)和乘數(shù)用定點(diǎn)小數(shù)表示(n位中不含符號(hào)位)被乘數(shù)X原=Xs.X1X2Xn乘數(shù)Y原=丫5.Y1Y2Yn則乘積Z原=(XsYs)+(0.X1X2Xn)(0.Y1Y2Yn)式中,Xs為被乘數(shù)符號(hào),Ys為乘數(shù)符號(hào)。算法規(guī)則設(shè)Yi為Y中的第i位(當(dāng)前位),規(guī)則為i .如果Yi=1,部分積加X(jué),右移一位;ii .如果Yi=0,部分積加0,右移一位;重復(fù)n步。(2) Booth算法即補(bǔ)碼一位乘法。設(shè)被乘數(shù)X補(bǔ)=X0.XiX2,Xn乘數(shù)Y補(bǔ)=Y0.Y1Y2Yn根據(jù)Booth總結(jié)算法有如下規(guī)則補(bǔ)碼乘法規(guī)則Yi為Y中的第i位(當(dāng)前位),根據(jù)Yi與Yi

47、+1的值,規(guī)則為i .如果Yi=Yi+1,處于0串中,部分積不變,右移一位;ii .如果YiYi+1=01,處于1串結(jié)尾,部分積加x補(bǔ),右移一位;iii .如果YiYi+1=10,處于0串結(jié)尾,部分積加卜x補(bǔ),右移一位;iv .如果YiYi+1=11,處于1串中,部分積不變,右移一位;重復(fù)i+1步,最后一步不移位。(3)原碼一位除法(加減交替法/不恢復(fù)余數(shù)法)關(guān)鍵是運(yùn)算規(guī)則,規(guī)則清楚,操作流程就大半清楚了。如果余數(shù)為正,商上1余數(shù)左移一位,下次減除數(shù);如果余數(shù)為負(fù),商上0,余數(shù)左移一位,下次加除數(shù);重復(fù)n+1步,最后一步不移位。(5)陣列乘法器串行相加硬件結(jié)構(gòu)簡(jiǎn)單,速度太慢,執(zhí)行一次乘法至少是

48、加法操作n倍的時(shí)間;由于乘法大約占全部算術(shù)運(yùn)算操作的1/3左右,故采用高速乘法部件是非常必要的。不帶符號(hào)的陣列乘法器設(shè)有兩個(gè)不帶符號(hào)的二進(jìn)制整數(shù)X=Xm1xiXo,Y=yn-vyiyo它們的數(shù)值分別為x和y,即:m 1x = " xi 2ii=0n-1y='yj2j=0被乘數(shù)X與乘數(shù)Y相乘,產(chǎn)生mxn項(xiàng)乘積P,每一項(xiàng)乘積用一個(gè)與門(mén)P完成,每一項(xiàng)部分積求和用一位全加器FA完成,合起來(lái)就是一個(gè)P/FA單元電路如圖2.4所示,再將這些單元電路疊加,就成為陣列乘法器。以4X4位為例,這個(gè)無(wú)符號(hào)陣列乘法器如圖2.5所示,每一個(gè)Y項(xiàng)與所有的X項(xiàng)相乘,就是一行部分積,共有3個(gè)部分積,最下一

49、行已經(jīng)是最后結(jié)果的積了,即圖中虛線的4行。注意每個(gè)單元的最左單元的進(jìn)位輸入,以還可以有速度更高的無(wú)符號(hào)陣列乘法器方案。圖2.4一位乘/全加:p/FA: M/KlC訶氏 iP/FA: "jf廠ij-"1- y_ 1 *">"I" 1">'-P/FX'1 一 ,d ,4, ii f!j i _i !>:p/FA:* ?抑14:"IPiTAl IIYFA .夕:P/FA:jI B "I ,"鼻|-1*F匚呻七 PF匚 HFA,各次部分積2.8浮點(diǎn)數(shù)的表示和運(yùn)算浮點(diǎn)數(shù)的表示圖2.

50、5無(wú)符號(hào)陣列乘法由于受數(shù)值范圍和表示格式等各方面的限制,直接用定點(diǎn)小數(shù)或整數(shù)無(wú)法表示如電子的質(zhì)量9X10-28克,太陽(yáng)的質(zhì)量2X1033克,圓周率3.1416等,用小數(shù)點(diǎn)可以左右移動(dòng)的浮點(diǎn)數(shù)表示就比較方便。1.表示方法浮點(diǎn)數(shù)通常被表示成:N=(-1)MsXMXREMs:尾數(shù)的符號(hào);E:階碼,含一位符號(hào),通常用移碼表示;M:尾數(shù),通常用原碼表示。R:通常為2,不用明確表示。通常選用如下格式:Ms1位n位m位規(guī)格化:1/2w|M|v1為了在尾數(shù)中表示最多的有效數(shù)據(jù)位為了數(shù)據(jù)表示的唯一性。便于運(yùn)算與比較機(jī)器零:全部為0,特殊的數(shù)據(jù)編碼浮點(diǎn)數(shù)的表示范圍如圖2.7所示負(fù)上溢負(fù)下溢正下溢正上溢圖2.7浮點(diǎn)

51、數(shù)的表示范圍隱藏位技術(shù):浮點(diǎn)數(shù)尾數(shù)不為0時(shí)的最高位稱隱藏位,在寫(xiě)入內(nèi)存或磁盤(pán)時(shí),此位不必保存該位,可左移尾數(shù)隱藏掉,這種處理技術(shù)稱隱藏位技術(shù),目的是多保存一個(gè)二進(jìn)位。 為了保持浮點(diǎn)數(shù)的值不變,還要把原來(lái)的階碼值減1。在將浮點(diǎn)數(shù)取回運(yùn)算器執(zhí)行運(yùn)算時(shí),再恢復(fù)該隱藏位的值和原來(lái)的階碼值。 對(duì)臨時(shí)浮點(diǎn)數(shù)(通常只出現(xiàn)在浮點(diǎn)運(yùn)算器內(nèi)部),不使用隱藏位技術(shù)。2.浮點(diǎn)數(shù)標(biāo)準(zhǔn)浮點(diǎn)數(shù)(IEEE754)標(biāo)準(zhǔn),規(guī)定常用的浮點(diǎn)數(shù)的格式為:符號(hào)位階碼尾數(shù)總位數(shù)短浮點(diǎn)數(shù)(單精度)182332長(zhǎng)浮點(diǎn)數(shù)(雙精度)1115264臨時(shí)浮點(diǎn)數(shù)1156480三種格式:短實(shí)數(shù)、長(zhǎng)實(shí)數(shù)、臨時(shí)實(shí)數(shù)規(guī)格化數(shù):(-1)sx1.fx2e-127非

52、規(guī)格化數(shù):(-1)sx0.fx2e-126IEEE754浮點(diǎn)數(shù)的范圍格式最小值最大值單精度E=1,M=0,1.0X21-127=2-126E=254,f=.1111,.八/-254-1271.11TX2=2127x(2-2-23)雙精度E=1,M=0,1.0X21-1023=2-1022E=2046,f=.1111,1.1111X22046-1023=21023X(2-2-52)浮點(diǎn)數(shù)的加/減運(yùn)算設(shè)兩個(gè)浮點(diǎn)數(shù)X和Y分別為X=(-1)Ms<MxX2EXY=(-1)M央MyX2Ey對(duì)它們作加/減運(yùn)算有如下的步驟(1)對(duì)階操作,求階差A(yù)E=Ex-Ey使階碼小的數(shù)的尾數(shù)右移E位,階碼取大的階碼值

53、;(2)尾數(shù)加減;(3)規(guī)格化處理(左規(guī)或右規(guī));(4)舍入操作,可能帶來(lái)又一次規(guī)格化;(5)判結(jié)果的正確性,即檢查階碼上下溢出.2.9 算術(shù)邏輯單元ALU串行加法器和并行加法器1. 一位全加器全加器(FA)是最基本的加法單元,有加數(shù)Ai、加數(shù)Bi與低位的進(jìn)位Cm共3個(gè)輸入,和Si與進(jìn)位G共2個(gè)輸出。表達(dá)式為:和:Si=AiBiCm進(jìn)位:Ci=AiBi+(AiBi)Cm全加器的硬件邏輯如圖2.8所示。2. 并行加法器并行加法器則由多個(gè)全加器組成,其位數(shù)與機(jī)器的字長(zhǎng)相同,各位數(shù)據(jù)同時(shí)運(yùn)算。如圖2.9所示,為一個(gè)4位全加器組成的并行加法器。圖2.90采用串行進(jìn)位的并行加法器進(jìn)位鏈:指并行加法器中,

54、傳遞進(jìn)位信號(hào)的邏輯線路連接起來(lái)構(gòu)成的進(jìn)位網(wǎng)絡(luò)。將全加器的進(jìn)位表達(dá)式分成Gi=A iBi進(jìn)位產(chǎn)生函數(shù)進(jìn)位傳遞函數(shù):Pi=AiBi;進(jìn)位表達(dá)式:Ci=Gi+PiCi-i通常也將G稱為本地進(jìn)位。(1)串行進(jìn)位(行波進(jìn)位)串行進(jìn)位:各級(jí)進(jìn)位信號(hào)串行級(jí)聯(lián)圖2.9即為一個(gè)串行進(jìn)位的并行加法器可見(jiàn)低位運(yùn)算產(chǎn)生的進(jìn)位所需要的時(shí)間,而全加器本身的求和延即將各級(jí)低位產(chǎn)生的本將可能影響直至最高位運(yùn)算的時(shí)間,位數(shù)越多延遲時(shí)間就越長(zhǎng),遲只為次要因素。所以加快進(jìn)位產(chǎn)生和提高傳遞的速度是關(guān)鍵。(2)并行進(jìn)位(先行進(jìn)位)并行進(jìn)位:各級(jí)進(jìn)位信號(hào)同時(shí)形成。采用并行進(jìn)位的方案可以加快進(jìn)位產(chǎn)生和提高傳遞的速度,級(jí)G和P信號(hào)依次同時(shí)送

55、到高位各全加器的輸入,以使它們同時(shí)形成進(jìn)位信號(hào),各進(jìn)位信號(hào)表達(dá)式如下,可見(jiàn)它們可以同時(shí)形成進(jìn)位信號(hào)。Co=Go+P0C-1Ci=Gi+P1C0=Gi+P1G0+PiPoC-iC2=G2+P2Ci=G2+P2Gi+P2PiGo+P2PiPoC-iC3=G3+P3C2=G3+P3G2+P3P2Gi+P3P2PiGo+P3P2PiPoC-i當(dāng)各級(jí)自身的G與P信號(hào)形成后,則n個(gè)并行進(jìn)位的加法器:多級(jí)先行進(jìn)位方式該方式組內(nèi)并行、組間并行進(jìn)位,速度自然比組間串行快。口如圖2.ii所示,4片Am290i級(jí)聯(lián)組成i6運(yùn)算,其片內(nèi)4位并行進(jìn)位,片間也并行進(jìn)位。其中用圖2.ii并行進(jìn)位,片間并行進(jìn)位到一片與Am209i配套的高速進(jìn)位芯片am2902,這是一片產(chǎn)生并行進(jìn)位信號(hào)的部件。2.10 基本算邏部件計(jì)算機(jī)能夠完成如此復(fù)雜的功能,首先需要算術(shù)邏輯部件。加減運(yùn)算電路顯然ALU是組合邏輯電路組成的。圖2.12 一位加減單元圖2.13 n位加減單元圖2.15 16位行波進(jìn)位“控制線收據(jù)線全加器還不能完成減法,作下面的改進(jìn)就可以完成加、減法操作,如圖2.12所示,

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論