版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)組成原理
課程簡(jiǎn)介
計(jì)算機(jī)組成原理是講述計(jì)算機(jī)的一般結(jié)構(gòu)、組成、原理的課程,本課程的基礎(chǔ)課是數(shù)字電路、離散數(shù)
學(xué)等,后繼課程有計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)、微機(jī)原理等。
選用教材:
白中英主編,《計(jì)算機(jī)組成原理(第三版)》,科學(xué)出版社
第一章計(jì)算機(jī)系統(tǒng)概論
學(xué)習(xí)目標(biāo)
?計(jì)算機(jī)硬件、軟件的基本概念
?計(jì)算機(jī)系統(tǒng)的基本組成;
?計(jì)算機(jī)的工作過(guò)程;
?計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)。
本章需掌握的主要內(nèi)容:
1.計(jì)算機(jī)的發(fā)展、分類、特點(diǎn)與應(yīng)用;
2.計(jì)算機(jī)硬件和軟件的基本概念;
3.計(jì)算機(jī)硬件系統(tǒng)的組織,各部分的功能及其組成框圖;
4.計(jì)算機(jī)的工作過(guò)程,即執(zhí)行指令的過(guò)程;
5.馮.諾依曼型計(jì)算機(jī)的設(shè)計(jì)思想;
6.計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)。
對(duì)計(jì)算機(jī)有一個(gè)總體的概念,以便展開(kāi)后續(xù)各章內(nèi)容。
1.1計(jì)算機(jī)的分類和應(yīng)用
1.1.1計(jì)算機(jī)的分類
計(jì)算機(jī)分類:
模擬:處理在時(shí)間和數(shù)值上連續(xù)的量
數(shù)字:處理離散的量
數(shù)字計(jì)算機(jī)分類:
專用計(jì)算機(jī):如工控機(jī)、DSP、IOP等
通用計(jì)算機(jī):GPP
通用機(jī)分類:
巨型機(jī)(Super-Computer)、大型機(jī)(Mainframe)、中型機(jī)(Medium-sizeComputer)、小型機(jī)
(minicomputer)、微型機(jī)(microcomputer)、單片機(jī)(Single-ChipComputer)
氐
體
積高
功
能
數(shù)據(jù)
令
指微型機(jī)易
格
價(jià)性
小型機(jī)
大型機(jī)
高V巨型機(jī)
1.1.2計(jì)算機(jī)的應(yīng)用
?科學(xué)計(jì)算:傳統(tǒng)方式:工作量大、人工處理慢
?自動(dòng)控制:數(shù)控機(jī)床、流水線控制
?測(cè)量和測(cè)試:提高精度、在惡劣條件下的測(cè)量
?信息處理:
,教育和衛(wèi)生:計(jì)算機(jī)輔助教學(xué)(CAI)>多媒體教室、CT(Computerizedtomography)
?家用電器:
?人工智能
1.2計(jì)算機(jī)的硬件
1.2.1數(shù)字計(jì)算機(jī)的硬件組成
概念:存儲(chǔ)單元、地址、存儲(chǔ)容量、外存儲(chǔ)器、內(nèi)存儲(chǔ)器、指令、程序、指令的組成、存儲(chǔ)程序、程序控
制、指令系統(tǒng)、指令周期、執(zhí)行周期、CPU、主機(jī)、數(shù)據(jù)字、指令字、數(shù)據(jù)流、指令流、適配器。
馮?諾依曼體系結(jié)構(gòu):
(1)采用二進(jìn)制形式表示數(shù)據(jù)和指令
數(shù)據(jù)和指令在代碼的外形上并無(wú)區(qū)別.都是由0和I組成的代碼序列,只是各自約定的含義不
同而已。采用二進(jìn)制、使信息數(shù)字化容易實(shí)現(xiàn),可以用二值邏輯工具進(jìn)行處理。程序信息本身也可
以作為被處理的對(duì)象,進(jìn)行加工處理,例如對(duì)照程序進(jìn)行編譯,就是將源程序當(dāng)作被加工處理的對(duì)
象。
(2)采用存儲(chǔ)程序方式
這是諾依曼思想的核心內(nèi)容。如前所述,它意味著事先編制程序,事先將程序(包含指令和數(shù)
據(jù))存入主存儲(chǔ)器中,計(jì)算機(jī)在運(yùn)行程序時(shí)就能自動(dòng)地、連續(xù)地從存儲(chǔ)器中依次取出指令且執(zhí)行。
這是計(jì)算機(jī)能高速自動(dòng)運(yùn)行的基礎(chǔ)。計(jì)算機(jī)的工作體現(xiàn)為執(zhí)行程序,計(jì)算機(jī)功能的擴(kuò)展在很大程度
上體現(xiàn)為所存儲(chǔ)程序的擴(kuò)展。計(jì)算機(jī)的許多具體工作方式也是由此派生的。
(3)由運(yùn)算器、存儲(chǔ)器、控制器、輸入裝置和輸出裝置等五大部件組成計(jì)算機(jī)系統(tǒng),并規(guī)定了這五部分
的基本功能。
上述這些概念奠定了現(xiàn)代計(jì)算機(jī)的基本結(jié)構(gòu)思想,并開(kāi)創(chuàng)了程序設(shè)計(jì)的新時(shí)代。到目前
為止,絕大多數(shù)計(jì)算機(jī)仍沿用這一體制,稱為馮?諾依曼機(jī)體制。學(xué)習(xí)計(jì)算機(jī)工作原理也就
從馮?諾依曼概念入門(mén)。
一般的計(jì)算機(jī)結(jié)構(gòu)框圖(存儲(chǔ)器為中心)
輸入設(shè)備「二二存儲(chǔ)器輸出設(shè)備
二:,數(shù)據(jù)線
五大組成部分:運(yùn)算器、控制器、存儲(chǔ)器、輸入/輸出設(shè)備。
1.運(yùn)算器
?算術(shù)運(yùn)算和邏輯運(yùn)算
?在計(jì)算機(jī)中參與運(yùn)算的數(shù)是二進(jìn)制的
?運(yùn)算器的長(zhǎng)度一般是8、16、32或64位
2.存儲(chǔ)器
?存儲(chǔ)器
-存儲(chǔ)數(shù)據(jù)和程序
-容量(存儲(chǔ)單元、存儲(chǔ)單元地址、容量單位)
-分類內(nèi)存(ROM、RAM)、外存
-存儲(chǔ)器單位:
?210byte=IK
?210K=1M
?210M=1G
?210G=1T
存儲(chǔ)單元:在存儲(chǔ)器中保存一個(gè)數(shù)的16個(gè)觸發(fā)器,稱為一個(gè)存儲(chǔ)單元。
地址:存儲(chǔ)器是由許多存儲(chǔ)單元組成,每個(gè)存儲(chǔ)單元的編號(hào),稱為地址。
存儲(chǔ)容量:存儲(chǔ)器所有存儲(chǔ)單元的總數(shù)。通常用單位“KB、MB”表示,如64KB,128MB。存儲(chǔ)容量越大,
表示計(jì)算機(jī)記憶儲(chǔ)存的信息就越多。
外存儲(chǔ)器:計(jì)算機(jī)中又配備的存儲(chǔ)容量更大的磁盤(pán)存儲(chǔ)器、光盤(pán)存儲(chǔ)器等。相對(duì)而言,半導(dǎo)體存儲(chǔ)器稱
為內(nèi)存儲(chǔ)器,簡(jiǎn)稱內(nèi)存。
3、控制器
?控制器
-指令和程序(計(jì)算機(jī)工作原理)
指令的形式(操作和地址碼、存儲(chǔ)程序的概念、指令中程序和數(shù)據(jù)的存放、指令系統(tǒng))
-控制器的基本任務(wù):按照一定的順序一條接著一條取指令、指令譯碼、執(zhí)行指令。取指周
期和執(zhí)行周期
-指令流和數(shù)據(jù)流
指令:每一個(gè)基本操作就叫做一條指令,
程序:而解算某一問(wèn)題的一串指令序列,叫做該問(wèn)題的計(jì)算程序,簡(jiǎn)稱為程序。
指令形式:的內(nèi)容由兩部分組成,即操作的性質(zhì)和操作的地址。前者稱為操作碼,后者稱為地址碼。
操作碼地址碼
操作碼:指出指令所進(jìn)行的操作,如加、減、乘、除、取數(shù)、存數(shù)等等;
地址碼:表示參加運(yùn)算的數(shù)據(jù)應(yīng)從存儲(chǔ)器的哪個(gè)單元取,運(yùn)算的結(jié)果應(yīng)存到哪個(gè)單元。
取指周期:通常把取指令的一段時(shí)間叫做取指周期,
執(zhí)行周期:而把執(zhí)行指令的一段時(shí)間叫做執(zhí)行周期。
主機(jī):CPU和存儲(chǔ)器的合稱
4、適配器與I/O設(shè)備
?計(jì)算機(jī)的發(fā)展(系統(tǒng)結(jié)構(gòu)1.2doc)
手工模仿計(jì)算機(jī)工作(1)
&L5就族多俗和般推記戲以橫格紙」
行數(shù)解題步驟和數(shù)據(jù)說(shuō)明
1取數(shù)⑼安盤(pán)(9)表示第9行的數(shù)a,下同
2乘法(12)-〉算盤(pán)完成a*x,結(jié)果在算盤(pán)」
3完成ax?b,結(jié)果在算盤(pán)上
4減法(")->算盤(pán)完成y=結(jié)果在算盤(pán)」
5存數(shù)y->13把算盤(pán)上的y值記到第13行
6把算盤(pán)上的y值寫(xiě)出給人看
7運(yùn)算完畢,暫停
9a數(shù)據(jù)
10b數(shù)據(jù)
11c數(shù)據(jù)
12X數(shù)據(jù)
13y數(shù)據(jù)
手工模仿計(jì)算機(jī)工作(2)
骷住
?加法001
?減法010
?乘法011
?除法100
?取數(shù)101
?存數(shù)110
?打印111
?停機(jī)000
操作碼操作數(shù)
1.2.2計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的過(guò)去和未來(lái)
發(fā)展:電子管一晶體管一集成電路一大規(guī)模、超大規(guī)模集成電路
趨勢(shì):
?由于計(jì)算機(jī)網(wǎng)絡(luò)和分布式計(jì)算機(jī)系統(tǒng)能為信息處理提供廉價(jià)的服務(wù),因此計(jì)算機(jī)系統(tǒng)的進(jìn)一步發(fā)
展,“三網(wǎng)合一”,將進(jìn)入以通信為中心的體系結(jié)構(gòu)。
?計(jì)算機(jī)智能化將進(jìn)一步發(fā)展,各種知識(shí)庫(kù)及人工智能技術(shù)將進(jìn)?步普及,人們將用自然語(yǔ)言和機(jī)
器對(duì)話。計(jì)算機(jī)從數(shù)值計(jì)算為主過(guò)渡到知識(shí)推理為主,從而使計(jì)算機(jī)進(jìn)入知識(shí)處理階段。
?隨著大規(guī)模集成電路的發(fā)展,不僅用多處理機(jī)技術(shù)來(lái)實(shí)現(xiàn)大型機(jī)系統(tǒng)功能,而且會(huì)出現(xiàn)計(jì)算機(jī)的
動(dòng)態(tài)結(jié)構(gòu),即所謂模塊化計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)。
?多媒體技術(shù)將有重大突破和發(fā)展,并在微處理機(jī)、計(jì)算機(jī)網(wǎng)絡(luò)與通信等方面引起一次巨大變革。
1.3計(jì)算機(jī)的軟件
計(jì)算機(jī)硬件是載體,軟件是靈魂。
1.3.1軟件的組成與分類
分類:系統(tǒng)程序、應(yīng)用程序
1.3.2軟件的發(fā)展演變
手編程序(目的程序)一匯編程序一算法語(yǔ)言(高級(jí)語(yǔ)言)
高級(jí)語(yǔ)言與機(jī)器語(yǔ)言的轉(zhuǎn)換:編譯系統(tǒng)、解釋系統(tǒng)
操作系統(tǒng)、數(shù)據(jù)庫(kù)
1.4計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
1.4.1多級(jí)組成的計(jì)算機(jī)系統(tǒng)
P16圖1.6五個(gè)級(jí)別:第一級(jí)微程序設(shè)計(jì)級(jí)、第二級(jí)是一般機(jī)器級(jí)、第三級(jí)是操作系統(tǒng)級(jí)、第四級(jí)是
匯編語(yǔ)言級(jí)、第五級(jí)是高級(jí)語(yǔ)言級(jí)。
1.4.2軟件與硬件的邏輯等價(jià)性
補(bǔ)充:計(jì)算機(jī)的性能指標(biāo)
?基本字長(zhǎng)
基本字長(zhǎng)是指參與運(yùn)算的數(shù)的基本位數(shù),它標(biāo)志著計(jì)算精度。位數(shù)越多,精度越高,但硬件成本
也越高,因?yàn)樗鼪Q定著寄存器、運(yùn)算部件、數(shù)據(jù)總線等的位數(shù)。
?主存容量
主存儲(chǔ)器是CPU可以直接訪問(wèn)的存儲(chǔ)器,需要執(zhí)行的程序與需要處理的數(shù)據(jù)就放在主存之中。主
存容量大則可以運(yùn)行比較復(fù)雜的程序,并可存入大量信息,可利用更完善的軟件支撐環(huán)境。所以,
計(jì)算機(jī)處理能力的大小在很大程度上取決于主存容量的大小。
?外存容量
外存容量一般是指計(jì)算機(jī)系統(tǒng)中聯(lián)機(jī)運(yùn)行的外存儲(chǔ)器容量。由于操作系統(tǒng)、編譯程序及眾多的軟
件資源往往存放在外存之中,需用時(shí)再調(diào)入主存運(yùn)行。在批處理、多道程序方式中,也常將各用
戶待執(zhí)行的程序、數(shù)據(jù)以作業(yè)形式先放在外存中,再陸續(xù)調(diào)入主存運(yùn)行。所以,聯(lián)機(jī)外存容量也
是一項(xiàng)重要指標(biāo),一般以字節(jié)數(shù)表示。
?運(yùn)算速度
同一臺(tái)計(jì)算機(jī),執(zhí)行不同的運(yùn)算所需時(shí)間可能不同,因而對(duì)運(yùn)算速度的描述常采用不同方法。常
用的有CPU時(shí)鐘頻率、每秒平均執(zhí)行指令數(shù)(ips)、單獨(dú)注明時(shí)間等。
?所配置的外圍設(shè)備及其性能指標(biāo)
外圍設(shè)備配置也是影響整個(gè)系統(tǒng)性能的重要因素,所以在系統(tǒng)技術(shù)說(shuō)明中常給出允許配置情況與
實(shí)際配置情況。
?系統(tǒng)軟件配置情況
作為一種硬件系統(tǒng),允許配置的系統(tǒng)軟件原則上是可以不斷擴(kuò)充的,但實(shí)際購(gòu)買(mǎi)的某個(gè)系統(tǒng)究竟
已配置哪些軟件,則表明它的當(dāng)前功能。
第二章運(yùn)算方法和運(yùn)算器
本章摘要
?數(shù)值數(shù)據(jù)和非數(shù)值數(shù)據(jù)在計(jì)算機(jī)中的表示方法;
?定點(diǎn)數(shù)加、減、乘、除運(yùn)算方法;
?浮點(diǎn)數(shù)加、減、乘、除運(yùn)算方法;
?定點(diǎn)、浮點(diǎn)運(yùn)算器的組成及工作原理。
本章需掌握的主要內(nèi)容:
1.掌握定點(diǎn)數(shù)和浮點(diǎn)數(shù)以及原碼、反碼、補(bǔ)碼的表示方法;
2.掌握補(bǔ)碼加減運(yùn)算的方法,溢出的概念與檢測(cè)方法,基本的二進(jìn)制加法。
3.理解定點(diǎn)乘法運(yùn)算和除法運(yùn)算的工作原理;
4.理解ALU的功能、設(shè)計(jì)方法和工作原理;
5.掌握基本的浮點(diǎn)運(yùn)算方法,了解浮點(diǎn)運(yùn)算器的組成和原理;
6.理解內(nèi)部總線的概念、分類及特點(diǎn);
2.1數(shù)據(jù)與文字的表示方法
2.1.1數(shù)據(jù)格式
在選擇計(jì)算機(jī)的數(shù)的表示方式時(shí),應(yīng)當(dāng)全面考慮以下幾個(gè)因素:
?要表示的數(shù)的類型(小數(shù)、整數(shù)、實(shí)數(shù)和復(fù)數(shù)):決定表示方式
?可能遇到的數(shù)值范圍:確定存儲(chǔ)、處理能力
?數(shù)值精確度:處理能力相關(guān)
?數(shù)據(jù)存儲(chǔ)和處理所需要的硬件代價(jià):造價(jià)高低
兩種常用格式:
?定點(diǎn)格式:定點(diǎn)格式容許的數(shù)值范圍有限,但要求的處理硬件比較簡(jiǎn)單;
(1)定點(diǎn)純小數(shù)
小數(shù)點(diǎn)固定于符號(hào)位之后
不需專門(mén)存放位置
表示數(shù)的范圍是OW|xW1-2-
(最小數(shù)、最大數(shù)、最接近0的正數(shù)、最接近0的負(fù)數(shù))
x=0.00...0x=0正0和負(fù)0都是0
x=l.00...0
X=0.11...1x=l—2f最大
X=0.00...01x=2-"最接近0的正數(shù)
X=1.00...01x=-2-n最接近0的負(fù)數(shù)
X二x=—(1—2f)最小
表示數(shù)的范圍是0Wlx|W2」l
?最小數(shù)、最大數(shù)、最接近0的正數(shù)、最接近0的負(fù)數(shù)呢
?浮點(diǎn)格式:容許的數(shù)值范圍很大,但要求的處理硬件比較復(fù)雜。
(1)定點(diǎn)數(shù)表示法
定點(diǎn)指小數(shù)點(diǎn)的位置固定,為了處理方便,?般分為定點(diǎn)純整數(shù)和純小數(shù)。
(2)浮點(diǎn)數(shù)表示法(小數(shù)點(diǎn)位置隨階碼不同而浮動(dòng))
浮點(diǎn)表示法,即小數(shù)點(diǎn)的位置是浮動(dòng)的。其思想來(lái)源于科學(xué)計(jì)數(shù)法。
加:尾數(shù),是一個(gè)純小數(shù)。
e:比例因子的指數(shù),稱為浮點(diǎn)數(shù)的指數(shù),是一個(gè)整數(shù)。
比例因子的基數(shù),對(duì)于二進(jìn)制數(shù)值的機(jī)器是一個(gè)常數(shù),一般規(guī)定7?為2,8或16。
一個(gè)機(jī)器浮點(diǎn)數(shù)由階碼和尾數(shù)及其符號(hào)位組成(尾數(shù):用定點(diǎn)小數(shù)表示,給出有效數(shù)字的位數(shù)決定了
浮點(diǎn)數(shù)的表示精度;階碼:用整數(shù)形式表示,指明小數(shù)點(diǎn)在數(shù)據(jù)中的位置,決定了浮點(diǎn)數(shù)的表示范圍。):
EsElE2MsMlM2...M.n.
階符<階碼-——>1數(shù)符<尾數(shù)一一>
為便于軟件移植,按照IEEE754標(biāo)準(zhǔn),32位浮點(diǎn)數(shù)和64位浮點(diǎn)數(shù)的標(biāo)準(zhǔn)格式為
32位的浮點(diǎn)數(shù)中,S:浮點(diǎn)數(shù)的符號(hào)位,1位,0表示正數(shù),1表示負(fù)數(shù)。M:尾數(shù),23位,用小數(shù)
表示,小數(shù)點(diǎn)放在尾數(shù)域的最前面。E:階碼(8位),階符采用隱含方式,即采用移碼方式來(lái)表示正負(fù)指
數(shù)。移碼方法對(duì)兩個(gè)指數(shù)大小的比較和對(duì)階操作都比較方便,因?yàn)殡A碼域值大者其指數(shù)值也大。采用這種
方式時(shí),將浮點(diǎn)數(shù)的指數(shù)真值e變成階碼E時(shí),應(yīng)將指數(shù)e加上一個(gè)固定的偏移值127(01111111),即
E=e+127.
例1:若浮點(diǎn)數(shù)x的754標(biāo)準(zhǔn)存儲(chǔ)格式為(4136080)16,求其浮點(diǎn)數(shù)的十進(jìn)制數(shù)值。
[解:]
將十六進(jìn)制數(shù)展開(kāi)后,可得二進(jìn)制數(shù)格式為
0too00010011QUO0000000000000000
S階媽(8位)尾數(shù)(23位)
指數(shù)e=階碼一127=10000010-01111111=00000011=(3)w
包括隱藏位1的尾數(shù)1.41.oil01100000000000000000=1.011011
于是有
*=(一D0Xl.J/X2'
=+(1.011011)X23=+1011.011=(11.375)w
例2:將(20.59375)轉(zhuǎn)換成754標(biāo)準(zhǔn)的32位浮點(diǎn)數(shù)的二進(jìn)制存儲(chǔ)格式。
[解:]
首先分別將整數(shù)和分?jǐn)?shù)部分轉(zhuǎn)換成二進(jìn)制數(shù):
20.59375=10100.10011
然后移動(dòng)小數(shù)點(diǎn),使其在第1,2位之間
10100.10011=1.010010011X2'e=4
于是得到:
s=o,44+127=131,.1^=010010011
最后得到32位浮點(diǎn)數(shù)的二進(jìn)制存儲(chǔ)格式為:
01000001101001001100000000000000=(41A4C000)16
浮點(diǎn)數(shù)的規(guī)格化:主要解決同一浮點(diǎn)數(shù)表示形式的不唯一性問(wèn)題。規(guī)定,否則尾數(shù)要進(jìn)行左移或右移。
機(jī)器零的概念:當(dāng)一個(gè)浮點(diǎn)數(shù)的尾數(shù)為0,不論其階碼為何數(shù),或當(dāng)階碼值遇到比它能表示的最小值
還小時(shí),不論其尾數(shù)為何值,計(jì)算機(jī)把該浮點(diǎn)數(shù)看成零值,稱為機(jī)器零。
3)十進(jìn)制數(shù)串的表示方法
?字符串形式:一個(gè)字節(jié)存放一個(gè)十進(jìn)制的數(shù)位或符號(hào)位
?BCD(壓縮):一個(gè)字節(jié)存放兩個(gè)十進(jìn)制的數(shù)位
?編碼方式
-有權(quán)碼:(8421碼、2421碼、5211碼)
-無(wú)權(quán)碼:(余三碼、格雷碼)
?自定義數(shù)據(jù)表示
4)自定義數(shù)據(jù)表示
標(biāo)志符數(shù)據(jù)表示、描述符數(shù)據(jù)表示
8別:
標(biāo)志符與每個(gè)數(shù)據(jù)相連,二者合起來(lái)存放在一個(gè)存儲(chǔ)單元,而描述符要和數(shù)據(jù)分開(kāi)存放;
描述符表示中,先訪問(wèn)描述符,后訪問(wèn)數(shù)據(jù),至少增加次訪存;
描述符是程序的一部分,而不是數(shù)據(jù)的一部分。
2.1.2數(shù)的機(jī)器碼表示
?數(shù)的機(jī)器碼表示
-真值和機(jī)器碼:真值(書(shū)寫(xiě)用)、機(jī)器碼(機(jī)器內(nèi)部使用)的概念
-原碼:優(yōu)點(diǎn):簡(jiǎn)單易懂。缺點(diǎn):加減法運(yùn)算復(fù)雜。
-補(bǔ)碼:加減法運(yùn)算方便,減法可以轉(zhuǎn)換為加法.
為了區(qū)別一般書(shū)寫(xiě)表示的數(shù)和機(jī)器中這些編碼表示的數(shù),通常將前者稱為真值,后者稱為機(jī)器數(shù)或機(jī)
器碼。
1、原碼表示法
?定點(diǎn)小數(shù)Xo.XiX2",Xn
rxl〉x200,正數(shù)
[x]原=1符號(hào)
Ll-x=l+1x|02x>T1,負(fù)數(shù)
vi:有正o和負(fù)o之分
范圍2-2f
侈九x=+0.11001110
[x]原=0.11001110[-x]原=1.11001110
?定點(diǎn)整數(shù)XoX]X2〃?Xn
[X2n>x200,正數(shù)
[x]原={符號(hào)
[2n-x=2n+|x|0>x>-2n
1,負(fù)數(shù)
vi:有正o和負(fù)。之分
范圍1-2"-2"-1
例:x=+l1001110
[x]原=011001110[-x]原=111001110
2、補(bǔ)碼:
我們先以鐘表對(duì)時(shí)為例說(shuō)明補(bǔ)碼的概念。假設(shè)現(xiàn)在的標(biāo)準(zhǔn)時(shí)間為4點(diǎn)正;而有一只表已經(jīng)7點(diǎn)了,
為了校準(zhǔn)時(shí)間,可以采用兩種方法:一是將時(shí)針退7-4=3格;一是將時(shí)針向前撥12-3=9格。這兩種方法
都能對(duì)準(zhǔn)到4點(diǎn),由此可以看出,減3和加9是等價(jià)的,就是說(shuō)9是(-3)對(duì)12的補(bǔ)碼,可以用數(shù)學(xué)公式
表示
-3=+9(modl2)
modl2的意思就是12模數(shù),這個(gè)“模”表示被丟掉的數(shù)值。上式在數(shù)學(xué)上稱為同余式。
上例中其所以7-3和7+9(modl2)等價(jià),原因就是表指針超過(guò)12時(shí)將12自動(dòng)丟掉,最后得到1672=4。
從這里可以得到一個(gè)啟示,就是負(fù)數(shù)用補(bǔ)碼表示時(shí),可以把減法轉(zhuǎn)化為加法。這樣,在計(jì)算機(jī)中實(shí)現(xiàn)起來(lái)
就比較方便。
,定點(diǎn)小數(shù)Xo.XiX2,「Xn
rxl>x》O0,正數(shù)
[x]補(bǔ)]符號(hào)
〔2+x=2-1xI02x>T1,負(fù)數(shù)
弦:0的補(bǔ)碼只有一種形式
范圍251-2'"
例:(1)x=-0.1011(2)y=-0.01111
[x]補(bǔ)=10+x=10.0000-0.1011=1.0101
[y]補(bǔ)=10+y=10.00000-0.01111=1,10001
?定點(diǎn)整數(shù)XoXlX2,"Xn
「x2">x200,正數(shù)
[x]補(bǔ)={符號(hào)
[2"?+x=2"H-|xI0Nx>-2"1,負(fù)數(shù)
vi:o的補(bǔ)碼只有一種形式
范圍-2"-2"-1
3、反碼:為計(jì)算補(bǔ)碼方便而引入
計(jì)算公式:小數(shù)公式2.H(P25),整數(shù)公式2.12(P25)
由反碼求補(bǔ)碼:符號(hào)位置1,各位取反,末位加1。
4、移碼:用于階碼的表示,兩個(gè)移碼容易比較大小,便于對(duì)階。
定義:公式2.14。即將數(shù)值向X軸正方向平移2"
-例T011111原碼為11011111
-補(bǔ)碼為10100001反碼為10100000
-移碼為00100001
-特點(diǎn):移碼和補(bǔ)碼尾數(shù)相同,符號(hào)位相反
-例3和例4
小結(jié):上面的數(shù)據(jù)四種機(jī)器表示法中,移碼表示法主要用于表示浮點(diǎn)數(shù)的階碼。由于補(bǔ)碼表示對(duì)加
減法運(yùn)算十分方便,因此目前機(jī)器中廣泛采用補(bǔ)碼表示法。在這類機(jī)器中,數(shù)用補(bǔ)碼表示,補(bǔ)碼存儲(chǔ),補(bǔ)
碼運(yùn)算。也有些機(jī)器,數(shù)用原碼進(jìn)行存儲(chǔ)和傳送,運(yùn)算時(shí)改用補(bǔ)碼。還有些機(jī)器在做加減法時(shí)用補(bǔ)碼運(yùn)算,
在做乘除法時(shí)用原碼運(yùn)算。
2.1.3字符與字符串的表示方式
ASCII碼
2.1.4漢字的表示方式
1)輸入碼:用于漢字輸入
2)內(nèi)碼:用于漢字的存儲(chǔ)
3)字模碼:用于漢字的顯示
2.1.5校驗(yàn)碼
奇、偶校驗(yàn)碼
最簡(jiǎn)單且應(yīng)用廣泛的檢錯(cuò)碼是采用一位校驗(yàn)位的奇校驗(yàn)或偶校驗(yàn)。
設(shè)x=(xOxl…xn-1)是一個(gè)n位字,則奇校驗(yàn)位心定義為
3=X。十Xi十…十Xi(2.15)
式中?代表按位加,表明只有當(dāng)》中包含有奇數(shù)個(gè)1時(shí),才使e=1,即2=0。
同理,偶校驗(yàn)位。定義為
C=x()十X]十…十xn-i(2.16)
即X中包含偶數(shù)個(gè)1時(shí),才使0=0。
[例7]已知下表中左面一欄有5個(gè)字節(jié)的數(shù)據(jù)。請(qǐng)分別用奇校驗(yàn)和偶校驗(yàn)進(jìn)行編碼,填在中間一欄和右
面一欄。
見(jiàn)P30
補(bǔ)充內(nèi)容
一、常用邏輯門(mén)
表3.1.2常用門(mén)電路符號(hào)及表達(dá)式
逆料
名稱新標(biāo)準(zhǔn)符號(hào)慣用符號(hào)國(guó)外符號(hào)迎輯表達(dá)式
功能
B-D-1
與門(mén)與運(yùn)算膽:力SA,B
:?L
或門(mén)或運(yùn)算:iPL=A+B
Apy-L
非門(mén)非運(yùn)算"HZPA~~LL?A
與非ID,-1
與非口SA?B
運(yùn)算:田;甘
或非
好門(mén)L=A+B
退算:廿
如
與或與改h-&f51A―
B-B一
JL=AB+CD
非門(mén)非居算,C「C-
D-LLD-
界或㈡A
界或門(mén)L-XffiB
運(yùn)算
^AB+A?*B
同改MA2L=AQB
同或門(mén)
活算:廿甘=A領(lǐng)
-X5+XB
二、全加器
三、編碼器和譯碼器
四、觸發(fā)器
五、寄存器
2.2定點(diǎn)加法、減法運(yùn)算
一、補(bǔ)碼加法
加法公式:
[x+y]?『[x]補(bǔ)+[y]補(bǔ)(mod2)(2.17)
證明:(P31)假定X、Y均為定點(diǎn)小數(shù),且|x|〈l,|y|<l,|x+y|<l
(1)若x>0,y>0貝Ijx+y〉o
[x]補(bǔ)+[y]產(chǎn)x+y=[x+y]撲(正數(shù)的原、反、補(bǔ)碼是相同的)
(2)x>0,y<0
[x]#=x[y]樸=2+y
[x].+[y]補(bǔ)=x+2+y=2+(x+y)
①當(dāng)x+y>0
2+(x+y)會(huì)產(chǎn)生進(jìn)位,進(jìn)位位丟掉
2+(x+y)=x+y=[x+y]撲
②當(dāng)x+y<0
2+(x+y)=[x+y]補(bǔ)
故[x]補(bǔ)+[y]產(chǎn)[x+y]補(bǔ)
(3)x<0,y>0
(略)同(2)
(4)x<0,y<0
[x]撲=2+x[y]撲=2+y
[x]fr+[y]補(bǔ)=2+x+2+y=2+(2+x+y)
-Kx+y<0
則-1+2<2+x+y<0+2
1<2+x+y<2
2+(2+x+y)產(chǎn)生進(jìn)位、丟掉,2+(2+x+y)=(2+x+y)
又x+y<0
(2+x+y)=2+(x+y)=[x+y]補(bǔ)
ii:補(bǔ)碼加法的特點(diǎn):(1)符號(hào)位要作為數(shù)的一部分參與運(yùn)算
(2)要在模2的意義下相加,即超過(guò)2的進(jìn)位要丟掉。
例1:x=-0.1011,y=0.0111
[x]補(bǔ)=1.0101[y]補(bǔ)=0.0111
[x+y〃=[x]補(bǔ)+[y]補(bǔ)=1.0101+0.0111=1.1100
x+y=~0.0100
例2:x=+0.11011,y=-0.11111
[x]補(bǔ)=0.11011[y]補(bǔ)=1.00001[-y]補(bǔ)=0.11111
[x-y]?|.=[x]#+[-y]|b=l.11010
二、補(bǔ)碼減法
加法公式:
[x-y][x]tr[y]=[x]fh+[-y](mod2)(2.18)
證明:P32(略)只要證明[y]補(bǔ)+[-y]補(bǔ)=0
從[y]補(bǔ)求"y]補(bǔ),表達(dá)式為:
”y]產(chǎn)Fy]補(bǔ)+2』
其中一表示對(duì)[y]補(bǔ)作包括符號(hào)位在內(nèi)的求反操作
例10(略)P33
例11(略)P33
三、溢出概念與檢測(cè)方法
1.溢出概念:
溢出:在定點(diǎn)小數(shù)機(jī)器中,數(shù)的表示范圍為人|<1。在運(yùn)算過(guò)程中如果出現(xiàn)大于1的情況,稱為
溢出。
e?溢:兩個(gè)正數(shù)相加,結(jié)果大于機(jī)器所能表示的最大正數(shù)
下?溢:兩個(gè)負(fù)數(shù)相加,結(jié)果小于機(jī)器所能表示的最小負(fù)數(shù)
2.溢出的檢測(cè)方法:
(1)雙符號(hào)位(變形補(bǔ)碼或模4補(bǔ)碼):
變形補(bǔ)碼定義:x
4+x0>x>-2
采用變形補(bǔ)碼后:當(dāng)1>X2O兩個(gè)符號(hào)位都是0。如00.1010
當(dāng)O>X>-1兩個(gè)符號(hào)位都是lo如11.1010
對(duì)變形補(bǔ)碼其特點(diǎn):①符號(hào)位參與運(yùn)算
②在模4下相加運(yùn)算,進(jìn)位4丟掉
修施:①運(yùn)算結(jié)果的兩符號(hào)位相異時(shí),表示溢出。
②不論溢出與否,最高符號(hào)位始終指示正確的符號(hào)。
例10(略)P34
例11(略)P34
(2)單符號(hào)位:(1)當(dāng)最高有效位產(chǎn)生進(jìn)位而符號(hào)位無(wú)進(jìn)位時(shí),產(chǎn)生上溢出。
(2)當(dāng)最高有效位無(wú)進(jìn)位而符號(hào)位產(chǎn)生進(jìn)位時(shí),產(chǎn)生下溢出。
:溢出表達(dá)式為:V=C「?CoCi符號(hào)位產(chǎn)生的進(jìn)位,
Co——最高有效位產(chǎn)生的進(jìn)位)
?CfCO
00正確(正數(shù))
01上溢
10下溢
11正確(負(fù)數(shù))
四、基本的二進(jìn)制加法/減法器
?基本的加法和減法器一位半加器真值表
-半加器(不考慮進(jìn)位)
輸入輸出
Hj=Ai?Bi
AiBiSiCi
0000
電路圖略
0110
1010
1101
-全加器(考慮低位進(jìn)位Ci-1和向高位的進(jìn)位Ci)
真值表見(jiàn)P35表2.2
Sj=4十Bj?Cj
C7/+]A,Bt+AjCi+BjCj
=Bj+(Bj)Cj
——Bj.(AjBj).Cz
Ci+1.FA?Ci
TT
AiBi
FA(全加器)邏輯電路圖總框圖
進(jìn)位處理方式:串行進(jìn)位(行波進(jìn)位)、并行進(jìn)位
二進(jìn)制加法/減法器圖2.2(P31)
五、十進(jìn)制加法器
十進(jìn)制加法/減法器圖2.3(P36)
,校正方法
-當(dāng)Xi+Yi+C/10時(shí),Si=S
-當(dāng)Xi+Yi+Ci>=10時(shí),SlS+6
-校正因子生成方法
例如:
A=0101B=0111
A+B=0101+0111=1100(結(jié)果不是BCD碼)
1100+0110=10010(1為進(jìn)位,構(gòu)成12的BCD碼,所以正確)
2.3定點(diǎn)乘法運(yùn)算
一、原碼并行乘法
1.定點(diǎn)原碼乘法原理
在定點(diǎn)計(jì)算機(jī)中,兩個(gè)原碼表示的數(shù)相乘的運(yùn)算規(guī)則是:乘積的符號(hào)位由兩數(shù)的符號(hào)位按異或運(yùn)算得
到,而乘積的數(shù)值部分則是兩個(gè)正數(shù)相乘之積。
民]原=乂廣Xn_1...X[Xo被乘數(shù)
[y]?=yfyn-iyiyo乘數(shù)
[X?y]原=(Xf十yf)+(O.Xn_r..X]Xo)?(0.丫什-丫抽)乘積
?尾數(shù)乘法如下:
-設(shè)x=0.1101,y=0.1011.
-0.1101(x)
x0.1011(y)
1101
1101
0000
+1101
0.10001111(z)
人們習(xí)慣的算法對(duì)機(jī)器并不完全適用。原因:
(1)n位乘n位積可能為2n位.
(2)乘積的最后是所有部分積之和,有n個(gè)數(shù)相加,而FA只有兩個(gè)輸入端
所以需要改造
方法一:硬件實(shí)現(xiàn)方法(串行的“加法一一移位”),硬件結(jié)構(gòu)簡(jiǎn)單,速度太慢(時(shí)間延遲太長(zhǎng))。由于串
行乘法速度太慢,己被淘汰。
方法二:流水式陣列乘法器(并行乘法器)
2.不帶符號(hào)的陣列乘法器
乘枳
MXN位不帶符號(hào)的陣列乘法器邏輯框圖
5位X5位不帶符號(hào)的陣列乘法器邏輯電路圖
3.帶符號(hào)的陣列乘法器原理:
圖2.6對(duì)2求補(bǔ)電路
(被乘數(shù))(乘數(shù))
在這種邏輯結(jié)構(gòu)中,共使用三
個(gè)求補(bǔ)器。其中兩個(gè)算前求補(bǔ)器的
作用是:將兩個(gè)操作數(shù)4和6在被
不帶符號(hào)的乘法陣列(核心部件)
相乘以前,先變成正整數(shù)。而算后
求補(bǔ)器的作用則是:當(dāng)兩個(gè)輸入操
作數(shù)的符號(hào)不一致時(shí),把運(yùn)算結(jié)果
變成帶符號(hào)的數(shù)。
P2npan1piP”乘積)
圖2.7(n+1)位乘(n+1)位帶補(bǔ)級(jí)的陣列乘法器
二、補(bǔ)碼并行乘法
1.補(bǔ)碼與真值的轉(zhuǎn)換公式:
IF[N]#=an-lan-2...aiao
11-2對(duì)正數(shù)an=o
N=-52"'
/=0
a
n_2對(duì)負(fù)數(shù)n=i
—N=—(I—q-)2(1—q)2']+1
/=0
伊)[x]補(bǔ)=10110,則
x=-1*24+1*22+1*21=-10
-x=-(l-1)*24+(1—0)23+(l-1)22+(1-1)*21+(1-0)*20+l=10
2.一般化的加法器:有負(fù)權(quán)輸入的,即可以做減法的。
帶負(fù)權(quán)的運(yùn)算規(guī)則:
(0)+(0)=(0)
(0)+(1)=(1)
(1)+(0)=(1)
(1)+(1)=(1)(0)
1+(1)=0
0+(1)=(1)
1+(0)=1
0+(0)=0
結(jié)果處理:從帶負(fù)權(quán)位開(kāi)始的幾位,取反加1
3.直接補(bǔ)碼陣列除法器:因符號(hào)位參與運(yùn)算,可以完成補(bǔ)碼的直接乘法,而不需求補(bǔ)級(jí),節(jié)省了取
補(bǔ)時(shí)間,大大的加快了乘法的速度。結(jié)構(gòu)圖見(jiàn)P44圖2.8。
例設(shè)㈤補(bǔ)=(01101)2,㈤補(bǔ)=(11011)2,求[給<團(tuán)產(chǎn)?
[解:]
(0)1101=+13
X)⑴1011=—5
(0)1101
(0)1101
(0)0000
(0)1101
0⑴⑴(0)(1)
0(1)0111111
(1)10111111=-65
獷充符號(hào)檢々「符號(hào)位
驗(yàn)證:
-1X27+0X26+1X25+1X24+1X23+1X22+1x2*1+1x2°
=—128+(32+16+8+4+2+1)
=—65
(13)X(-5)=-65
例(1)0110負(fù)13
(0)1101-正10
(1)0110
(0)0000
(1)0110
(1)0110
0(0)(0)(0)(0)
0(1)(1)111110
(1)101111110髓化以后結(jié)果)
2.4定點(diǎn)除法運(yùn)算
一、原碼除法算法原理
1.二進(jìn)制除法公式:
[xk=Xf.Xn_I...X]Xo被除數(shù)
?]原=丫「丫"7〃0除數(shù)
[X?y]te=(xf?yf)+(O.Xn_]...X[Xo)/(0.yn.[…丫/)商
2.余數(shù)處理的兩種方法:
(1)恢復(fù)余數(shù)法:運(yùn)算步驟不確定,控制復(fù)雜,不適合計(jì)算機(jī)運(yùn)算。
(2)加減交替法:不恢復(fù)余數(shù),運(yùn)算步驟確定,適合計(jì)算機(jī)操作。
二、并行除法器(自學(xué))
CAS的結(jié)構(gòu),圖2.9(a),并行除法器結(jié)構(gòu)圖2.9(b)。
不恢復(fù)余數(shù)的除法也就是加減交替法。在不恢復(fù)余數(shù)的除法陣列中,每一行所執(zhí)行的操作究竟
是加法還是減法,取決于前一行輸出的符號(hào)與被除數(shù)的符號(hào)是否一致。當(dāng)出現(xiàn)不夠減時(shí),部分余數(shù)
相對(duì)于被除數(shù)來(lái)說(shuō)要改變符號(hào)。這時(shí)應(yīng)該產(chǎn)生一個(gè)商位“0”,除數(shù)首先沿對(duì)角線右移,然后加到下
一行的部分余數(shù)上。當(dāng)部分余數(shù)不改變它的符號(hào)時(shí),即產(chǎn)生商位“1”,下一行的操作應(yīng)該是減法。
例*=0.101001,y=0.Ill,求4=、/了。
[解:]
[x]tt=0.101001
[y]樸=0.111[—y]補(bǔ)=1.001
0101001;被除數(shù)X
+[—y詠1001;第一步減除數(shù)y
111000:余數(shù)為贅商4控制下步做加法
1<0q0=0;除數(shù)右移位加
+[y詠001111
0001101>0ql=l;余數(shù)為正商1,控制下步做減法
+[—y你111001;除數(shù)右移2位減
1111111<0q2=0;余數(shù)為負(fù)商0,控制下步做加法
+[y你0000111;除數(shù)右移3位加
0000110>0q3=l:余數(shù)為正商1
故得
商q=qg.qlq2q3=0.101
余數(shù)r=(0.OOzvwv)=0.000110
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 旅游行業(yè)景點(diǎn)評(píng)級(jí)標(biāo)準(zhǔn)
- 手術(shù)中的電生理監(jiān)測(cè)
- 自制禮物課件教學(xué)課件
- 河南省2024九年級(jí)語(yǔ)文上冊(cè)第二單元8就英法聯(lián)軍遠(yuǎn)征中國(guó)致巴特勒上尉的信課件新人教版
- 慢病調(diào)理中心介紹
- 消防演練總結(jié)講評(píng)
- 農(nóng)業(yè)物聯(lián)網(wǎng)導(dǎo)論
- 感恩課件英文教學(xué)課件
- 玉米灰斑病病害循環(huán)
- 氣管切開(kāi)燒傷病人的護(hù)理
- 商務(wù)接待申請(qǐng)表
- 最新少先隊(duì)基礎(chǔ)知識(shí)競(jìng)賽題庫(kù)(含答案)
- 衛(wèi)生院在全院實(shí)行工作日午間禁酒的規(guī)定
- 藍(lán)色卡通幼兒園關(guān)愛(ài)眼睛主題班會(huì)
- XX鎮(zhèn) 2022年度溫室大棚項(xiàng)目可研報(bào)告范本
- 各種能源排放因子
- 護(hù)士值班及交接班制度測(cè)試卷附答案
- 音樂(lè)劇貓賞析課件
- 船體結(jié)構(gòu)介紹課件
- 鼻腔沖洗專業(yè)知識(shí)講座課件
- 護(hù)士求職應(yīng)聘幻燈片課件
評(píng)論
0/150
提交評(píng)論