全國(guó)計(jì)算機(jī)等級(jí)考試四級(jí)考試要點(diǎn) 電腦知識(shí)
電腦知識(shí) 由小雪供稿全國(guó)計(jì)算機(jī)等級(jí)考試,是經(jīng)原國(guó)家教育委員會(huì)(現(xiàn)教育部)批準(zhǔn),由教育部考試中心主辦,面向社會(huì),用于考查應(yīng)試人員計(jì)算機(jī)應(yīng)用知識(shí)與技能的全國(guó)性計(jì)算機(jī)水平考試體系。下面9252兒童網(wǎng)小編給大家?guī)?lái)了計(jì)算機(jī)四級(jí)考試的考試要點(diǎn),希望大家喜歡!
全國(guó)計(jì)算機(jī)四級(jí)考試第一章要點(diǎn)
一、計(jì)算機(jī)的發(fā)展
自從1946年2月現(xiàn)代電子計(jì)算機(jī)的鼻祖ENIAC(electronic numerical integrator and computer)在美國(guó)賓夕法尼亞大學(xué)問(wèn)世以后,短短50年里,計(jì)算機(jī)技術(shù)經(jīng)歷了巨大的變革。
學(xué)術(shù)界經(jīng)常使用器件(硬件)劃分計(jì)算機(jī)的發(fā)展史,如第一代電子管計(jì)算機(jī)(1947~1957),第二代晶體管計(jì)算機(jī)(1958~1964),第三代集成電路計(jì)算機(jī)(1964~1972),第四代大規(guī)模集成電路計(jì)算機(jī)(1972~),目前提出了所謂的第五代(或新一代)計(jì)算機(jī)。
從1946年到50年代后期(1946~1957)為電子管計(jì)算機(jī)時(shí)期。計(jì)算機(jī)的元器件主要由電子管(vacuum tube)組成。其特點(diǎn)是體積龐大、功耗高、運(yùn)算速度較低。如ENIAC占地170m 2 ,重達(dá)30t,功耗為140kW,有18000多個(gè)電子管,每秒鐘能進(jìn)行5000次加法計(jì)算。這一階段,計(jì)算機(jī)主要用于軍事、國(guó)防等尖端技術(shù)領(lǐng)域。除了ENIAC以外,1945年左右,馮?諾依曼等人在研制EDVAC(electronic discrete variable computer)時(shí),提出了存儲(chǔ)程序(stored-program)概念,奠定了以后計(jì)算機(jī)發(fā)展的基石。IBM公司1954年12月推出的IBM650是第一代計(jì)算機(jī)的代表。從20世紀(jì)50年代后期到60年代中期(1958~1964)為晶體管計(jì)算機(jī)時(shí)期。自從1947年晶體管(transistor)在貝爾實(shí)驗(yàn)室誕生后,引發(fā)了一場(chǎng)影響深遠(yuǎn)的電子革命。體積小、功耗低、價(jià)格便宜的晶體管取代了電子管,不僅提高了計(jì)算機(jī)的性能,也使計(jì)算機(jī)在科研、商業(yè)等領(lǐng)域內(nèi)廣泛地被應(yīng)用。第二代計(jì)算機(jī)不僅采用了晶體管器件,而且存儲(chǔ)器改用速度更快的磁芯存儲(chǔ)器;與此同時(shí)高級(jí)編程語(yǔ)言和系統(tǒng)軟件的出現(xiàn),也大大提高了計(jì)算機(jī)的性能和拓寬了其應(yīng)用領(lǐng)域。這一時(shí)期計(jì)算機(jī)的代表主要有DEC公司1957年推出的PDP-I、IBM公司于1962年推出的7094以及CDC公司1964年研制成功的CDC6600。1969年CDC公司研制的DCD7600平均速度達(dá)到每秒千萬(wàn)次浮點(diǎn)運(yùn)算。
從20世紀(jì)60年代中期到70年代初期(1965~1972)為集成電路計(jì)算機(jī)時(shí)代。第一代和第二代計(jì)算機(jī)均采用分離器件(discrete component)組成。集成電路(integrated circuit)的出現(xiàn),宣告了第三代計(jì)算機(jī)的來(lái)臨。由于采用了集成電路,使得計(jì)算機(jī)的制造成本迅速下降;同時(shí)因?yàn)檫壿嫼痛鎯?chǔ)器件集成化的封裝,大大提高了運(yùn)行速度,功耗也隨之下降;集成電路的使用,使得計(jì)算機(jī)內(nèi)各部分的互聯(lián)更加簡(jiǎn)單和可靠,計(jì)算機(jī)的體積也進(jìn)一步縮小。這一時(shí)期的代表為IBM的system/360和DEC的PDP-8。
從20世紀(jì)70年代初期到70年代后期(1972~1978)為大規(guī)模集成電路(LSI)計(jì)算機(jī)時(shí)代。20世紀(jì)70年代初半導(dǎo)體存儲(chǔ)器的出現(xiàn),迅速取代了磁芯存儲(chǔ)器,計(jì)算機(jī)的存儲(chǔ)器向大容量、高速度的方向飛速發(fā)展。存儲(chǔ)器芯片從1kbit,4kbit,16kbit,64kbit,256kbit,1Mbit,4Mbit發(fā)展到16Mbit(1992年)。
接著就進(jìn)入了超大規(guī)模集成電路(VLSI)計(jì)算機(jī)時(shí)代。隨著技術(shù)的日新月異,軟件和通信的重要性也逐步上升,成為和硬件一樣舉足輕重的因素。同時(shí)系統(tǒng)結(jié)構(gòu)的特點(diǎn)對(duì)計(jì)算機(jī)的性能也有巨大的影響(中斷系統(tǒng)、Cache存儲(chǔ)器、流水線技術(shù)等等)。實(shí)際上在第三代計(jì)算機(jī)以后,就很難找到一個(gè)統(tǒng)一的標(biāo)準(zhǔn)進(jìn)行劃分。
也可以從應(yīng)用的觀點(diǎn)來(lái)劃分計(jì)算機(jī)的發(fā)展史。最早的應(yīng)用是軍事上的需要,如炮彈彈道計(jì)算,核武器的設(shè)計(jì)等;其次是廣泛地用于科學(xué)計(jì)算,工程設(shè)計(jì)計(jì)算;第三階段是大量用于管理,現(xiàn)在計(jì)算機(jī)的80%以上用于管理;再接著是計(jì)算機(jī)輔助設(shè)計(jì)(CAD)和輔助制造(CAM);進(jìn)入90年代,計(jì)算機(jī)的應(yīng)用已趨向于綜合化和智能化,例如在一個(gè)企業(yè)里,計(jì)算機(jī)不僅用于科學(xué)計(jì)算、輔助設(shè)計(jì)和輔助制造,還用于輔助管理和輔助決策(MIS與DSS),以及辦公自動(dòng)化(OA)等等,使設(shè)計(jì)、生產(chǎn)自動(dòng)化和管理自動(dòng)化融為一體,形成所謂計(jì)算機(jī)集成制造系統(tǒng)(CIMS-Computer Integrated Manufacturing System),再發(fā)展下去就是工廠自動(dòng)化(Factory Automation)或稱(chēng)無(wú)人工廠。DSS(Decision Support System)/ES(Expert System)利用人工智能(AI———Artifcation Inˉtelligence)技術(shù),讓計(jì)算機(jī)代替人判斷、推理,尋找最優(yōu)方案,以輔助決策者決策。目前更流行的是認(rèn)為計(jì)算機(jī)的發(fā)展經(jīng)過(guò)了三次浪潮(wave)。
計(jì)算機(jī)的發(fā)展第一個(gè)浪潮是單個(gè)主機(jī)(Mainframe)的時(shí)期,以IBM360、370為代表的大型機(jī)的出現(xiàn),其特點(diǎn)是以批處理為主,主要用于大規(guī)??茖W(xué)計(jì)算。
第二次浪潮為客戶(hù)機(jī)/服務(wù)器(Client/Server)的時(shí)期,這時(shí)期出現(xiàn)了小型機(jī)、微型機(jī)和局域網(wǎng)。其特點(diǎn)是多用戶(hù)分時(shí)處理。
第三個(gè)浪潮是70~80年代的微型計(jì)算機(jī)PC(Personal Computer)的出現(xiàn)?,F(xiàn)在正處于第三次浪潮,網(wǎng)絡(luò)計(jì)算機(jī)的時(shí)期,即以網(wǎng)絡(luò)為中心或以網(wǎng)絡(luò)為基礎(chǔ)的計(jì)算機(jī)時(shí)期。
目前計(jì)算機(jī)向綜合的方向發(fā)展,將各種計(jì)算機(jī)的特點(diǎn)和優(yōu)點(diǎn)綜合起來(lái),并結(jié)合了多媒體技術(shù)、通信技術(shù)等,把人類(lèi)帶入了網(wǎng)絡(luò)社會(huì)。
二、計(jì)算機(jī)的分類(lèi)及其應(yīng)用
計(jì)算機(jī)分類(lèi)的方法大致可分如下幾種:
1.按信息的形式和處理方式分類(lèi)
計(jì)算機(jī)按信息的形式和處理方式可分為數(shù)字計(jì)算機(jī)、模擬計(jì)算機(jī)以及數(shù)字混合計(jì)算機(jī)。
2.按計(jì)算機(jī)的用途分類(lèi)
計(jì)算機(jī)按用途可分為通用計(jì)算機(jī)和專(zhuān)用計(jì)算機(jī)。
3.按計(jì)算機(jī)規(guī)模分類(lèi)
計(jì)算機(jī)按規(guī)??蓜澐譃榫扌蜋C(jī)、大型機(jī)、中型機(jī)、小型機(jī)、微型機(jī)等。計(jì)算機(jī)的應(yīng)用如下:
(1)在科學(xué)計(jì)算中的應(yīng)用
(2)在實(shí)時(shí)控制中的應(yīng)用
(3)在數(shù)據(jù)處理中的應(yīng)用
(4)計(jì)算機(jī)在輔助設(shè)計(jì)和輔助制造(CAD/CAM)中的應(yīng)用
(5)辦公自動(dòng)化系統(tǒng)中的應(yīng)用
三、計(jì)算機(jī)硬件結(jié)構(gòu)
實(shí)際應(yīng)用的計(jì)算機(jī)系統(tǒng)是由計(jì)算機(jī)硬件系統(tǒng)、軟件系統(tǒng)以及通信網(wǎng)絡(luò)系統(tǒng)組成的一個(gè)整體系統(tǒng)。計(jì)算機(jī)硬件系統(tǒng)是指構(gòu)成計(jì)算機(jī)的所有實(shí)體部件的集合,通常這些部件由電路(電子元件)、機(jī)械等物理部件組成,它們都是看得見(jiàn)摸得著的,故通常稱(chēng)為“硬件”。計(jì)算機(jī)硬件結(jié)構(gòu)也可以稱(chēng)為馮?諾伊曼結(jié)構(gòu),它由五大部件組成:主機(jī)部分由運(yùn)算器、控制器、存儲(chǔ)器組成,外設(shè)部分由輸入設(shè)備和輸出設(shè)備組成,其中核心部分部件是運(yùn)算器。
計(jì)算機(jī)硬件之間的連接線路分為網(wǎng)狀結(jié)構(gòu)與總線結(jié)構(gòu),這里主要介紹總線(BUS)結(jié)構(gòu)??偩€結(jié)構(gòu)有如下幾種形式:
1.以CPU為中心的雙總線結(jié)構(gòu)
所謂總線實(shí)際上是一組并行的導(dǎo)線,導(dǎo)線的數(shù)目和計(jì)算機(jī)字長(zhǎng)相同,數(shù)據(jù)和指令通過(guò)總線傳送。
2.以存儲(chǔ)器為中心的雙總線結(jié)構(gòu)
3.單總線結(jié)構(gòu)
主要部件功能:
1.運(yùn)算器
運(yùn)算器是完成二進(jìn)制編碼的算術(shù)或邏輯運(yùn)算的部件。運(yùn)算器由累加器(用符號(hào)L A )、通用寄存器(用符號(hào)L B )和算術(shù)邏輯單元(用符號(hào)ALU)組成,核心是算術(shù)邏輯單元。
2.存儲(chǔ)器
在計(jì)算機(jī)中的存儲(chǔ)器包括內(nèi)存儲(chǔ)器(又叫主存儲(chǔ)器或隨機(jī)存儲(chǔ)器,簡(jiǎn)稱(chēng)內(nèi)存或主存)、外存儲(chǔ)器、只讀存儲(chǔ)器和高速緩沖存儲(chǔ)器以及寄存器等。隨機(jī)存儲(chǔ)器是按地址存取數(shù)據(jù)的,若地址總線共有20條地址線(A 0 ~A 19 ),即有20個(gè)二進(jìn)制位,可形成2 20 =1048576個(gè)地址(1兆地址)。
3.控制器
控制器由三大部件組成,它們是指令部件、時(shí)序部件和操作控制部件。
(1)指令部件
指令部件包括程序計(jì)數(shù)器PC,指令寄存器IR和指令譯碼器ID。
(2)時(shí)序部件
時(shí)序部件產(chǎn)生定時(shí)節(jié)拍,一般由時(shí)鐘信號(hào)源、節(jié)拍發(fā)生器及微操作電路組成。
4.輸出寄存器
輸出寄存器用于存放輸出結(jié)果,以便由它通過(guò)必要的接口(輸出通道),在輸出設(shè)備上輸出運(yùn)算結(jié)果。
5.輸入設(shè)備
目前主要通過(guò)CRT終端和鍵盤(pán)實(shí)現(xiàn)人機(jī)對(duì)話。磁性設(shè)備閱讀機(jī)、光學(xué)閱讀機(jī)等可作為輸入設(shè)備
四、計(jì)算機(jī)軟件的功能及分類(lèi)
所謂軟件是指為運(yùn)行、維護(hù)、管理、應(yīng)用計(jì)算機(jī)所編制的所有程序的總和。軟件分為系統(tǒng)軟件和應(yīng)用軟件。
系統(tǒng)軟件包括計(jì)算機(jī)操作系統(tǒng)(Operation System)、計(jì)算機(jī)的各種管理程序、監(jiān)控程序、調(diào)試程序、編輯程序以及各種語(yǔ)言的編譯或解釋程序等。應(yīng)用軟件是為解決各種實(shí)際問(wèn)題而設(shè)計(jì)的程序。
1.操作系統(tǒng)
操作系統(tǒng)具有三大功能:管理計(jì)算機(jī)硬、軟件資源,使之有效使用;組織協(xié)調(diào)計(jì)算機(jī)的運(yùn)行,以增強(qiáng)系統(tǒng)的處理能力;提供人機(jī)接口,為用戶(hù)提供方便。
操作系統(tǒng)具有的功能:
(1)作業(yè)操作。
(2)資源管理。
(3)中斷處理。
(4)I/O處理。
(5)調(diào)度。
(6)錯(cuò)誤處理。
(7)保護(hù)和保密處理。
(8)記帳。
操作系統(tǒng)的基本類(lèi)型:
(1)批處理操作系統(tǒng)。
(2)分時(shí)系統(tǒng)。
(3)實(shí)時(shí)系統(tǒng)。
操作系統(tǒng)的管理功能主要內(nèi)容:
(1)處理機(jī)管理。
(2)存儲(chǔ)管理。
(3)文件管理。
(4)設(shè)備管理。
2.數(shù)據(jù)庫(kù)管理系統(tǒng)
數(shù)據(jù)庫(kù)管理系統(tǒng)既可以認(rèn)為是一個(gè)系統(tǒng)軟件也可以認(rèn)為是一個(gè)通用的應(yīng)用軟件。目前有三種類(lèi)型的數(shù)據(jù)庫(kù)管理系統(tǒng),故可存放三種模型的數(shù)據(jù),這三種數(shù)據(jù)庫(kù)管理系統(tǒng)分別為層次數(shù)據(jù)庫(kù)、網(wǎng)狀數(shù)據(jù)庫(kù)和關(guān)系數(shù)據(jù)庫(kù)。
3.計(jì)算機(jī)網(wǎng)絡(luò)軟件
計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)是通過(guò)通信線路連接的硬件、軟件與數(shù)據(jù)集合的一個(gè)計(jì)算機(jī)系統(tǒng)。從硬件來(lái)說(shuō),除計(jì)算機(jī)作為網(wǎng)絡(luò)的結(jié)點(diǎn)以外,還有如服務(wù)器(也可用一臺(tái)計(jì)算機(jī)),網(wǎng)絡(luò)適配器,終端控制器以及網(wǎng)絡(luò)連接器等硬件設(shè)備;從軟件來(lái)說(shuō),有網(wǎng)絡(luò)操作系統(tǒng),網(wǎng)絡(luò)通信及協(xié)議軟件,網(wǎng)絡(luò)數(shù)據(jù)庫(kù)管理系統(tǒng)等。
4.高級(jí)語(yǔ)言及語(yǔ)言處理器
用戶(hù)用高級(jí)語(yǔ)言編寫(xiě)的程序稱(chēng)源程序,源程序不能由計(jì)算機(jī)直接執(zhí)行,必須翻譯成機(jī)器能執(zhí)行的語(yǔ)言———機(jī)器語(yǔ)言,這種翻譯是由機(jī)器自動(dòng)翻譯的,“譯員”稱(chēng)編譯程序或編譯器,當(dāng)源程序輸入計(jì)算機(jī)后,調(diào)用編譯程序編譯成機(jī)器語(yǔ)言(稱(chēng)目標(biāo)程序),然后執(zhí)行。還有一種語(yǔ)言處理程序叫解釋程序,輸入一條語(yǔ)句,翻譯一條?,F(xiàn)在已出現(xiàn)了第4代語(yǔ)言(4GL)和計(jì)算機(jī)輔助軟件工具CASE。
5.常用的通用軟件
在數(shù)據(jù)處理、事務(wù)處理、報(bào)表處理中有許多通用軟件,如字處理軟件WPS、WORD,報(bào)表處理軟件LOTUS1-2-3等。
五、計(jì)算機(jī)數(shù)據(jù)表示
1.二進(jìn)位計(jì)數(shù)制
引入二進(jìn)制數(shù)字系統(tǒng)的計(jì)算機(jī)結(jié)構(gòu)和性能具有如下的優(yōu)點(diǎn):
(1)技術(shù)實(shí)現(xiàn)容易。
(2)二進(jìn)制運(yùn)算規(guī)則簡(jiǎn)單。
(3)計(jì)算機(jī)中二進(jìn)制數(shù)的0、1數(shù)碼與邏輯代數(shù)變量值0與1吻合,所以二進(jìn)制同時(shí)可以使計(jì)算機(jī)方便地進(jìn)行邏輯運(yùn)算。
(4)二進(jìn)制數(shù)和十進(jìn)制數(shù)之間的關(guān)系亦不復(fù)雜。
2.進(jìn)位計(jì)數(shù)制相互轉(zhuǎn)換
十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):
十進(jìn)制數(shù)據(jù)轉(zhuǎn)換為二進(jìn)制數(shù)時(shí),因整數(shù)部分與小數(shù)部分轉(zhuǎn)換算法不同,需要分別進(jìn)行。
(1)整數(shù)轉(zhuǎn)換方法———除基取余法
十進(jìn)制整數(shù)除以2取余數(shù)作最低位系數(shù)k0 再取商的整數(shù)部分繼續(xù)除以2取余數(shù)作高一位的系數(shù),如此繼續(xù)直到商為0時(shí)停止除法,最后一次的余數(shù)就是整數(shù)部分最高有效位的二進(jìn)制系數(shù),依次所得到的余數(shù)序列就是轉(zhuǎn)換成的二進(jìn)制數(shù)。因?yàn)槌龜?shù)2是二進(jìn)制的基數(shù),所以這種算法稱(chēng)作“除基取余”法。
(2)小數(shù)轉(zhuǎn)換方法———乘基取整法
把十進(jìn)制小數(shù)乘以2,取其積的整數(shù)部分作對(duì)應(yīng)二進(jìn)制小數(shù)的最高位系數(shù)k -1 再取積的純小數(shù)部分乘以2,新得積的整數(shù)部分又作下一位的系數(shù)k -2 ,再取其積的純小數(shù)部分繼續(xù)乘2,…,直到乘積小數(shù)部分為0時(shí)停止,這時(shí)乘積的整數(shù)部分是二進(jìn)制數(shù)最低位系數(shù),每次乘積得到的整數(shù)序列就是所求的二進(jìn)制小數(shù)。這種方法每次乘以基數(shù)取其整數(shù)作系數(shù)。所以叫乘基取整法。需要指出的是并不是所有十進(jìn)制小數(shù)都能轉(zhuǎn)換成有限位的二進(jìn)制小數(shù)并出現(xiàn)乘積的小數(shù)部分0的情況,有時(shí)整個(gè)換算過(guò)程無(wú)限進(jìn)行下去。此時(shí)可以根據(jù)要求并考慮計(jì)算機(jī)字長(zhǎng),取定長(zhǎng)度的位數(shù)后四舍五入,這時(shí)得到的二進(jìn)制數(shù)是原十進(jìn)制數(shù)的近似值。
一個(gè)既有整數(shù)又有小數(shù)部分的數(shù)送入計(jì)算機(jī)后,由機(jī)器把整數(shù)部分按“除基取余”法,小數(shù)部分按“乘基取整”法分別進(jìn)行轉(zhuǎn)換,然后合并。任意進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù):
任意一種進(jìn)位計(jì)數(shù)制的數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)的方法都是一樣的。把任意進(jìn)制數(shù)按權(quán)展開(kāi)成多項(xiàng)式和的形式,把各位的權(quán)與該位上的數(shù)碼相乘,乘積逐項(xiàng)相加,其和便是相應(yīng)的十進(jìn)制數(shù)。十進(jìn)制數(shù)轉(zhuǎn)換成任意進(jìn)制數(shù):
十進(jìn)制數(shù)轉(zhuǎn)換成任意進(jìn)制數(shù)與十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)的方法完全相同,即整數(shù)部分用除基取余的算法,小數(shù)部分用乘基取整的方法,然后將整數(shù)與小數(shù)拼接成一個(gè)數(shù)作為轉(zhuǎn)換的最后結(jié)果。
3.數(shù)的機(jī)器碼表示
符號(hào)數(shù)的機(jī)器碼表示:
(1)機(jī)器數(shù)和真值
數(shù)在計(jì)算機(jī)中的表示形式統(tǒng)稱(chēng)為機(jī)器數(shù)。機(jī)器數(shù)有兩個(gè)基本特點(diǎn),其一,數(shù)的符號(hào)數(shù)值化。實(shí)用的數(shù)據(jù)有正數(shù)和負(fù)數(shù),因?yàn)橛?jì)算機(jī)只能表示0、1兩種狀態(tài),數(shù)據(jù)的正號(hào)“+”或負(fù)號(hào)“-”,在機(jī)器里就用一位二進(jìn)制的0或1來(lái)區(qū)別。通常這個(gè)符號(hào)放在二進(jìn)制數(shù)的最高位,稱(chēng)符號(hào)位,以0代表符號(hào)“+”,以1代表符號(hào)“-”,這樣正負(fù)符號(hào)就被數(shù)值化了。因?yàn)橛蟹?hào)占據(jù)一位,數(shù)的形式值就不等于真正的數(shù)值,帶符號(hào)位的機(jī)器數(shù)對(duì)應(yīng)的數(shù)值稱(chēng)為機(jī)器數(shù)的真值。
機(jī)器數(shù)的另一個(gè)特點(diǎn)是二進(jìn)制的位數(shù)受機(jī)器設(shè)備的限制。機(jī)器內(nèi)部設(shè)備一次能表示的二進(jìn)制位數(shù)叫機(jī)器的字長(zhǎng),一臺(tái)機(jī)器的字長(zhǎng)是固定的。字長(zhǎng)8位叫一個(gè)字節(jié)(Byte),現(xiàn)在機(jī)器字長(zhǎng)一般都是字節(jié)的整數(shù)倍,如字長(zhǎng)8位、16位、32位、64位。
符號(hào)位數(shù)值化之后,為能方便的對(duì)機(jī)器數(shù)進(jìn)行算術(shù)運(yùn)算、提高運(yùn)算速度,計(jì)算機(jī)設(shè)計(jì)了多種符號(hào)位與數(shù)值一起編碼的方法,最常用的機(jī)器數(shù)表示方法有三種:原碼、反碼和補(bǔ)碼。
(2)原碼表示法和反碼表示法
一個(gè)機(jī)器數(shù)X由符號(hào)位和有數(shù)數(shù)值兩部分組成。
(3)補(bǔ)碼表示法(complement)
設(shè)計(jì)補(bǔ)碼表示法的目的是:①使符號(hào)位能和有效數(shù)值部分一起參加數(shù)值運(yùn)算從而簡(jiǎn)化運(yùn)算規(guī)則,節(jié)省運(yùn)算時(shí)間。②使減法運(yùn)算轉(zhuǎn)化成加法運(yùn)算,從而進(jìn)一步簡(jiǎn)化計(jì)算機(jī)中運(yùn)算器的線路設(shè)計(jì)。計(jì)算機(jī)是一種有限字長(zhǎng)的數(shù)字系統(tǒng),因此都是有模運(yùn)算,超過(guò)模的運(yùn)算結(jié)果都將溢出。n位二進(jìn)制整數(shù)的模是2 n 。
對(duì)于二進(jìn)制數(shù)還有一種更加簡(jiǎn)單的方法由原碼求得補(bǔ)碼。①正數(shù)的補(bǔ)碼表示與原碼一樣,[X]補(bǔ) =[X]原②負(fù)數(shù)的補(bǔ)碼是將原碼符號(hào)位保持“1”之后其余各位取相反的碼,末位加1便得到補(bǔ)碼,即取其原碼的反碼再加1∶[X]補(bǔ) =[X]反 +1。
真值+0和-0的補(bǔ)碼表示是一致的,但在原碼和反碼表示中具有不同的形式。8位補(bǔ)碼機(jī)器數(shù)可以表示-128,但不存在+128的補(bǔ)碼與之對(duì)應(yīng),由此可知8位二進(jìn)制補(bǔ)碼能表示數(shù)的范圍是-128~+127。應(yīng)該注意,不存在-128的8位原碼和反碼形式。
根據(jù)互補(bǔ)的概念,一個(gè)補(bǔ)碼機(jī)器數(shù)再求一次補(bǔ)就得到機(jī)器數(shù)的原碼了。
定點(diǎn)數(shù)與浮點(diǎn)數(shù):
(1)定點(diǎn)數(shù)(fixed-point number)
計(jì)算機(jī)處理的數(shù)據(jù)不僅有符號(hào),而且大量的數(shù)帶有小數(shù),小數(shù)點(diǎn)不占有二進(jìn)制一位而是隱含有機(jī)器數(shù)里某固定位置上。通常采用兩種簡(jiǎn)單的約定:一種是約定所有機(jī)器數(shù)的小數(shù)點(diǎn)位置隱含在機(jī)器數(shù)的最低位之后,叫定點(diǎn)純整數(shù)機(jī)器數(shù),簡(jiǎn)稱(chēng)定點(diǎn)整數(shù)。
另一種約定所有機(jī)器數(shù)的小數(shù)點(diǎn)位置隱含有符號(hào)位之后、有效數(shù)值部分最高位之前,叫定點(diǎn)純小數(shù)機(jī)器數(shù),簡(jiǎn)稱(chēng)定點(diǎn)小數(shù)。
計(jì)算機(jī)采用定點(diǎn)數(shù)表示時(shí),對(duì)于既有整數(shù)又有小數(shù)的原始數(shù)據(jù),需要設(shè)定一個(gè)比例因子,數(shù)據(jù)按比例因子縮小成定點(diǎn)小數(shù)或擴(kuò)大成定點(diǎn)整數(shù)再參加運(yùn)算,結(jié)果輸出時(shí)再按比例折算成實(shí)際值。n位原碼定點(diǎn)整數(shù)的表示范圍是-(2 n-1 -1)≤X≤2 n-1 -1,n位原碼定點(diǎn)小數(shù)的表示范圍是-(1-2 -(n-1) )≤X≤1-2 -(n-1) 。當(dāng)機(jī)器數(shù)小于定點(diǎn)數(shù)的最小值時(shí),被當(dāng)作0處理,超出定點(diǎn)數(shù)的最大值時(shí),機(jī)器無(wú)法表達(dá),稱(chēng)作“溢出”,此時(shí)機(jī)器將停止運(yùn)算,屏幕顯示溢出警告。
定點(diǎn)數(shù)表示方法簡(jiǎn)單直觀,不過(guò)定點(diǎn)數(shù)表示數(shù)的范圍小,不易選擇合適的比例因子,運(yùn)算過(guò)程容易產(chǎn)生溢出。
(2)浮點(diǎn)數(shù)(floating-point number)
計(jì)算機(jī)采用浮點(diǎn)數(shù)來(lái)表示數(shù)值,它與科學(xué)計(jì)算法相似,把任意一個(gè)二進(jìn)制數(shù)通過(guò)移動(dòng)小數(shù)點(diǎn)位置表示成階碼和尾數(shù)兩部分:N=2 E ×S
其中:E———N的階碼(exponent),是有符號(hào)的整數(shù);
S———N的尾數(shù)(mantissa),是數(shù)值的有效數(shù)字部分,一般規(guī)定取二進(jìn)制定點(diǎn)純小數(shù)正式。浮點(diǎn)數(shù)運(yùn)算必須化成規(guī)格化形式。所謂規(guī)格化,對(duì)于原碼尾數(shù)應(yīng)使最高數(shù)字位S1 =1,如果不是1,且尾數(shù)不是全為0時(shí)就要移動(dòng)尾數(shù)直到S1 =1,階碼相應(yīng)變化,保證N值不變。如果尾數(shù)是補(bǔ)碼,當(dāng)N是正數(shù)時(shí),S1 必須是1,而N是負(fù)數(shù)時(shí),S1 必須是0,才稱(chēng)為規(guī)格化的形式。
4.數(shù)字編碼
十進(jìn)制數(shù)在機(jī)內(nèi)轉(zhuǎn)換成二進(jìn)制數(shù)時(shí),有時(shí)也以一種中間數(shù)字編碼形式存在,它把每一位十進(jìn)制數(shù)用四位二進(jìn)制編碼表達(dá),每一組只表達(dá)0~9的數(shù)值運(yùn)算時(shí),有專(zhuān)門(mén)的線路在每四位二進(jìn)制間按“十”進(jìn)位處理,故稱(chēng)為二進(jìn)制編碼的十進(jìn)制數(shù)———BCD碼(Binary Coded Decimal(或稱(chēng)二—十進(jìn)制數(shù)。其編碼種類(lèi)很多,如格雷碼、余3碼等,最常用的叫8421BCD碼,4個(gè)二進(jìn)制位自左向右每位的權(quán)分別是8、4、2、1。0~9的8421碼與通常的二進(jìn)制一樣進(jìn)位,十分簡(jiǎn)單,當(dāng)計(jì)數(shù)超過(guò)9時(shí),需要采取辦法自動(dòng)向十進(jìn)制高位進(jìn)一,即要進(jìn)行“十進(jìn)制調(diào)整”才能得到正確結(jié)果。
5.校驗(yàn)碼
由于器件質(zhì)量不可靠、線路工藝不過(guò)關(guān)、遠(yuǎn)距離傳送帶來(lái)的干擾或受來(lái)自電源、空間磁場(chǎng)影響等因素,使得信息在存取、傳送和計(jì)算過(guò)程中難免會(huì)發(fā)生諸如“1”誤變?yōu)?ldquo;0”的錯(cuò)誤,計(jì)算機(jī)一旦出錯(cuò),要能及時(shí)檢測(cè)并糾正錯(cuò)誤,其中一種方法是對(duì)數(shù)據(jù)信息擴(kuò)充,加入新的代碼,它與原數(shù)據(jù)信息一起按某種規(guī)律編碼后具有發(fā)現(xiàn)錯(cuò)誤的能力,有的甚至能指出錯(cuò)誤所在的準(zhǔn)確位置使機(jī)器自動(dòng)糾正,能起這種作用的編碼叫“校驗(yàn)碼”(check code)。
奇偶校驗(yàn)碼:
將每個(gè)數(shù)據(jù)代碼擴(kuò)展一個(gè)二進(jìn)位作校驗(yàn)位(parity bit),這個(gè)校驗(yàn)取0還是取1的原則是:若是奇校驗(yàn)(odd parity),編碼是含“1”的個(gè)數(shù)連同校驗(yàn)位的取值共有奇數(shù)個(gè)“1”;若是偶校驗(yàn)(even parity),連同校驗(yàn)位在內(nèi)編碼里含“1”的個(gè)數(shù)是偶數(shù)個(gè)。
交叉校驗(yàn):
計(jì)算機(jī)進(jìn)行大量字節(jié)傳送時(shí)一次傳送幾百甚至更多字節(jié)組成的數(shù)據(jù)塊,如果不僅每一個(gè)字節(jié)有一個(gè)奇偶校驗(yàn)位———稱(chēng)橫向校驗(yàn),而且全部字節(jié)的同一位也設(shè)置了一個(gè)奇偶校驗(yàn)位———稱(chēng)縱向校驗(yàn),對(duì)數(shù)據(jù)塊代碼的橫向縱向同時(shí)校驗(yàn),這種情況叫交叉校驗(yàn)。
循環(huán)冗余校驗(yàn)碼———CRC碼(Cyclic Redundancy Check):
計(jì)算機(jī)信息傳向遠(yuǎn)方終端或傳到另一個(gè)計(jì)算中心時(shí),信息沿一條通信線路一位位傳送,這種通信方式叫串行通信。循環(huán)冗余碼(簡(jiǎn)稱(chēng)CRC碼)就是一種檢驗(yàn)?zāi)芰軓?qiáng),在串行通信中廣泛采用的校驗(yàn)編碼。
(1)CRC碼
串行傳送的信息M(X)是一串k位二進(jìn)制序列,在它被發(fā)送的同時(shí),被一個(gè)事先選擇的“生成多項(xiàng)式”相除,“生成多項(xiàng)式”長(zhǎng)r+1位,相除后得到r位余數(shù)就是校驗(yàn)位,它拼接到原k位有效信息后面即形成CRC碼。CRC碼到達(dá)接收方時(shí),接收方的設(shè)備一方面接收CRC碼,一方面用同樣的生成多項(xiàng)式相除,如果正好除盡,表示無(wú)信息差錯(cuò),接收方去掉CRC碼后面r位校驗(yàn),收下k位有效信息;當(dāng)不能除盡時(shí),說(shuō)明有信息的狀態(tài)位發(fā)生了轉(zhuǎn)變,即出錯(cuò)了。一般要求重新傳送一次或立即糾錯(cuò)。
(2)CRC碼計(jì)算
傳送信息時(shí)生成CRC碼以及接收時(shí)對(duì)CRC碼校驗(yàn)都要與“生成多項(xiàng)式”相除,這里除法是“模2運(yùn)算”,即二進(jìn)位運(yùn)算時(shí)不考慮進(jìn)位和借位。作模2除法時(shí),取商的原則是當(dāng)部分余數(shù)首位為1時(shí)商取1,反之商取0,然后按模2減,求部分余數(shù)。這個(gè)余數(shù)不計(jì)高位。當(dāng)被除數(shù)逐位除完時(shí),最后余數(shù)的位數(shù)比除數(shù)少一位。該余數(shù)就是校驗(yàn)位。它拼接在有效信息后面組成CRC碼。因?yàn)樾r?yàn)位擴(kuò)充了傳送部分的代碼,所以這是一種基于“冗余校驗(yàn)”的思想的校驗(yàn)辦法。
(3)生成多項(xiàng)式
CRC碼是M(X)除以某一個(gè)預(yù)先選定的多項(xiàng)式后產(chǎn)生的,所以這個(gè)多項(xiàng)式叫生成多項(xiàng)式。并不是任何一個(gè)r+1位的編碼都可以作生成多項(xiàng)式用,它應(yīng)能滿足當(dāng)任何一位發(fā)生傳送錯(cuò)誤時(shí)都能使余數(shù)不為0,并且不同位發(fā)生錯(cuò)誤時(shí)應(yīng)當(dāng)使余數(shù)也不同,這樣不但能檢錯(cuò)而且能推斷是哪一位出錯(cuò),從而有利準(zhǔn)確的糾錯(cuò)。有兩個(gè)生成多項(xiàng)式,其檢錯(cuò)率很高。
X 16 +X 15 +X 2 +1
X 16 +X 12 +X 6 +1
6.非數(shù)值數(shù)據(jù)的表示方法
計(jì)算機(jī)中數(shù)據(jù)的概念是廣義的,機(jī)內(nèi)除有數(shù)值數(shù)據(jù)之外,還有文字、符號(hào)、圖象、語(yǔ)言和邏輯信息等等,因?yàn)樗鼈円捕际?、1形式存在,所以稱(chēng)為非數(shù)值數(shù)據(jù)。
(1)字符數(shù)據(jù)
字符數(shù)據(jù)主要指數(shù)字、字母、通用符號(hào)、控制符號(hào)等,在機(jī)內(nèi)它們都被變換成計(jì)算機(jī)能夠識(shí)別的二進(jìn)制編碼形式。國(guó)際上被普遍采用的一種編碼是美國(guó)國(guó)家信息交換標(biāo)準(zhǔn)代碼(American Standard Code for Information Interchange),簡(jiǎn)稱(chēng)ASCII碼。ASCII碼選擇了四類(lèi)共128種常用的字符:①數(shù)字0~9。②字母。③通用符號(hào)。④動(dòng)作控制符。
(2)邏輯數(shù)據(jù)
邏輯數(shù)據(jù)是指計(jì)算機(jī)不帶符號(hào)位的一位二進(jìn)制數(shù)。
邏輯數(shù)據(jù)在計(jì)算機(jī)中雖然也是“0”或“1”的形式,但是與數(shù)值有很大區(qū)別:
?、龠壿嫈?shù)據(jù)的取值只有“0”和“1”兩個(gè)值,不可能再有其他值,而數(shù)值數(shù)據(jù)與1的不同組合可以反映很多不同數(shù)值。
②邏輯數(shù)據(jù)的“0”和“1”代表兩種成對(duì)出現(xiàn)的邏輯概念,與一般數(shù)學(xué)中代表“0”和“1”的數(shù)值概念截然不同。
?、圻壿嫈?shù)據(jù)和邏輯數(shù)據(jù)運(yùn)算可以表達(dá)事物內(nèi)部的邏輯關(guān)系,而數(shù)值數(shù)據(jù)表達(dá)的是事物的數(shù)量關(guān)系。漢字:
(1)漢字字音編碼
(2)漢字字形編碼
(3)漢字音形編碼
(4)電報(bào)碼