版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第一章計(jì)算機(jī)基礎(chǔ)
一、計(jì)算機(jī)的發(fā)展
自從1946年2月現(xiàn)代電子計(jì)算機(jī)的鼻祖ENIAC(electronicnumerical
integratorandcom-puter)在美國賓夕法尼亞大學(xué)問世以后,短短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ī)的元器件主要由電子管(vacuumtube)組成。其特點(diǎn)是體積龐大、
功耗高、運(yùn)算速度較低。如ENIAC占地170nl2,重達(dá)30噸,功耗
為140kW,有18000多個(gè)電子管,每秒鐘能進(jìn)行5000次加法計(jì)算。
這一階段,計(jì)算機(jī)主要用于軍事、國防等尖端技術(shù)領(lǐng)域。除了EN1AC
以外,1945年左右,馮?諾依曼等人在研制EDVAC(electronicdiscrete
variablecomputer)時(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ā)了一場影響深遠(yuǎn)的電子革命。體積小、功
耗低、價(jià)格便宜的晶體管取代了電子管,不僅提高了計(jì)算機(jī)的性能,
也使計(jì)算機(jī)在科研、商業(yè)等領(lǐng)域內(nèi)得到廣泛地應(yīng)用。第二代計(jì)算機(jī)不
僅采用了晶體管器件,而且存儲(chǔ)器改用速度更快的磁芯存儲(chǔ)器;與此
同時(shí)高級(jí)編程語言和系統(tǒng)軟件的出現(xiàn),也大大提高了計(jì)算機(jī)的性能和
拓寬了其應(yīng)用領(lǐng)域。這一時(shí)期計(jì)算機(jī)的代表主要有DEC公司1957年
推出的PDP-I、IBM公司于1962年推出的7094以及CDC公司1964
年研制成功的CDC6600o1969年CDC公司研制的DCD7600平均速
度達(dá)到每秒千萬次浮點(diǎn)運(yùn)算。
從20世紀(jì)60年代中期到70年代初期(1965?1972)為集成電路計(jì)
算機(jī)時(shí)代。第一代和第二代計(jì)算機(jī)均采用分離器件(discrete
component)組成。集成電路(integratedcircuit)的出現(xiàn),宣告了第
三代計(jì)算機(jī)的來臨。由于采用了集成電路,使得計(jì)算機(jī)的制造成本迅
速下降;同時(shí)因?yàn)檫壿嫼痛鎯?chǔ)器件集成化的封裝,大大提高了運(yùn)行速
度,功耗也隨之下降;集成電路的使用,使得計(jì)算機(jī)內(nèi)各部分的互聯(liá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ǔ)器芯片從Ikbit,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)對計(jì)算機(jī)的性能也有巨大的影響(中
斷系統(tǒng)、Cache存儲(chǔ)器、流水線技術(shù)等等)。實(shí)際上在第三代計(jì)算機(jī)
以后,就很難找到一個(gè)統(tǒng)一的標(biāo)準(zhǔn)進(jìn)行劃分。
也可以從應(yīng)用的觀點(diǎn)來劃分計(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-ComputerIntegratedManufacturingSystem),再發(fā)展下去
就是工廠自動(dòng)化(FactoryAutomation)或稱無人工廠。DSS(Decision
SupportSystem)/ES(ExpertSystem)利用人工智能(AI—Artifcation
In-telligence)技術(shù),讓計(jì)算機(jī)代替人判斷、推理,尋找最優(yōu)方案,以
輔助決策者決策。
目前更流行的是認(rèn)為計(jì)算機(jī)的發(fā)展經(jīng)過了三次浪潮(wave)。
計(jì)算機(jī)的發(fā)展第一個(gè)浪潮是單個(gè)主機(jī)(Mainframe)的時(shí)期,以
IBM360、370為代表的大型機(jī)的出現(xiàn),其特點(diǎn)是以批處理為主,主要
用于大規(guī)??茖W(xué)計(jì)算。
第二次浪潮為客戶機(jī)/服務(wù)器(Client/Server)的時(shí)期,這時(shí)期出現(xiàn)了
小型機(jī)、微型機(jī)和局域網(wǎng)。其特點(diǎn)是多用戶分時(shí)處理。
第三個(gè)浪潮是70?80年代的微型計(jì)算機(jī)PC(PersonalComputer)的
出現(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)綜合起
來,并結(jié)合了多媒體技術(shù)、通信技術(shù)等,把人類帶入了網(wǎng)絡(luò)社會(huì)。
二、計(jì)算機(jī)的分類及其應(yīng)用
計(jì)算機(jī)分類的方法大致可分如下兒種:
1.按信息的形式和處理方式分類
計(jì)算機(jī)按信息的形式和處理方式可分為數(shù)字計(jì)算機(jī)、模擬計(jì)算機(jī)以及
數(shù)字混合計(jì)算機(jī)。
2.按計(jì)算機(jī)的用途分類
計(jì)算機(jī)按用途可分為通用計(jì)算機(jī)和專用計(jì)算機(jī)。
3.按計(jì)算機(jī)規(guī)模分類
計(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ī)械等物理部件
組成,它們都是看得見摸得著的,故通常稱為“硬件”。計(jì)算機(jī)硬件結(jié)
構(gòu)也可以稱為馮?諾伊曼結(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ī)字長相同,
數(shù)據(jù)和指令通過總線傳送。
2.以存儲(chǔ)器為中心的雙總線結(jié)構(gòu)
3.單總線結(jié)構(gòu)
主要部件功能:
1.運(yùn)算器
運(yùn)算器是完成二進(jìn)制編碼的算術(shù)或邏輯運(yùn)算的部件。運(yùn)算器由累加器
(用符號(hào)LA表示)、通用寄存器(用符號(hào)LB表示)和算術(shù)邏輯單
元(用符號(hào)ALU表示)組成,核心是算術(shù)邏輯單元。
2.存儲(chǔ)器
在計(jì)算機(jī)中的存儲(chǔ)器包括內(nèi)存儲(chǔ)器(又叫主存儲(chǔ)器或隨機(jī)存儲(chǔ)器,簡
稱內(nèi)存或主存)、外存儲(chǔ)器、只讀存儲(chǔ)器和高速緩沖存儲(chǔ)器以及寄存
器等。隨機(jī)存儲(chǔ)器是按地址存取數(shù)據(jù)的,若地址總線共有20條(A
0?A19),即有20個(gè)二進(jìn)制位,可形成220=1048576個(gè)地址(1
兆地址)。
3.控制器
控制器由三大部件組成,它們是指令部件、時(shí)序部件和操作控制部件。
(1)指令部件
指令部件包括程序計(jì)數(shù)器PC,指令寄存器IR和指令譯碼器IDo
(2)時(shí)序部件
時(shí)序部件產(chǎn)生定時(shí)節(jié)拍,一般由時(shí)鐘信號(hào)源、節(jié)拍發(fā)生器及微操作電
路組成。
4.輸出寄存器
輸出寄存器用于存放輸出結(jié)果,以便由它通過必要的接口(輸出通
道),在輸出設(shè)備上輸出運(yùn)算結(jié)果。
5.輸入設(shè)備
目前主要通過CRT終端和鍵盤實(shí)現(xiàn)人機(jī)對話。磁性設(shè)備閱讀機(jī)、光
學(xué)閱讀機(jī)等也可作為輸入設(shè)備。
四、計(jì)算機(jī)軟件的功能及分類
所謂軟件是指為運(yùn)行、維護(hù)、管理、應(yīng)用計(jì)算機(jī)所編制的所有程序的
總和。軟件分為系統(tǒng)軟件和應(yīng)用軟件。
系統(tǒng)軟件包括計(jì)算機(jī)操作系統(tǒng)(OperationSystem)、計(jì)算機(jī)的各種管
理程序、監(jiān)控程序、調(diào)試程序、編輯程序以及各種語言的編譯或解釋
程序等。應(yīng)用軟件是為解決各種實(shí)際問題而設(shè)計(jì)的程序。軟件系統(tǒng)軟
件操作系統(tǒng)編輯程序
語言處理程序匯編程序編譯程序解釋程序系統(tǒng)實(shí)用程序裝配連接程
序應(yīng)用軟件通用軟件用戶程序
1.操作系統(tǒng)
操作系統(tǒng)具有三大功能:管理計(jì)算機(jī)硬、軟件資源,使之有效使用;組
織協(xié)調(diào)計(jì)算機(jī)的運(yùn)行,以增強(qiáng)系統(tǒng)的處理能力;提供人機(jī)接口,為用
戶提供方便。操作系統(tǒng)具有的管理:
(1)作業(yè)管理。
(2)資源管理。
(3)中斷處理。
(4)I/O處理。
(5)調(diào)度。
(6)錯(cuò)誤處理。
(7)保護(hù)和保密處理。
(8)記帳。
操作系統(tǒng)的基本類型:
(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ù)庫管理系統(tǒng)
數(shù)據(jù)庫管理系統(tǒng)既可以認(rèn)為是一個(gè)系統(tǒng)軟件也可以認(rèn)為是一個(gè)通用
的應(yīng)用軟件。
目前有三種類型的數(shù)據(jù)庫管理系統(tǒng),故可存放三種模型的數(shù)據(jù),這三
種數(shù)據(jù)庫管理系統(tǒng)分別為層次數(shù)據(jù)庫、網(wǎng)狀數(shù)據(jù)庫和關(guān)系數(shù)據(jù)庫。
3.計(jì)算機(jī)網(wǎng)絡(luò)軟件
計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)是通過通信線路連接的硬件、軟件與數(shù)據(jù)集合的一個(gè)
計(jì)算機(jī)系統(tǒng)。從硬件來說,除計(jì)算機(jī)作為網(wǎng)絡(luò)的結(jié)點(diǎn)以外,還有如服
務(wù)器(也可是一臺(tái)計(jì)算機(jī)),網(wǎng)絡(luò)適配器,終端控制器以及網(wǎng)絡(luò)連接
器等硬件設(shè)備;從軟件來說,有網(wǎng)絡(luò)操作系統(tǒng),網(wǎng)絡(luò)通信及協(xié)議軟件,
網(wǎng)絡(luò)數(shù)據(jù)庫管理系統(tǒng)等。
4.高級(jí)語言及語言處理器
用戶用高級(jí)語言編寫的程序稱源程序,源程序不能由計(jì)算機(jī)直接執(zhí)
行,必須翻譯成機(jī)器能執(zhí)行的語言一機(jī)器語言,這種翻譯是由機(jī)器自
動(dòng)翻譯的,“譯員”稱編譯程序或編譯器,當(dāng)源程序輸入計(jì)算機(jī)后,調(diào)
用編譯程序編譯成機(jī)器語言(稱目標(biāo)程序),然后執(zhí)行。還有一種語
言處理程序叫解釋程序,輸入一條語句,翻譯一條?,F(xiàn)在已出現(xiàn)了第
4代語言(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ī)則簡單。
(3)計(jì)算機(jī)中二進(jìn)制數(shù)的0、1數(shù)碼與邏輯代數(shù)變量值。與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ù)制和十進(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,再取商的繼續(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ù),所以這種算法稱作
“除基取余”法。
(2)小數(shù)轉(zhuǎn)換方法一乘基取整法
把十進(jìn)制小數(shù)乘以2,取其積的整數(shù)部分作為對應(yīng)二進(jìn)制小數(shù)的最高
位系數(shù)k-1,再取積的純小數(shù)部分乘以2,新得積的整數(shù)部分又作下
一位的系數(shù)k-2,再取其積的純小數(shù)部分繼續(xù)乘2,…,直到乘積小
數(shù)部分為。時(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è)換算過程會(huì)無限進(jìn)行下去,此時(shí)可以根據(jù)要求并考
慮計(jì)算機(jī)字長,取一定長度的位數(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)展開成多項(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)稱為機(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來區(qū)別。通常這個(gè)符號(hào)放在二進(jìn)制數(shù)的最高位,稱符號(hào)
位,以。代表符號(hào)“+”,以1代表符號(hào)這樣正負(fù)符號(hào)就被數(shù)值化
To因?yàn)橛蟹?hào)占據(jù)一位,數(shù)的形式值就不等于真正的數(shù)值,帶符號(hào)
位的機(jī)器數(shù)對應(yīng)的數(shù)值稱為機(jī)器數(shù)的真值。
機(jī)器數(shù)的另一個(gè)特點(diǎn)是二進(jìn)制的位數(shù)受機(jī)器設(shè)備的限制。機(jī)器內(nèi)部設(shè)
備一次能表示的二進(jìn)制位數(shù)叫機(jī)器的字長,一臺(tái)機(jī)器的字長是固定
的。字長8位叫一個(gè)字節(jié)(Byte),現(xiàn)在機(jī)器字長一般都是字節(jié)的整
數(shù)倍,如字長8位、16位、32位、64位。
符號(hào)位數(shù)值化之后,為能方便的對機(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è)符號(hào)位為X0,
X真值的絕對值|X|=X1X2...Xn,X的機(jī)器數(shù)原碼表示為:[X]原
=X0X1X2...Xn當(dāng)XN0時(shí),X0=0當(dāng)X<0時(shí),X0=l
原碼表示很直觀,但原碼加減運(yùn)算時(shí)符號(hào)位不能視同數(shù)值一樣參加運(yùn)
算,運(yùn)算規(guī)則復(fù)雜,運(yùn)算時(shí)間長,而計(jì)算機(jī)大量的數(shù)據(jù)處理工作是加
減運(yùn)算,原碼表示就很不方便了。
一個(gè)負(fù)數(shù)的原碼符號(hào)位不動(dòng),其余各位取相反碼就是機(jī)器數(shù)的另一種
表示形式一反碼表示法。正數(shù)的反碼與原碼相同。設(shè)[X]原=X0
X1X2...Xn
當(dāng)X0=0時(shí),[X]反=X0X1X2…Xn當(dāng)X0=l時(shí),[X]反
=X0X1X2...Xn
(3)補(bǔ)碼表示法(complement)
設(shè)計(jì)補(bǔ)碼表示法的目的是:①使符號(hào)位能和有效數(shù)值部分一起參加數(shù)
值運(yùn)算從而簡化運(yùn)算規(guī)則,節(jié)省運(yùn)算時(shí)間。②使減法運(yùn)算轉(zhuǎn)化成加法
運(yùn)算,從而進(jìn)一步簡化計(jì)算機(jī)中運(yùn)算器的線路設(shè)計(jì)。計(jì)算機(jī)是一種有
限字長的數(shù)字系統(tǒng),因此都是有模運(yùn)算,超過模的運(yùn)算結(jié)果都將溢出。
n位二進(jìn)制整數(shù)的模是2no
一個(gè)數(shù)的補(bǔ)碼記作[X]補(bǔ),設(shè)模是M,X是真值,補(bǔ)碼定義如下:
[X]補(bǔ)=[X]原XN
M+XX<0
從這個(gè)定義出發(fā)就能求得一個(gè)數(shù)的補(bǔ)碼。
對于二進(jìn)制數(shù)還有一種更加簡單的方法由原碼求得補(bǔ)碼。
①正數(shù)的補(bǔ)碼表示與原碼一樣,[X]補(bǔ)=[X]原
②負(fù)數(shù)的補(bǔ)碼是將原碼符號(hào)位保持“1”之后其余各位取相反的碼,末
位加1便得到補(bǔ)碼,即取其原碼的反碼再加1:[X]補(bǔ)=[X]反
+1O
真值+0和-0的補(bǔ)碼表示是一致的,但在原碼和反碼表示中具有不同
的形式。8位補(bǔ)碼機(jī)器數(shù)可以表示-128,但不存在+128的補(bǔ)碼,由此
可知8位二進(jìn)制補(bǔ)碼能表示數(shù)的范圍是-128?+127。應(yīng)該注意,不存
在-128的8位原碼和反碼形式。
根據(jù)互補(bǔ)的概念,一個(gè)補(bǔ)碼機(jī)器數(shù)再求一次補(bǔ)就得到機(jī)器數(shù)的原碼
To
定點(diǎn)數(shù)與浮點(diǎn)數(shù):
(1)定點(diǎn)數(shù)(fixed-pointnumber)
計(jì)算機(jī)處理的數(shù)據(jù)不僅有符號(hào),而且大量的數(shù)帶有小數(shù),小數(shù)點(diǎn)不占
有二進(jìn)制位而是隱含有機(jī)器數(shù)里某固定位置上。通常采用兩種簡單的
約定:一種是約定所有機(jī)器數(shù)的小數(shù)點(diǎn)位置隱含在機(jī)器數(shù)的最低位之
后,叫定點(diǎn)純整數(shù)機(jī)器數(shù),簡稱定點(diǎn)整數(shù)。
另一種約定是所有機(jī)器數(shù)的小數(shù)點(diǎn)位置隱含在符號(hào)位之后、有效數(shù)值
部分最高位之前,叫定點(diǎn)純小數(shù)機(jī)器數(shù),簡稱定點(diǎn)小數(shù)。
計(jì)算機(jī)采用定點(diǎn)數(shù)表示時(shí),對于既有整數(shù)又有小數(shù)的原始數(shù)據(jù),需要
設(shè)定一個(gè)比例因子,數(shù)據(jù)按比例因子縮小成定點(diǎn)小數(shù)或擴(kuò)大成定點(diǎn)整
數(shù)再參加運(yùn)算,結(jié)果輸出時(shí)再按比例折算成實(shí)際值。n位原碼定點(diǎn)整
數(shù)的表示范圍是-(2n-1-1)<X<2n-1-1,n位原碼定點(diǎn)小數(shù)的表示
范圍是-(1-2-(n-1))<X<l-2-(n-1)。當(dāng)機(jī)器數(shù)小于定點(diǎn)數(shù)的
最小值時(shí),被當(dāng)作0處理,超出定點(diǎn)數(shù)的最大值時(shí),機(jī)器無法表達(dá),
稱作“溢出”,此時(shí)機(jī)器將停止運(yùn)算,屏幕顯示溢出警告。
定點(diǎn)數(shù)表示方法簡單直觀,不過定點(diǎn)數(shù)表示數(shù)的范圍小,不易選擇合
適的比例因子,運(yùn)算過程容易產(chǎn)生溢出。
(2)浮點(diǎn)數(shù)(floating-pointnumber)
計(jì)算機(jī)采用浮點(diǎn)數(shù)來表示數(shù)值,它與科學(xué)計(jì)算法相似,把任意一個(gè)二
進(jìn)制數(shù)通過移動(dòng)小數(shù)點(diǎn)位置表示成階碼和尾數(shù)兩部分:
N=2ExS
其中: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ī)格化,對于原碼尾數(shù)應(yīng)使最
高數(shù)字位S1=1,如果不是1,且尾數(shù)不是全為。時(shí)就要移動(dòng)尾數(shù)直
到S1=1,階碼相應(yīng)變化,保證N值不變。如果尾數(shù)是補(bǔ)碼,當(dāng)N
是正數(shù)時(shí),S1必須是1,而N是負(fù)數(shù)時(shí),S1必須是0,才稱為規(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í),有專門的電路在每四位二進(jìn)制間按“十”進(jìn)位處理,
故稱為二進(jìn)制編碼的十進(jìn)制數(shù)…BCD碼(BinaryCodedDecimal)或
稱二-十進(jìn)制數(shù)。其編碼種類很多,如格雷碼、余3碼等,最常用的
叫8421BCD碼,4個(gè)二進(jìn)制位自左向右每位的權(quán)分別是8、4、2、1。
0?9的8421碼與通常的二進(jìn)制一樣進(jìn)位,十分簡單,當(dāng)計(jì)數(shù)超過9
時(shí)一,需要采取辦法自動(dòng)向十進(jìn)制高位進(jìn)一,即要進(jìn)行“十進(jìn)制調(diào)整”
才能得到正確結(jié)果。
5.校驗(yàn)碼
由于器件質(zhì)量不可靠、線路工藝不過關(guān)、遠(yuǎn)距離傳送帶來的干擾或受
來自電源、空間磁場影響等因素,使得信息在存取、傳送和計(jì)算過程
中難免會(huì)發(fā)生諸如“1”誤變?yōu)椤?”的錯(cuò)誤,計(jì)算機(jī)一旦出錯(cuò),要能及時(shí)
檢測并糾正錯(cuò)誤,其中一種方法是對數(shù)據(jù)信息擴(kuò)充,加入新的代碼,
它與原數(shù)據(jù)信息一起按某種規(guī)律編碼后具有發(fā)現(xiàn)錯(cuò)誤的能力,有的甚
至能指出錯(cuò)誤所在的準(zhǔn)確位置使機(jī)器自動(dòng)糾正,能起這種作用的編碼
叫"校驗(yàn)碼"(checkcode)o
奇偶校驗(yàn)碼:
將每個(gè)數(shù)據(jù)代碼擴(kuò)展一個(gè)二進(jìn)位作校驗(yàn)位(paritybit),這個(gè)校驗(yàn)取0
還是取1的原則是:若是奇校驗(yàn)(oddparity),編碼是含“1”的個(gè)數(shù)連
同校驗(yàn)位的取值在內(nèi)共有奇數(shù)個(gè)"1";若是偶校驗(yàn)(evenparity),連同
校驗(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)位一稱橫向校驗(yàn),而且全部
字節(jié)的同一位也設(shè)置了一個(gè)奇偶校驗(yàn)位一稱縱向校驗(yàn),對數(shù)據(jù)塊代碼
的橫向縱向同時(shí)校驗(yàn),這種情況叫交*校驗(yàn)。
循環(huán)冗余校驗(yàn)碼---CRC碼(CyclicRedundancyCheck):
計(jì)算機(jī)信息傳向遠(yuǎn)方終端或傳到另一個(gè)計(jì)算中心時(shí),信息沿一條通信
線路一位位傳送,這種通信方式叫串行通信。循環(huán)冗余碼(簡稱CRC
碼)就是一種檢驗(yàn)?zāi)芰軓?qiáng),在串行通信中廣泛采用的校驗(yàn)編碼。
(1)CRC碼
串行傳送的信息M(X)是一串k位二進(jìn)制序列,在它被發(fā)送的同時(shí),
被一個(gè)事先選擇的“生成多項(xiàng)式”相除,“生成多項(xiàng)式”長r+1位,相除
后得到r位余數(shù)就是校驗(yàn)位,它拼接到原k位有效信息后面即形成
CRC碼。CRC碼到達(dá)接收方時(shí),接收方的設(shè)備一方面接收CRC碼,
一方面用同樣的生成多項(xiàng)式相除,如果正好除盡,表示無信息差錯(cuò),
接收方去掉CRC碼后面r位校驗(yàn)位,收下k位有效信息;當(dāng)不能除盡
時(shí),說明有信息的狀態(tài)位發(fā)生了轉(zhuǎn)變,即出錯(cuò)了。一般要求重新傳送
一次或立即糾錯(cuò)。
(2)CRC碼計(jì)算
傳送信息時(shí)生成CRC碼以及接收時(shí)對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ò)率很高。X16+X15+X2+1X16+X12+X6+1
6.非數(shù)值數(shù)據(jù)的表示方法
計(jì)算機(jī)中數(shù)據(jù)的概念是廣義的,機(jī)內(nèi)除有數(shù)值數(shù)據(jù)之外,還有文字、
符號(hào)、圖象、語言和邏輯信息等等,因?yàn)樗鼈円捕际?、1形式存在,
所以稱為非數(shù)值數(shù)據(jù)。
(1)字符數(shù)據(jù)
字符數(shù)據(jù)主要指數(shù)字、字母、通用符號(hào)、控制符號(hào)等
,在機(jī)內(nèi)它們都被變換成計(jì)算機(jī)能夠識(shí)別的二進(jìn)制編碼形式。國際上
普遍采用的一種編碼是美國國家信息交換標(biāo)準(zhǔn)代碼(American
StandardCodeforInformationInterchange),簡稱ASCII碼。ASCII碼
選擇了四類共128種常用的字符:①數(shù)字。?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”代表兩種成對出現(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)碼
(5)整字編碼
為了能在不同的漢字系第一部分統(tǒng)之間交換信息、高效率高質(zhì)量共
享漢字信息,近年來國家推出了一系列有關(guān)中文信息處理的標(biāo)準(zhǔn)。比
如1981年我國制定推行的GB2312-80國家標(biāo)準(zhǔn)信息交換用漢字編碼
字符集(基本集)…簡稱國標(biāo)碼,以及若干輔助集。國標(biāo)碼收集、制
定的基本圖形字符有7千余個(gè),其中常用漢字3755個(gè),次常用漢字
3008個(gè),共6763個(gè)漢字,還有俄文字母、日語假名、拉丁字母、希
臘字母、漢語拼音,每字節(jié)內(nèi)占用7bit信息,最高位補(bǔ)0,例如漢字
“啊”的國際碼,前一字節(jié)是01100000,后一字節(jié)是00100001,編碼
為3021Ho
漢字內(nèi)部碼是漢字在計(jì)算機(jī)內(nèi)部存儲(chǔ)、運(yùn)算的信息代碼,內(nèi)部碼的設(shè)
計(jì)要求與西文信息處理有較好的兼容性,當(dāng)一個(gè)漢字以某種漢字輸入
方案送入計(jì)算機(jī)后,管理模塊立刻將它轉(zhuǎn)換成兩字節(jié)長的GB2312-80
國標(biāo)碼,如果給國標(biāo)碼的每字節(jié)最高位加“1”,作為漢字標(biāo)識(shí)符,就
成為一種機(jī)器內(nèi)部表示漢字的代碼一漢字內(nèi)部碼。
漢字內(nèi)部碼的特點(diǎn)十分明顯:
①漢字內(nèi)部碼結(jié)構(gòu)簡短。一個(gè)漢字內(nèi)部碼只占兩個(gè)字節(jié),兩字節(jié)足以
表達(dá)數(shù)千個(gè)漢字和各種符號(hào)圖形,且又節(jié)省計(jì)算機(jī)存儲(chǔ)空間。
②便于和西文字符兼容。西文字符的ASCH碼占一個(gè)字節(jié),兩字節(jié)的
漢字內(nèi)碼可以看成是它擴(kuò)展的字符代碼,在同一個(gè)計(jì)算機(jī)系統(tǒng)中,只
要從最高位標(biāo)識(shí)符就能區(qū)分這兩種代碼。標(biāo)識(shí)符是“0",即是ASCII
碼;標(biāo)識(shí)符是“1”,則是漢字內(nèi)部碼。
7.語音識(shí)別及語言表示原理
語音產(chǎn)生機(jī)理的研究表明,每一種語言的語音都有自己特定的音素特
征,語音是不同頻率振動(dòng)的結(jié)果。分析語音的音素特點(diǎn),找出音素的
基頻和高次頻率優(yōu)分,就能在計(jì)算機(jī)中建立發(fā)音系統(tǒng)的模型,在實(shí)施
中對語音采樣,通過濾波器分解提取頻率信息,由模/數(shù)轉(zhuǎn)換設(shè)備轉(zhuǎn)
換成數(shù)字輸入計(jì)算機(jī),與機(jī)內(nèi)的語言模型比較,由此達(dá)到識(shí)別語音的
目的。與此相反,如果選擇已知音素的參數(shù),應(yīng)用語音系統(tǒng)模型,就
能得到指定的音素,進(jìn)一步按照一定的規(guī)則合成語言。
六、運(yùn)算器1.運(yùn)算器的組成
多功能算術(shù)/邏輯運(yùn)算單元(ALU):
(1)基本思想
關(guān)于一位全加器(FA)的邏輯表達(dá)式為:
Fi=AiBiCi
Ci+1=AiBi+BiCi+CiAi
式中Fi是第i位的和數(shù),Ai、Bi是第i位的被加數(shù)和加數(shù),Ci是
第i位的進(jìn)位輸入,Ci+1為第i位的進(jìn)位輸出。
一位算術(shù)/邏輯運(yùn)算單元的邏輯表達(dá)式為:
Fi=XiYiCn+i
Cn+i+1=XiYi+YiCn+i+Cn+iXi
上式中,進(jìn)位下標(biāo)用n+i代替原來一位全加器中的i,i代表集成在一
片電路上的ALU的二進(jìn)制位數(shù),對于四位一片的ALU,i=0,1,2,
3on代表若干片ALU組成更長的運(yùn)算器時(shí)每片電路的進(jìn)位輸入。
(2)邏輯表達(dá)式
ALU的某一位邏輯表達(dá)式如下:
Yi=S3AiBi+S2AiBi
Xi=Ai+S0Bi+S1Bi
Fi=XiYiCn+i
Cn+i+1=Yi+XiCn+i
四位之間采用先行進(jìn)位方式。
對一片ALU來說,可有三個(gè)進(jìn)位輸出。其中G稱為進(jìn)位發(fā)生輸出,
P稱為進(jìn)位傳送輸出。在電路中,多加這兩個(gè)進(jìn)位輸出的目的是為了
便于實(shí)現(xiàn)多片(組)ALU之間的先行進(jìn)位,為此,還需一個(gè)配合電
路,它稱為先行進(jìn)位發(fā)生器(CLA)o
內(nèi)部總線:
根據(jù)總線所處位置,總線分為內(nèi)部總線和外部總線兩類。內(nèi)部總線是
指CPU內(nèi)各部件的連線,而外部總線是指系統(tǒng)總線,即CPU與存儲(chǔ)
器、I/O系統(tǒng)之間的連線。
按總線的邏輯結(jié)構(gòu)來說,總線可分為單向傳送總線和雙向傳送總線。
所謂單向總線,就是信息只能向一個(gè)方向傳送。所謂雙向總線,就是
信息可以向兩個(gè)方向傳送。換句話說,總線既可以用來發(fā)送數(shù)據(jù),也
可以用來接收數(shù)據(jù)。
總線的邏輯電路往往是三態(tài)的,即輸出電平有三種狀態(tài):邏輯“1”、邏
輯“0”和“浮空,,狀態(tài)。
2.運(yùn)算器的基本結(jié)構(gòu)
運(yùn)算器包括ALU、陣列乘除器件、寄存器、多路開關(guān)或三態(tài)緩沖器、
數(shù)據(jù)總線等邏輯部件?,F(xiàn)代計(jì)算機(jī)的運(yùn)算器大體有如下三種結(jié)構(gòu)形
式。①單總線結(jié)構(gòu)的運(yùn)算器②雙總線結(jié)構(gòu)的運(yùn)算器③三總線結(jié)構(gòu)的運(yùn)
算器
七、控制器1.控制器在CPU中的位置
中央處理器(CPU)由兩個(gè)主要部分一控制器及運(yùn)算器組成。其中程
序計(jì)數(shù)器、指令寄存器、指令譯碼器、時(shí)序產(chǎn)生器和操作控制器等組
成了控制器。它是對計(jì)算機(jī)發(fā)布命令的“決策機(jī)構(gòu)”,協(xié)調(diào)和指揮整個(gè)
計(jì)算機(jī)系統(tǒng)的操作,因此,它處于CPU中極其重要的位置。在CPU
中,除算術(shù)邏輯單元(ALU)及累加器外,尚有下列邏輯部件:
(1)緩沖寄存器(DR)
緩沖寄存器用來暫時(shí)存放由內(nèi)存儲(chǔ)器讀出的一條指令或一個(gè)數(shù)據(jù)字;
反之,當(dāng)向內(nèi)存存入一條指令或一個(gè)數(shù)據(jù)字時(shí),也暫時(shí)將它們存放在
這里。緩沖寄存器的作用是:①作為CPU和內(nèi)存、外部設(shè)備之間信息
傳送的中轉(zhuǎn)站;②補(bǔ)償CPU和內(nèi)存、外部設(shè)備之間在操作速度上的差
別;
③在單累加器結(jié)構(gòu)的運(yùn)算器中,緩沖寄存器還可兼作為操作數(shù)寄存
器。
(2)指令寄存器(IR)
指令寄存器用來保存當(dāng)前正在執(zhí)行的一條指令。指令劃分為操作碼和
地址碼字段,它們由二進(jìn)制數(shù)字組成。為執(zhí)行任何給定的指令,必須
對操作碼進(jìn)行譯碼,以便指出所要求的操作。
指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。操作碼一經(jīng)
譯碼后,即可向操作控制器發(fā)出具體操作的特定信號(hào)。
(3)程序計(jì)數(shù)器(PC)
為了保證程序能夠連續(xù)地執(zhí)行下去,CPU必須具有某些手段來確定
下一條指令的地址。而程序計(jì)數(shù)器(PC)正是起到這種作用,所以
通常又稱其為指令計(jì)數(shù)器。
(4)地址寄存器(AR)
地址寄存器用來保存當(dāng)前CPU所要訪問的內(nèi)存單元的地址。由于在
內(nèi)存和CPU之間存在著操作速度上的差別,所以必須使用地址寄存
器來保持地址信息,直到內(nèi)存讀/寫操作完成為止。
(5)累加寄存器(AC)
累加寄存器AC通常簡稱為累加器。它的功能是:當(dāng)運(yùn)算器的算術(shù)/邏
輯單元(ALU)執(zhí)行全部算術(shù)和邏輯運(yùn)算時(shí),為ALU提供一個(gè)工作
區(qū)。例如,在執(zhí)行一個(gè)加法前,先將一個(gè)操作數(shù)暫時(shí)存放在AC中,
再從內(nèi)存中取出另一個(gè)操作數(shù),然后同AC的內(nèi)容相加,所得結(jié)果送
回AC中,而AC中原有的內(nèi)容隨即被破壞。顧名思義,累加寄存器
用來暫時(shí)存放ALU運(yùn)算的結(jié)果信息。顯然,運(yùn)算器中至少要有一個(gè)
累加器寄存器。
由于運(yùn)算器的結(jié)構(gòu)不同,可采用多個(gè)累加寄存器。
(6)狀態(tài)寄存器(SR)
狀態(tài)寄存器保存由算術(shù)指令和邏輯指令運(yùn)行或測試結(jié)果建立的各種
狀態(tài)碼內(nèi)容。
(7)操作控制器
操作控制器的功能,就是根據(jù)指令操作碼和時(shí)序信號(hào),產(chǎn)生各種操作
控制信號(hào),以便正確地建立數(shù)據(jù)通路,從而完成取指令和執(zhí)行指令的
控制。
根據(jù)設(shè)計(jì)方法不同,操作控制器可分為組合邏輯型、存儲(chǔ)邏輯型、組
合邏輯與存儲(chǔ)邏輯結(jié)合型三種。第一種稱為常規(guī)控制器,它是采用組
合邏輯技術(shù)來實(shí)現(xiàn)的;第二種稱為微程序控制器,它是采用存儲(chǔ)邏輯
來實(shí)現(xiàn)的;第三種稱為PLA控制器,它是吸收前兩種的設(shè)計(jì)思想來實(shí)
現(xiàn)的。
(8)時(shí)序產(chǎn)生器
CPU中除了操作控制器外,還必須有時(shí)序產(chǎn)生器,因?yàn)橛?jì)算機(jī)高速
地進(jìn)行工作,每一動(dòng)作的時(shí)間是非常嚴(yán)格的,不能有任何差錯(cuò)。時(shí)序
產(chǎn)生器的作用,就是對各種操作實(shí)施時(shí)間上的控制。
2.控制器的組成
運(yùn)算器包括ALU、累加器、數(shù)據(jù)緩沖寄存器和狀態(tài)寄存器,而控制
器的核心是操作控制器,圍繞它的有程序計(jì)數(shù)器(PC)、指令寄存器
(IR)、指令譯碼器(ID)和時(shí)序產(chǎn)生器。
八、存儲(chǔ)器1.存儲(chǔ)器的基本組成及其讀寫操作
(1)存儲(chǔ)器的基本組成
主存儲(chǔ)器由存儲(chǔ)體、地址譯碼電路、驅(qū)動(dòng)電路、讀寫電路和控制電路
等組成。主存儲(chǔ)器主要功能是:①存儲(chǔ)體:是信息存儲(chǔ)的集合體,由某
種存儲(chǔ)介質(zhì)按一定結(jié)構(gòu)組成的存儲(chǔ)單元的集合。通常是二維陣列組
織,是可供CPU和計(jì)算機(jī)其他部件訪問的地址空間。
②地址寄存器、譯碼電路與驅(qū)動(dòng)器:即尋址系統(tǒng),將CPU確定的地址
先送至地址寄存器中,然后根據(jù)譯碼電路找到應(yīng)訪問的存儲(chǔ)單元。在
存儲(chǔ)體與譯碼器之間的驅(qū)動(dòng)器的功能是減輕譯碼線驅(qū)動(dòng)負(fù)載能力。由
于一條譯碼線需要與它控制的所有存儲(chǔ)單元相聯(lián),其負(fù)載很大。需要
增夾牽動(dòng)器,以譯碼線連叫葷動(dòng)器的輸入端,由驅(qū)動(dòng)器的輸出端控制
連接在譯碼線上的所有存儲(chǔ)單元。③讀寫電路與數(shù)據(jù)寄存器:根據(jù)
CPU的命令,將數(shù)據(jù)從數(shù)據(jù)寄存器中寫入存儲(chǔ)體中特定的存儲(chǔ)單元
或?qū)⒋鎯?chǔ)體中指定單元的內(nèi)容讀到數(shù)據(jù)寄存器中。
④控制電路:接收CPU傳來的控制命令,經(jīng)過控制電路一系列的處理,
產(chǎn)生一組時(shí)序信號(hào)控制存儲(chǔ)器的操作。
在存儲(chǔ)器的組成中,存儲(chǔ)體是核心,其余部分是存儲(chǔ)體的外圍線路。
不同的存儲(chǔ)器都是由這兒部分組成,只是在選用不同的存儲(chǔ)介質(zhì)和不
同的存取方式時(shí)、各部分的結(jié)構(gòu)與工作方式略有變化。
(2)存儲(chǔ)體陣列
計(jì)算機(jī)存儲(chǔ)器中存儲(chǔ)的是“0”和“1”的信息,每一個(gè)能存儲(chǔ)一位二進(jìn)制
并能保持兩種狀態(tài)的元件稱為記憶元件。若干記憶元件組成存儲(chǔ)單
元,一個(gè)存儲(chǔ)單元能夠存儲(chǔ)一個(gè)或幾個(gè)字節(jié)的二進(jìn)制信息。每個(gè)存儲(chǔ)
單元都有一個(gè)地址編號(hào),用以唯一標(biāo)識(shí)存儲(chǔ)單元的位置。信息按地址
存入指定的存儲(chǔ)單元中,按地址從指定的存儲(chǔ)單元中取出。存儲(chǔ)單元
的集合稱為存儲(chǔ)體。由于存儲(chǔ)體中存儲(chǔ)單元的每個(gè)二進(jìn)制位必須并行
工作,因此將存儲(chǔ)單元按其地址的順序組成存儲(chǔ)陣列。
(3)存儲(chǔ)器的地址譯碼系統(tǒng)
CPU要訪問存儲(chǔ)單元的地址由地址總線輸入到地址寄存器中。地址
譯碼器將地址轉(zhuǎn)換為對應(yīng)地址線(字線)上的控制信號(hào),以表示選中
某一單元,并驅(qū)動(dòng)相應(yīng)的讀寫電路,完成對存儲(chǔ)單元的讀寫操作。
地址譯碼為兩種方式:一種是單譯碼方式,僅有一個(gè)譯碼器。譯碼器
輸出的每條譯碼線對應(yīng)一個(gè)存儲(chǔ)單元。如地址位數(shù)N=10,即譯碼器
可以有210=1024種狀態(tài),對應(yīng)有1024條譯碼線(字線)即1024
個(gè)存儲(chǔ)單元。另外一種是雙譯碼方式,將譯碼器分成X向和Y向兩
個(gè)譯碼器,通過雙譯碼器的相互作用確定存儲(chǔ)單元的地址。
設(shè)地址長度n仍為10,將其中的前5位輸入到X地址譯碼器中,譯
出X0到X31譯碼線,分別選擇0?31行。將后5位輸入到Y(jié)地
址譯碼器中譯出Y0到Y(jié)31譯碼線,分別選擇0?31歹ij。X向譯碼
器和Y向譯碼器引出的地址線都是25=32條。若采用X向和Y向
交*選擇,可以選擇從存儲(chǔ)單元(0,0)至(31,31)共25x25=1024
個(gè)存儲(chǔ)單元地址。即同樣可以提供1024種狀態(tài),而地址線只需要64
條,比單譯碼器節(jié)省93.75%的地址線。
(4)存儲(chǔ)器的讀寫操作
在CPU向存儲(chǔ)體發(fā)生讀操作命令時(shí),首先由CPU將相應(yīng)存儲(chǔ)單元的
地址碼送至地址寄存器中;地址譯碼器將地址寄存器中的地址編碼譯
成相應(yīng)地址線(字線)的高電位,標(biāo)志指定的存儲(chǔ)單元;然后在CPU
的統(tǒng)一控制下,由控制電路將讀命令轉(zhuǎn)換成讀寫電路的操作,執(zhí)行將
指定存儲(chǔ)單元的內(nèi)容傳送到數(shù)據(jù)寄存器的操作,完成了整個(gè)存儲(chǔ)器讀
的操作。存儲(chǔ)器寫的操作與讀的操作相類似。不同類型的存儲(chǔ)器根據(jù)
其特點(diǎn)有不同的讀寫操作控制電路、控制機(jī)構(gòu)、讀寫電路及地址譯碼
器,但它們的基本操作原理大同小異。
2.RAM的結(jié)構(gòu)、組織及其應(yīng)用
半導(dǎo)體存儲(chǔ)器有體積小、存取速度快、生產(chǎn)制造易于自動(dòng)化等特點(diǎn),
其性能價(jià)格比遠(yuǎn)遠(yuǎn)高于磁芯存儲(chǔ)器,因而得到廣泛的應(yīng)用。
半導(dǎo)體存儲(chǔ)器的種類很多,就其制造工藝可以分成雙極型半導(dǎo)體存儲(chǔ)
器和金屬-氧化物-半導(dǎo)體存儲(chǔ)器(簡稱MOS型存儲(chǔ)器)。MOS型存
儲(chǔ)器按其工作狀態(tài)又可以分為靜態(tài)和動(dòng)態(tài)兩種。動(dòng)態(tài)存儲(chǔ)器必須增設(shè)
恢復(fù)信息的電路,外部線路復(fù)雜。但其內(nèi)部線路簡單,集成度高,價(jià)
格較靜態(tài)存儲(chǔ)器便宜。因此經(jīng)常用做大容量的RAM。
靜態(tài)存儲(chǔ)器和動(dòng)態(tài)存儲(chǔ)器的主要差別在于:靜態(tài)存儲(chǔ)器存儲(chǔ)的信息不
會(huì)自動(dòng)消失,而動(dòng)態(tài)存儲(chǔ)器存儲(chǔ)的信息需要在再生電路的幫助下才能
保持。但無論雙極型或MOS型存儲(chǔ)器,其保持的信息將隨電源的撤
消而消失。
(1)RAM的組織
半導(dǎo)體RAM芯片是在半導(dǎo)體技術(shù)和集成電路工藝支持下的產(chǎn)物。一
般計(jì)算機(jī)中使用的RAM芯片均有自己的存儲(chǔ)體陣列、譯碼電路、讀
寫控制電路和I/O電路。①RAM的并聯(lián)
為擴(kuò)展存儲(chǔ)器的字長,可以采用并聯(lián)存儲(chǔ)器芯片的方式實(shí)現(xiàn)。②RAM
的串聯(lián)
為擴(kuò)展存儲(chǔ)器的存儲(chǔ)單元數(shù)量,可以采用多個(gè)芯片地址串聯(lián)的方式解
決。③地址復(fù)用的RAM組織
隨著大規(guī)模集成電路技術(shù)的發(fā)展,使得一塊存儲(chǔ)器芯片能夠容納更多
的內(nèi)容。其所需地址線隨之增加,為了保持芯片的外部封裝不變,一
般采用地址復(fù)用的技術(shù),即采用地址分批送入的結(jié)構(gòu)保證不增加芯片
的地址引腳。
(2)RAM的實(shí)際應(yīng)用
由于一個(gè)存儲(chǔ)器的芯片一般不能滿足使用的要求,所以通常將若干個(gè)
存儲(chǔ)器芯片按串聯(lián)和并聯(lián)的兩種方式相結(jié)合連接,組成一定容量和字
長的存儲(chǔ)器。
如果設(shè)計(jì)的存儲(chǔ)器容量有x字,字長為y,而采用的芯片為NxM位。
要組成滿足字長要求的存儲(chǔ)器所需芯片數(shù)為:y/M。根據(jù)容量要求,組
成要求容量的RAM所需芯片數(shù)為:(x/N)x(y/M)o
3.ROM的工作原理及其應(yīng)用
使用時(shí)只讀出不寫入的存儲(chǔ)器稱為只讀存儲(chǔ)器(ROM)。ROM中的
信息一旦寫入就不能進(jìn)行修改,其信息斷電之后也仍然保留。一般用
于存放微程序、固定子程序、字母符號(hào)陣列等信息。
ROM和RAM相比,使用時(shí)不需寫入、再生和刷新等操作,所以其
電路比較簡單,但同樣有地址譯碼器、數(shù)據(jù)讀出電路等。制作ROM
的半導(dǎo)體材料有二極管、MOS電路和雙極型晶體管等。因制造工藝
和功能不同,一般分為普通ROM、可編程ROM(PROM)、可擦寫
可編程ROM(EPROM)和電可擦寫可編程ROM(EEPROM)等。
(1)ROM的工作原理
一般的ROM使用掩模式ROM。這類ROM由生產(chǎn)廠家做成,用戶不
能加以修改。
掩模ROM的特點(diǎn)是其存儲(chǔ)內(nèi)容出廠時(shí)由生產(chǎn)廠家一次制成,用戶不
能對其內(nèi)容進(jìn)行修改,而依賴于生產(chǎn)廠家,這種ROM適用于定型批
量制作。在實(shí)際使用過程中,部分用戶希望自己根據(jù)需要填寫ROM
的內(nèi)容,因此產(chǎn)生可編程ROM(PROM)oPROM與掩模ROM的主
要區(qū)別是PROM在出廠時(shí)其內(nèi)容均為“0”或T,用戶在使用前按照自
己的需要利用工具將編碼寫入PROM中,一次寫入不可修改。PROM
的使用相當(dāng)于由用戶ROM生產(chǎn)的最后一道工序中一向ROM中寫入
編碼,其余同掩模ROM的使用完全相同。
(2)EPROM和EEPROM的工作原理
為了適應(yīng)程序調(diào)試的要求,針對一般PROM的不可修改特性,設(shè)計(jì)
出可以多次擦寫的可編程ROM(EPROM)。其特點(diǎn)是可以根據(jù)用戶
的要求用工具擦去ROM中原有的存儲(chǔ)內(nèi)容,重新寫入新的編碼。擦
除和寫入可以根據(jù)用戶的要求用工具擦去ROM中原有的存儲(chǔ)內(nèi)容,
重新寫入新的編碼。擦除和寫入可以多次進(jìn)行,其內(nèi)容同樣不會(huì)因斷
電而丟失。最常見的EPROM是UVEPROM,其存儲(chǔ)元件常用浮置柵
型MOS管組成。出廠時(shí)全部置“0”或“1”,由用戶通過高壓脈沖寫入
信息。擦寫時(shí)通過其外部的一個(gè)石英玻璃窗,利用紫外線的照射,使
浮柵上的電荷獲得高能而泄漏,恢復(fù)原有的全“0”或全“1”狀態(tài),允許
用戶重新寫入信息。平時(shí)窗口上必須貼有不透明膠紙,以防光線進(jìn)入
而造成信息流失。
另有一種EPROM是通過電氣方法擦除其中的已有內(nèi)容,也稱為電可
擦寫編程ROM(EEPROM)o
4.外存儲(chǔ)器的工作原理
外存儲(chǔ)器是指那些不能被CPU直接訪問的,讀取速度較內(nèi)存慢,容
量比內(nèi)存大,通常用來存放不常用的程序和數(shù)據(jù)的存儲(chǔ)器。磁帶、磁
盤存儲(chǔ)器是現(xiàn)今最常用的外存,因其利用磁表面介質(zhì)存儲(chǔ)數(shù)據(jù),通常
也稱為磁表面存儲(chǔ)器。而光盤是外存發(fā)展的方向,有必要了解它們的
原理和應(yīng)用。
(1)磁盤存儲(chǔ)器
磁盤存儲(chǔ)器具有容量大,存取速度高(相對其他種類外存儲(chǔ)器)的特
點(diǎn),因而在各種類型的計(jì)算機(jī)中普遍被用做主要的外存儲(chǔ)器。磁盤存
儲(chǔ)器避免了磁帶存儲(chǔ)的缺點(diǎn)。磁盤存儲(chǔ)器將磁性材料涂粘在以某種材
料為主的圓片上,用若干封閉的圓形磁道代替了磁帶的長形磁道。使
用時(shí)一,通過磁盤面的高速旋轉(zhuǎn)代替磁帶的直線運(yùn)動(dòng),減少尋找特定位
置的時(shí)間。
磁盤存儲(chǔ)器由磁盤、磁頭、定位系統(tǒng)和傳動(dòng)系統(tǒng)等部分組成,一般也
將這些部件統(tǒng)稱為磁盤驅(qū)動(dòng)器。根據(jù)盤片的基本組成材料將磁盤分為
硬盤和軟盤兩種。所謂硬盤是指由金屬材料制成一定厚度的盤片基
體,這些盤片一般組合成盤片組構(gòu)成硬盤驅(qū)動(dòng)器的存儲(chǔ)主體。
軟盤和硬盤盤片記錄信息的方式相同,都是將每個(gè)盤面由外向內(nèi)分成
若干個(gè)磁道,每個(gè)磁道也劃分為多個(gè)扇區(qū),信息以扇區(qū)為單位存儲(chǔ)。
扇區(qū)是磁盤存放信息的最小物理單位。扇區(qū)包括頭空、序標(biāo)、數(shù)據(jù)區(qū)、
檢驗(yàn)字段和尾空等兒個(gè)部分。通常對磁盤進(jìn)行的所謂格式化操作就是
在磁盤上劃分磁道、扇區(qū)及扇區(qū)內(nèi)各特定區(qū)域,剛出廠的磁盤上沒有
這些劃分,所以必須在格式化后才能使用。
磁盤區(qū)域的劃分隨計(jì)算機(jī)系統(tǒng)的不同而不同,其存儲(chǔ)容量也有較大的
差別。但可以通過查閱計(jì)算機(jī)系統(tǒng)相應(yīng)的說明掌握磁盤容量的數(shù)據(jù)。
計(jì)算一個(gè)磁盤容量的公式是:磁盤存儲(chǔ)容量=盤面數(shù)X每盤面磁道數(shù)X
每磁道扇區(qū)數(shù)X每扇區(qū)存儲(chǔ)容量
(2)光盤存儲(chǔ)器
所謂光盤(CD)是利用光學(xué)原理讀寫信息的存儲(chǔ)器。由于光盤的容
量大、速度較快、不易受干擾等特點(diǎn),光盤的應(yīng)用愈來愈廣泛。
光盤系統(tǒng)一般是由光學(xué)、電氣和機(jī)械部件組成。
從結(jié)構(gòu)上看光盤存儲(chǔ)器同磁盤存儲(chǔ)器基本相同,兩者均有存儲(chǔ)信息的
盤片、機(jī)械驅(qū)動(dòng)部件、定位部件和讀寫機(jī)構(gòu)。不同的是后者利用磁性
原理存儲(chǔ)信息,利用磁頭存取信息;而前者是利用光學(xué)原理存儲(chǔ)信息
并用光學(xué)讀寫頭來存取這些信息。
光盤本身是靠盤面上一些能夠影響光線反射的表面特征存儲(chǔ)信息,例
如現(xiàn)在常用的只讀光盤(CD-ROM)上利用光盤表面的凹凸不平表示
“0”和“1"。以CD-ROM為例,讀取數(shù)據(jù)時(shí),由機(jī)械驅(qū)動(dòng)部件和定位
部件負(fù)責(zé)確定讀取的位置。激光器發(fā)出激光經(jīng)光學(xué)線路至聚焦透鏡射
向光盤表面,表面的凹凸不平造成反射光的變化,利用數(shù)據(jù)光檢測器
將這些變化轉(zhuǎn)換為數(shù)據(jù)“0”和“1”的電信號(hào)傳輸?shù)綌?shù)據(jù)輸出端,整個(gè)讀
取工作完成。其他類型光盤的寫入過程大體與此相同,唯一的差別是
數(shù)據(jù)自數(shù)據(jù)輸入端傳來。
一般將光盤存儲(chǔ)器分為只讀式(readonly)、一次寫入式(writeonce)
和可擦式(erasable)或可逆式(reversible)三種。只讀式光盤利用
材料表面的凹凸不平的特征記錄信息,在出廠前由生產(chǎn)廠家將有關(guān)信
息存放到光盤上。對于一次寫入式光盤,用戶可以利用會(huì)聚的激光束
在光盤表面照射使材料發(fā)生永久性變化而記錄信息。這種光盤現(xiàn)已普
遍用于多媒體系統(tǒng)??刹潦焦獗P利用激光在磁性材料上或相變材料上
實(shí)現(xiàn)信息的存儲(chǔ)和擦除。
光盤存儲(chǔ)器的記錄密度高,存儲(chǔ)容量大,一片5.25英寸大小的一次
寫入式光盤可以存儲(chǔ)680MB的信息,其容量遠(yuǎn)遠(yuǎn)大于外形同樣大小
的軟磁盤。光盤信息的保存時(shí)間也比磁盤的長。目前影響光盤普遍應(yīng)
用的主要原因是光盤存儲(chǔ)器的讀寫速度慢和光盤驅(qū)動(dòng)器的成本高。隨
著技術(shù)的進(jìn)步,以上問題是可以解決的。因此光盤存儲(chǔ)器有廣泛的應(yīng)
用前景。
5.虛擬存儲(chǔ)的概念、作用和工作過程
(1)虛擬存儲(chǔ)的概念、作用
一般將由主存和部分輔存組成的存儲(chǔ)結(jié)構(gòu)稱為虛擬存儲(chǔ)器,其對應(yīng)的
存儲(chǔ)地址稱為虛擬地址(邏輯地址),其對應(yīng)的存儲(chǔ)容量稱為虛擬容
量。將實(shí)際主存地址稱為物理地址或?qū)嵉刂?,主存的容量稱為實(shí)存容
量。
當(dāng)用虛擬地址訪問主存時(shí);系統(tǒng)首先查看所用虛擬地址對應(yīng)的單元內(nèi)
容是否已裝入主存。如果在主存中,可以通過輔助軟、硬件自動(dòng)把虛
擬地址變成主存的物理地址后,對主存相應(yīng)單元進(jìn)行訪問。如果不在
主存中,通過輔助的軟、硬件將虛擬地址對應(yīng)的內(nèi)容調(diào)入主存中,然
后再進(jìn)行訪問。因此,對虛擬存儲(chǔ)器的每次訪問都必須進(jìn)行虛實(shí)地址
的變換。
虛擬存儲(chǔ)器的作用是擴(kuò)大整個(gè)主存的容量,允許在程序中使用比主存
容量大得多的虛擬存儲(chǔ)器。同時(shí)可以減輕人們編程中對程度進(jìn)行分塊
的苦惱,從而提高軟件開發(fā)的效率。虛擬存儲(chǔ)器是實(shí)現(xiàn)利用小容量的
主存運(yùn)行大規(guī)模的程序的一種有效的辦法。盡管實(shí)現(xiàn)虛擬存儲(chǔ)要增加
一些額外的投資和軟件開銷,虛擬存儲(chǔ)技術(shù)在各種計(jì)算機(jī)系統(tǒng)中仍得
到了廣泛的應(yīng)用。
虛擬存儲(chǔ)器必須建立在王存-輔存結(jié)構(gòu)上,但一■般的王存-輔存系統(tǒng)并
不一定是虛擬存儲(chǔ)器,虛擬存儲(chǔ)器與一般的主存-輔存系統(tǒng)的本質(zhì)區(qū)
別是:
①虛擬存儲(chǔ)器允許人們使用比主存容量大得多的地址空間來訪問主
存,非虛擬存儲(chǔ)器最多只允許人們使用主存的整個(gè)空間,一般只允許
使用操作系統(tǒng)分配的主存中的某一部分空間。
②虛擬存儲(chǔ)器每次訪問主存時(shí)必須進(jìn)行虛、實(shí)地址的變換,而非虛擬
存儲(chǔ)系統(tǒng)則不必變換。
(2)虛擬存儲(chǔ)的工作原理
虛擬存儲(chǔ)技術(shù),實(shí)際上是將編寫程序時(shí)所用的虛擬地址(邏輯地址)
轉(zhuǎn)換成較小的物理地址。在程序運(yùn)行時(shí)隨時(shí)進(jìn)行這種變換。為了便于
主存與輔存之間信息的交換,虛擬存儲(chǔ)器一般采用二維或三維的復(fù)合
地址格式。采用二維地址格式時(shí)一,將整個(gè)存儲(chǔ)器劃分為若干頁(或段),
每個(gè)頁(或段)又包括若干存儲(chǔ)單元。采用三維地址格式時(shí)將整個(gè)存
儲(chǔ)空間分為若干段,每段分為若干頁,每頁又包括若干存儲(chǔ)單元。根
據(jù)地址格式不同,虛擬存儲(chǔ)器分為:頁式虛擬存儲(chǔ)器、段式虛擬存儲(chǔ)
器和段頁式虛擬存儲(chǔ)器。
在虛擬存儲(chǔ)器中邏輯地址與物理地址之間的對應(yīng)稱為地址映象。通常
有三種地址映象的方式:全相聯(lián)映象、直接映象和組相聯(lián)映象。①全
相聯(lián)映象
任一邏輯頁能映象到實(shí)際主存的任意頁面位置稱為全相聯(lián)映象,通常
利用頁表法進(jìn)行地址間的變換。
②直接映象
每個(gè)邏輯頁只能映象到一個(gè)特定頁面的方式稱為直接映象。如主存實(shí)
際有2P頁,虛擬存儲(chǔ)器的邏輯空間有2P頁,則將邏輯空間按物理
空間大小分為2P-P塊,塊內(nèi)各頁只能映象到主存的相應(yīng)頁中。即所
有各塊的第0頁對應(yīng)主存的第0頁,各塊的第n頁對應(yīng)主存的第n頁。
若程序需要輪流使用第i塊和第j塊的第m頁,只能將兩頁交替在主
存和輔存之間調(diào)入調(diào)出,形成存儲(chǔ)頁面的“抖動(dòng)③組相聯(lián)映象
組相聯(lián)映象方法是先按直接映象方法將虛擬存儲(chǔ)空間(邏輯空間)分
成若干塊,在主存和邏輯空間中的各塊內(nèi)劃分為若干組,每個(gè)組間按
直接映象方法控制??梢赃@樣理解,如果將組相聯(lián)映象方法中的組按
直接映象方法的頁來看待,組相聯(lián)方法與直接映象方法相同,邏輯空
間的各組內(nèi)的頁只能與對應(yīng)的物理空間組相聯(lián)。但在組內(nèi)各頁與物理
空間的頁面之間采用全相聯(lián)映象方法處理。因此,可以認(rèn)為組相聯(lián)映
象是全相聯(lián)映象和直接映象方法的結(jié)合。
6.緩沖技術(shù)使用
緩沖技術(shù)就是為緩解慢速設(shè)備對整個(gè)計(jì)算機(jī)系統(tǒng)速度的影響,在計(jì)算
機(jī)的某些部件中劃定一塊區(qū)域,模擬慢速設(shè)備的操作,將對慢速設(shè)備
的操作先存放在此區(qū)域中,其他部件完成這一操作后可以繼續(xù)其他工
作,而慢速設(shè)備可以用自己的速度逐漸完成相應(yīng)的操作。做為中間緩
沖的區(qū)域稱為緩沖區(qū),相應(yīng)的技術(shù)稱為緩沖技術(shù)。
在整個(gè)存儲(chǔ)體系的組織中,緩沖技術(shù)成為解決容量與速度之間矛盾的
主要方法。實(shí)際上在計(jì)算機(jī)系統(tǒng)中緩沖技術(shù)解決了許多難題,促進(jìn)了
計(jì)算機(jī)系統(tǒng)的發(fā)展。在存儲(chǔ)體系中,緩沖技術(shù)主要體現(xiàn)在Cache的應(yīng)
用和磁盤緩沖的使用。
(1)Cache的原理和作用
Cache的工作原理基于對大量典型程序運(yùn)行實(shí)例的分析。分析結(jié)果表
明,在較短的時(shí)間間隔內(nèi),由程序產(chǎn)生的地址往往集中在存儲(chǔ)器邏輯
地址空間很小的范圍內(nèi)。指令地址的分布又是連續(xù)的,加上循環(huán)程序
和子程序段的重復(fù)執(zhí)行,對這些地址的訪問自然具有時(shí)間上集中分布
的傾向。這種對局部范圍的存儲(chǔ)器地址頻繁訪問,而對此范圍外的地
址訪問甚少的現(xiàn)象稱為程序訪問的局部性。程序訪問的局部性為
Cache的引入提供了理論依據(jù)。
Cache是緩沖技術(shù)在存儲(chǔ)體系中的一個(gè)具體應(yīng)用。Cache處于主存與
CPU之間,負(fù)責(zé)解決主存與CPU之間速度的協(xié)調(diào)問題。Cache中存
放著主存的一部分副本(主存中的部分內(nèi)容),當(dāng)存儲(chǔ)器接到有關(guān)讀
取指令時(shí),先在Cache中查找此信息是否存在,若有則不經(jīng)主存直接
從Cache中取出;否則直接從主存中取出,同時(shí)寫入Cache,以備再次
使用。當(dāng)向存儲(chǔ)器寫入內(nèi)容時(shí),由輔助硬件采用各種方法保證主存中
的內(nèi)容同Cache中的內(nèi)容保持一致。
為保證寫入時(shí)兩者內(nèi)容一致的方法有:①將內(nèi)容同時(shí)寫入主存和
Cache;②數(shù)據(jù)僅寫入主存,若Cache中有此內(nèi)容則將其釋放;③數(shù)據(jù)只
寫入Cache,在規(guī)定的時(shí)候?qū)⑿薷倪^的Cache的內(nèi)容寫入主存。
Cache的主要特點(diǎn)是:①存取速度快,一般Cache的速度完全可以跟上
CPU的運(yùn)算速度;②存儲(chǔ)量小,由于Cache的速度快,其價(jià)格也相當(dāng)
昂貴,因此為保證整個(gè)存儲(chǔ)器的性能價(jià)格比,一般采用適當(dāng)容量的
Cache,其容量小于主存。
(2)磁盤緩沖技術(shù)
磁盤緩沖技術(shù)的目的是減少由于主、輔存之間的速度差異對計(jì)算機(jī)總
體性能的影響。磁盤是存儲(chǔ)系統(tǒng)中的輔助部分,其主要作用是用來存
儲(chǔ)不常用的數(shù)據(jù)和程序等信息,減輕對主存容量的需求壓力。由于磁
盤中的信息不能被計(jì)算機(jī)的其他部件直接調(diào)用,因此在信息的輸入/
輸出過程中必須在主存中開辟一定的空單位,作為與磁盤上信息交換
的中間過渡區(qū)域稱為磁盤緩沖區(qū)。如從鍵盤(輸入設(shè)備)向磁盤中輸
入一個(gè)信息,此信息必須通過總線先輸入到主存中的特定區(qū)域中,通
過程序控制將信息存放到主存中對應(yīng)于磁盤輸入/輸出的一個(gè)特定區(qū)
域內(nèi),然后將此信息轉(zhuǎn)存到磁盤上。一般將主存中對應(yīng)于磁盤的特定
區(qū)域稱為磁盤緩沖區(qū)。
為了提高磁盤的讀寫速度,操作系統(tǒng)一般根據(jù)程序運(yùn)行的需要設(shè)置磁
盤緩沖區(qū)的大小及輸入/輸出操作。同Cache技術(shù)相類似,不立即覆
蓋磁盤緩沖區(qū)的內(nèi)容,當(dāng)系統(tǒng)需要繼續(xù)讀入磁盤中的信息時(shí)、首先檢
查磁盤緩沖區(qū)中是否有所需要的信息,若有則直接使用,否則根據(jù)信
息的位置將磁盤上特定扇區(qū)的內(nèi)容調(diào)入磁盤緩沖區(qū)后再加以使用。這
樣可以提高磁盤的信息讀取速度,減少因磁盤存取速度慢對系統(tǒng)整體
性能的影響。
九、輸入與輸出系統(tǒng)1.輸入輸出系統(tǒng)的發(fā)展
輸入輸出系統(tǒng)的發(fā)展大致分為五種方式,即程序控制的輸入輸出方
式、中斷方式,DMA方式、輸入/輸出通道方式和I/O處理機(jī)等五種
方式。
程序查詢方式和程序中斷方式適用于數(shù)據(jù)傳輸率比較低的外部設(shè)備。
而DMA方式、通道方式和I/O處理機(jī)方式適用于數(shù)據(jù)傳輸率比較高
的設(shè)備。目前,小型機(jī)和微型機(jī)大都采用程序查詢方式、程序中斷方
式和DMA方式。通道方式、I/O處理機(jī)方式大都用在中、大型計(jì)算
機(jī)中。為了介紹方便,我們把通道方式和I/O處理機(jī)方式視為一種方
式。
2.程序查詢方式
程序查詢方式又叫程序控制I/O方式。在這種方式中,數(shù)據(jù)在CPU
和外部設(shè)備之間的傳送完全靠計(jì)算機(jī)程序控制,是在CPU主動(dòng)控制
下進(jìn)行的,當(dāng)輸入/輸出時(shí)一,CPU暫停執(zhí)行主程序,轉(zhuǎn)去執(zhí)行輸入/輸
出的服務(wù)程序,根據(jù)服務(wù)程序中的I/O指令進(jìn)行數(shù)據(jù)傳送。
這是一種最簡單、最經(jīng)濟(jì)的輸入/輸出方式。它只需很少的硬件,因
此兒乎所有的機(jī)器都具有程序查詢方式。特別是在微、小型機(jī)中,常
用程序查詢方式來實(shí)現(xiàn)低速設(shè)備的輸入輸出管理。
3.程序中斷方式
“中斷”概念的提出,是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)中的一個(gè)重大變革。在程
序中斷方式中,某一外設(shè)的數(shù)據(jù)準(zhǔn)備就緒后,它“主動(dòng)”向CPU發(fā)請
求中斷的信號(hào),請求CPU暫時(shí)中斷目前的工作而進(jìn)行數(shù)據(jù)交換。當(dāng)
CPU響應(yīng)這個(gè)中斷時(shí),便暫停運(yùn)行主程序,并自動(dòng)轉(zhuǎn)移到該設(shè)備的
中斷服務(wù)程序。當(dāng)中斷服務(wù)程序結(jié)束以后,CPU又回到原來的主程
序。其原理和調(diào)用子程序相仿,不過,這里要求轉(zhuǎn)移到中斷服務(wù)子程
序的請求是由外部設(shè)備發(fā)出的。中斷方式特別適合于隨機(jī)出現(xiàn)的服
務(wù)。
4.DMA方式
(1)DMA方式的基本概念
直接訪問內(nèi)存DMA方式,是一種完全由硬件執(zhí)行I/O交換的工作方
式。在這種方式中,DMA控制器從CPU中完全接管對總線的控制,
數(shù)據(jù)交換不經(jīng)過CPU,而直接在內(nèi)存儲(chǔ)器和I/O設(shè)備之間進(jìn)行。DMA
方式一般用于高速地傳送成組的數(shù)據(jù)。DMA控制器將向內(nèi)存發(fā)出地
址和控制信號(hào)、修改地址、對傳送的字的個(gè)數(shù)計(jì)數(shù),并且以中斷方式
向CPU報(bào)告?zhèn)魉筒僮鞯慕Y(jié)束。
DMA方式的主要優(yōu)點(diǎn)是速度快。由于CPU根本不參加傳送操作,因
此就省去了CPU取指令、取數(shù)、送數(shù)等操作。在數(shù)據(jù)傳送過程中,
也不象中斷方式那樣,要進(jìn)行保存現(xiàn)場、恢復(fù)現(xiàn)場之類的工作。內(nèi)存
地址修改、傳送字個(gè)數(shù)的計(jì)數(shù)等,也不是由軟件實(shí)現(xiàn),而是用硬件線
路直接實(shí)現(xiàn)的。
DMA的種類很多,但各種DMA至少能執(zhí)行以下一些基本操作:①從
外部設(shè)備發(fā)出DMA請求;
②CPU響應(yīng)請求,把CPU工作改成DMA操作方式,DMA控制器從
CPU接管總線的控制;③由DMA控制器對內(nèi)存尋址,即決定數(shù)據(jù)傳
送的內(nèi)存單元首地址及數(shù)據(jù)傳送個(gè)數(shù)的計(jì)數(shù),并執(zhí)行數(shù)據(jù)傳送的操作;
④向CPU報(bào)告DMA操作的結(jié)束。
(2)DMA技術(shù)的出現(xiàn),使得外部設(shè)備可以通過DMA控制器直接訪
問內(nèi)存,與此同時(shí),CPU可以繼續(xù)執(zhí)行程序。那么DMA控制器與
CPU怎樣分時(shí)使用內(nèi)存呢?通常采用以下三種方法:①停止CPU訪問;
②周期挪用;
③DMA與CPU交替訪問。
(3)基本的DMA控制器
一個(gè)DMA控制器實(shí)際上是采用DMA方式的外部設(shè)備與系統(tǒng)總線之
間的接口電路。這個(gè)接口電路是在中斷接口的基礎(chǔ)上再加DMA機(jī)構(gòu)
組成。習(xí)慣上將DMA方式的接口電路稱為DMA控制器。
①內(nèi)存地址計(jì)數(shù)器
用于存放內(nèi)存中要交換的數(shù)據(jù)地址。在DMA傳送前,需通過程序?qū)?/p>
數(shù)據(jù)在內(nèi)存中的起始位置(首地址)送到內(nèi)存地址計(jì)數(shù)器。而當(dāng)DMA
傳送時(shí),每交換一次數(shù)據(jù),將地址計(jì)數(shù)器加“1”,從而以增量方式給
出內(nèi)存中要交換的一批數(shù)據(jù)的地址。
②字計(jì)數(shù)器
用于記錄傳送數(shù)據(jù)塊的長度(多少字?jǐn)?shù))。其內(nèi)容也是在數(shù)據(jù)傳送之
前由程序預(yù)置,交換的字?jǐn)?shù)通常以補(bǔ)碼形式表示。在DMA傳送時(shí),
每傳送一個(gè)字,字計(jì)數(shù)器就加“1”,當(dāng)計(jì)數(shù)器溢出即最高位產(chǎn)生進(jìn)位
時(shí)一,表示這批數(shù)據(jù)傳送完畢,于是引起DMA控制器向CPU發(fā)出中
斷信號(hào)。
③數(shù)據(jù)緩沖寄存器
用于暫存每次傳送的數(shù)據(jù)(一個(gè)字)。當(dāng)輸入時(shí),由設(shè)備(如磁盤)
送往數(shù)據(jù)緩沖寄存器,再由緩沖寄存器通過數(shù)據(jù)總線送到內(nèi)存。反之,
輸出時(shí),由內(nèi)存通過數(shù)據(jù)總線送到數(shù)據(jù)緩沖寄存器,然后再送到設(shè)備。
④“DMA請求”標(biāo)志
每當(dāng)設(shè)備準(zhǔn)備好一個(gè)數(shù)據(jù)字后給出一個(gè)控制信號(hào),使“DMA”請求標(biāo)
志置
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于注意力機(jī)制預(yù)測
- 化工企業(yè)冬季風(fēng)險(xiǎn)防控與異常工況處置實(shí)踐-CCSA
- 2026年海外宏觀展望:美國AI投資拉動(dòng)內(nèi)需貨幣財(cái)政雙寬托底
- DB50∕T 1903-2025 地理標(biāo)志產(chǎn)品 墊江白柚
- 辦公空間轉(zhuǎn)讓合同協(xié)議
- 2025年河北省公需課學(xué)習(xí)-國家基本公共服務(wù)標(biāo)準(zhǔn)1758
- 2025 八年級(jí)數(shù)學(xué)上冊分式通分技巧總結(jié)課件
- 申請續(xù)租門面合同范本
- 蛋殼房子托管合同范本
- 擴(kuò)大門市合同范本
- 2025年社保常識(shí)測試題庫及解答
- 2025年鐵路運(yùn)輸合同書
- 消防設(shè)施培訓(xùn)課件
- 疤痕子宮破裂護(hù)理查房
- 腎內(nèi)科常見并發(fā)癥的觀察與應(yīng)急處理
- 《馬克思主義與社會(huì)科學(xué)方法論題庫》復(fù)習(xí)資料
- 西游記第64回課件
- 2025 年大學(xué)體育教育(田徑教學(xué))試題及答案
- 四川省金太陽2025-2026學(xué)年高三上學(xué)期11月聯(lián)考英語試卷(含答案詳解)
- 2025年全國鄉(xiāng)村醫(yī)生考試復(fù)習(xí)題庫及答案
- 惡性淋巴瘤教學(xué)課件
評論
0/150
提交評論