




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第1章計(jì)算機(jī)系統(tǒng)基礎(chǔ)知識(shí)I
本章主要包括計(jì)算機(jī)系統(tǒng)的組成、計(jì)算機(jī)的類型、計(jì)算機(jī)中數(shù)據(jù)的表示和運(yùn)算、CPU、存
儲(chǔ)器等基礎(chǔ)知識(shí)。
1.1計(jì)算機(jī)系統(tǒng)的基本組成
計(jì)算機(jī)系統(tǒng)是由硬件系統(tǒng)和軟件系統(tǒng)組成的,計(jì)算機(jī)硬件是計(jì)算機(jī)系統(tǒng)中看得見、摸得著
的物理裝置,計(jì)算機(jī)軟件是程序、數(shù)據(jù)和相關(guān)文檔的集合。計(jì)算機(jī)系統(tǒng)的組成如圖1-1所示。
(PU廠運(yùn)算器
廠主機(jī)T{控制器
L內(nèi)存詁器(主存儲(chǔ)器)
「硬件系統(tǒng)j「輸入設(shè)備
I■外部設(shè)備X輸田設(shè)備
計(jì)算機(jī)系統(tǒng)Y
-外存儲(chǔ)器(輔助存儲(chǔ)器)
J軟件系統(tǒng)r系統(tǒng)軟件
工應(yīng)用軟件
圖1-1計(jì)算機(jī)系統(tǒng)的組成示意圖
1.計(jì)算機(jī)系統(tǒng)的硬件組成
基本的計(jì)算機(jī)硬件系統(tǒng)由運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備5大部件組成。
隨著器件技術(shù)和微電子技術(shù)的發(fā)展,運(yùn)算器、控制器等部件已被集成在一起,統(tǒng)稱為中央處理
單元(CentralProcessingUnit,CPU)。CPU是硬件系統(tǒng)的核心,用于數(shù)據(jù)的加工處理,能完成
各種算術(shù)、邏輯運(yùn)算及控制功能。
運(yùn)算器是對(duì)數(shù)據(jù)進(jìn)行加工處理的部件,它主要完成算術(shù)和邏輯運(yùn)算。控制器的主要功能則
是從主存中取出指令并進(jìn)行分析,控制計(jì)算機(jī)的各個(gè)部件有條不紊地完成指令的功能。
存儲(chǔ)器是計(jì)算機(jī)系統(tǒng)中的記憶設(shè)備,分為內(nèi)部存儲(chǔ)器(MainMemory,MM,簡(jiǎn)稱內(nèi)存、
主存)和外部存儲(chǔ)器(簡(jiǎn)稱外存)。內(nèi)存速度快、容量小,-一般用來臨時(shí)存放計(jì)算機(jī)運(yùn)行時(shí)
所需的程序、數(shù)據(jù)及中間結(jié)果。外存容量大、速度慢,可用于長(zhǎng)期保存信息。寄存器是CPU
中的記憶設(shè)備,用來臨時(shí)存放指令、數(shù)據(jù)及運(yùn)算結(jié)果。與內(nèi)存儲(chǔ)器相比,寄存器的速度耍快
得多。
習(xí)慣上將CPU和主存儲(chǔ)器的有機(jī)組合稱為主機(jī)。輸入/輸出(I/O)設(shè)備位于主機(jī)之外,是
計(jì)算機(jī)系統(tǒng)與外界交換信息的裝置。所謂輸入和輸出,都是相對(duì)于主機(jī)而言的。輸入設(shè)備的作
用是把轉(zhuǎn)換成二進(jìn)制形式的信息輸入到計(jì)算機(jī)的存儲(chǔ)器中,輸出設(shè)備的作用是把運(yùn)算結(jié)果按照
人們所要求的形式輸出到外部設(shè)備或存儲(chǔ)介質(zhì)上。
2.計(jì)算機(jī)軟件
計(jì)算機(jī)軟件是指為管理、運(yùn)行、維護(hù)及應(yīng)用計(jì)算機(jī)所開發(fā)的程序和相關(guān)文檔的集合。如果
計(jì)算機(jī)系統(tǒng)中僅有硬件系統(tǒng),則只具備了計(jì)算的基礎(chǔ),并不能真正運(yùn)算,只有將解決問題的步
驟編制成程序并加載到計(jì)算機(jī)內(nèi)存開始運(yùn)行:,才能完成運(yùn)算。軟件系統(tǒng)是計(jì)算機(jī)系統(tǒng)中的重要
組成部分,通??蓪④浖譃橄到y(tǒng)軟件和應(yīng)用軟件兩大類。
3.計(jì)算機(jī)的類型和應(yīng)用領(lǐng)域
計(jì)算機(jī)技術(shù)的發(fā)展異常迅速,現(xiàn)在的計(jì)算機(jī)使用的關(guān)鍵元器件基本上都是超大規(guī)模集成
電路。
(1)按照體積和工作能力,計(jì)算機(jī)分為巨型機(jī)、大型機(jī)、小型機(jī)和微型機(jī)。微型機(jī)有多種
形式,如臺(tái)式機(jī)(Desktop)、膝上型計(jì)算機(jī)(Laptop)或筆記本式計(jì)算機(jī)(Notebook)、工作站
(Workstation)>掌上型計(jì)算機(jī)和個(gè)人數(shù)字助理(PersonalDigitalAssistant,PDA)等。
(2)按照功能是否專一,計(jì)算機(jī)分為通用計(jì)算機(jī)和專用(嵌入式)計(jì)算機(jī)。
(3)按照CPU的指令系統(tǒng)架構(gòu),計(jì)算機(jī)分為復(fù)雜指令系統(tǒng)計(jì)算機(jī)(ComplexInstructionSei
Computer,CISC)和精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)(ReducedInstructionSetComputer,RISC)。
(4)按體系結(jié)構(gòu)及指令處理方式,計(jì)算機(jī)分為單指令流單數(shù)據(jù)流計(jì)算機(jī)(SingleInstruction
SingleData,SISD)>單指令流多數(shù)據(jù)流計(jì)算機(jī)(SingleInstructionMultipleData,SIMD)、多指
令流單數(shù)據(jù)流計(jì)算機(jī)(MultipleInstructionSingleData,MISD)和多指令流多數(shù)據(jù)流計(jì)算機(jī)
(MultipleInstiuctionMultipleData,MIMD)。
概括來講,計(jì)算機(jī)的應(yīng)用領(lǐng)域大致可分為數(shù)值計(jì)算、數(shù)據(jù)(或信息)處理、實(shí)時(shí)控制
(或過程控制)、人工智能、計(jì)算機(jī)輔助設(shè)計(jì)(ComputerAidedDesign,CAD)、計(jì)算機(jī)輔助
教學(xué)(ComputerAidedInstruction,CAI)和計(jì)算輔助管理(ComputerAidedManutactunng,
CAM)等。
1.2計(jì)算機(jī)中數(shù)據(jù)的表示及運(yùn)算
1.2.1計(jì)算機(jī)中數(shù)據(jù)的表示
計(jì)算機(jī)最主要的功能是處理數(shù)值、文字、聲音、圖形圖像等信息。在計(jì)算機(jī)內(nèi)部,各種信
息都必須經(jīng)過數(shù)字化編碼后才能被傳送、存儲(chǔ)和處理。所謂編碼,就是采用少量的基本符號(hào),
選用一定的組合原則,以表示大量復(fù)雜多樣的信息?;痉?hào)的種類和這些符號(hào)的組合規(guī)則是
一切信息編碼的兩大要素。洌如,用10個(gè)阿拉伯?dāng)?shù)碼表示數(shù)字,用26個(gè)英文字母表示英文詞
匯等,都是編碼的典型例子。
1.進(jìn)位計(jì)數(shù)制及其轉(zhuǎn)換
在采用進(jìn)位計(jì)數(shù)的數(shù)字系統(tǒng)中,如果只用「?jìng)€(gè)基本符號(hào)表示數(shù)值,則稱其為,?進(jìn)制(Radix-r
NumberSyslem),,?稱為該數(shù)制的基數(shù)(Radix)。不同數(shù)制的共同特點(diǎn)如下。
(1)每一種數(shù)制都有固定的符號(hào)集。例如,十進(jìn)制數(shù)制的基本符號(hào)有十個(gè):0,1,2,…,
9。二進(jìn)制數(shù)制的基本符號(hào)有兩個(gè):0和1。
(2)每一種數(shù)制都使用位置表示法。即處于不同位置的數(shù)符所代表的值不同,與它所在位
置的權(quán)值有關(guān)。
例如,十進(jìn)制數(shù)1234.55可表示為
1234.55=1X1O3+2X1O2+3X1O,+4X10°+5X10-,+5X10-2
可以看出,各種進(jìn)位計(jì)數(shù)制中權(quán)的值恰好是基數(shù)的某次累。因此,對(duì)任何一種進(jìn)位計(jì)數(shù)制
表示的數(shù)都可以寫成按權(quán)展開的多項(xiàng)式。計(jì)算機(jī)中常用的幾種進(jìn)位數(shù)制如表1-1所示。
表計(jì)算機(jī)中常用的進(jìn)位數(shù)制的表示
進(jìn)位制二進(jìn)制八進(jìn)制十進(jìn)制十六進(jìn)制
規(guī)則逢二進(jìn)一逢八進(jìn)一逢十進(jìn)一逢十六進(jìn)一
基數(shù)r=2r=8r=10r=16
數(shù)符0,10,1,2,…,70,1,2,…,90.1,2,,,,,9.A,B,…,F(xiàn)
權(quán)2,10,⑹
形式表示符B0DH
1)十進(jìn)制計(jì)數(shù)法
在十進(jìn)制計(jì)數(shù)制中,『10,基本符號(hào)為0,1,2,…,9。無論多大的數(shù),都是用這10個(gè)
符號(hào)的組合來表示,故稱為十進(jìn)制計(jì)數(shù)法。
2)二進(jìn)制計(jì)數(shù)法
在二進(jìn)制計(jì)數(shù)制中,,=2,基本符號(hào)為。和1。二進(jìn)制數(shù)中的一個(gè)?;騃稱為1位(bit)。
二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)的方法是:將二進(jìn)制數(shù)的每一位數(shù)乘以它的權(quán),然后相加,即可
求得對(duì)應(yīng)的十進(jìn)制數(shù)值。
【例1-1]把二進(jìn)制數(shù)100110.101轉(zhuǎn)換成相應(yīng)的十進(jìn)制數(shù)。
54321-1-2-3
(100110.101)2=1X2+0X2+0X2+1X2+1X2+0X2°+1X2+0X2+1X2
=32+0+0+4+2+0+0.5+0+0.125
=38.625
將十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)時(shí),整數(shù)部分和小數(shù)部分分別轉(zhuǎn)換,然后再合并。十進(jìn)制整數(shù)
轉(zhuǎn)換為二進(jìn)制整數(shù)的方法是“除2取余”;十進(jìn)制小數(shù)轉(zhuǎn)換為二進(jìn)制小數(shù)的方法是“乘2取整”。
十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)還有一種簡(jiǎn)便的方法:把一個(gè)十進(jìn)制數(shù)寫成按二進(jìn)制數(shù)權(quán)的大小
展開的多項(xiàng)式,按權(quán)值從高到低依次取各項(xiàng)的系數(shù)就可得到相應(yīng)的二進(jìn)制數(shù)。
【例1?2】把卜進(jìn)制數(shù)175.71875轉(zhuǎn)換為相應(yīng)的二進(jìn)制數(shù)。
7532|-1-3-4-5
(175.71875)10=2+24-24-2+2+2°+2+2+24-2
=10101111.101112
3)八進(jìn)制計(jì)數(shù)法
八進(jìn)制計(jì)數(shù)制中的基本符號(hào)為0,1,2,…,7。
十進(jìn)制數(shù)轉(zhuǎn)換為八進(jìn)制數(shù)的方法是:對(duì)于十進(jìn)制整數(shù)采用“除8取余”的方法轉(zhuǎn)換為八進(jìn)
制整數(shù);對(duì)于十進(jìn)制小數(shù)則采用“乘8取整”的方法轉(zhuǎn)換為八進(jìn)制小數(shù)。
二進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù)的方法是:從小數(shù)點(diǎn)起,把二進(jìn)制數(shù)每三位分成一組,然后寫出
每一組的等值八進(jìn)制數(shù),順序排列起來就得到所要求的八進(jìn)制數(shù)。
依照同樣的思想,將一位八進(jìn)制數(shù)用三位二進(jìn)制數(shù)表示,就可以宜接將八進(jìn)制數(shù)轉(zhuǎn)換成二
進(jìn)制數(shù)。
二進(jìn)制與八進(jìn)制數(shù)之間的對(duì)應(yīng)關(guān)系如表1-2所示。
表1?2二進(jìn)制、八進(jìn)制和十六進(jìn)制數(shù)之間的對(duì)應(yīng)關(guān)系
二進(jìn)制八進(jìn)制二進(jìn)制十六進(jìn)制二進(jìn)制十六進(jìn)制
00000000010008
00110001110019
0102001021010A
0113001131011B
1004010041100C
1015010151101D
1106011061110E
1117011171111F
【例1-3]把二進(jìn)制數(shù).10111轉(zhuǎn)換為相應(yīng)的八進(jìn)制數(shù)。
(10101111.10111)2=257.568
4)十六進(jìn)制計(jì)數(shù)法
在十六進(jìn)制計(jì)數(shù)制中,-16,基本符號(hào)為0,1,2,9,A,B,…,F(xiàn)。
十進(jìn)制數(shù)可以轉(zhuǎn)換為十六進(jìn)制數(shù)的方法是:十進(jìn)制數(shù)的整數(shù)部分“除16取余”,十進(jìn)制數(shù)
的小數(shù)部分“乘16取整”。
由于一位十六進(jìn)制數(shù)可以用4位二進(jìn)制數(shù)來表示,因此二進(jìn)制數(shù)與十六進(jìn)制數(shù)的相互轉(zhuǎn)換
就比較容易。二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù)的方法是:從小數(shù)點(diǎn)開始,每4位二進(jìn)制數(shù)為一組,
將每一組用相應(yīng)的十六進(jìn)制數(shù)符來表示,即可得到正確的十六進(jìn)制數(shù)。
二進(jìn)制與十六進(jìn)制數(shù)之間的對(duì)應(yīng)關(guān)系如表1-2所示。
【例14】把二進(jìn)制數(shù).10111轉(zhuǎn)換為相應(yīng)的十六進(jìn)制數(shù)。
(10101111.10111)
2=AF.B8I6
2.二進(jìn)制運(yùn)算規(guī)則
(1)加法:二進(jìn)制加法的進(jìn)位規(guī)則是“逢二進(jìn)一”。
0+0=01+0=101=11+1=0(有進(jìn)位)
(2)減法:二進(jìn)制減法的借位規(guī)則是“借一當(dāng)二”。
0-0=01-0=11-1=00-1=1(有借位)
(3)乘法:
0X0=01X0=00X1=01X1=1
3.機(jī)器數(shù)和碼制
各種數(shù)據(jù)在計(jì)算機(jī)中表小的形式稱為機(jī)器數(shù),其特點(diǎn)是采用二進(jìn)制計(jì)數(shù)制,數(shù)的符號(hào)用0、
1表示,小數(shù)點(diǎn)則隱含表示而不占位置。機(jī)器數(shù)對(duì)應(yīng)的實(shí)際數(shù)值稱為數(shù)的真值。
機(jī)器數(shù)有無符號(hào)數(shù)和帶符號(hào)數(shù)之分。無符號(hào)數(shù)表示正數(shù),在機(jī)器數(shù)中沒有符號(hào)位C對(duì)于無
符號(hào)數(shù),若約定小數(shù)點(diǎn)的位置在機(jī)器數(shù)的最低位之后,則是純整數(shù);若約定小數(shù)點(diǎn)的位置在機(jī)
器數(shù)的最高位之前,則是純小數(shù)。對(duì)于帶符號(hào)數(shù),機(jī)器數(shù)的最高位是表示正、負(fù)的符號(hào)位,其
余位則表示數(shù)值。若約定小數(shù)點(diǎn)的位置在機(jī)器數(shù)的最低數(shù)值位之后,則是純整數(shù);若約定小數(shù)
點(diǎn)的位置在機(jī)器數(shù)的最高數(shù)值位之前(符號(hào)位之后),則是純小數(shù)。
為了便于運(yùn)算,帶符號(hào)的機(jī)器數(shù)可采用原碼、反碼和補(bǔ)碼等不同的編碼方法,機(jī)器數(shù)的這
些編碼方法稱為碼制。
1)原碼表示法
數(shù)值X的原碼記為[X]原,如果機(jī)器字長(zhǎng)為〃(即采用〃個(gè)二進(jìn)制位表示數(shù)據(jù)),則最高位
是符號(hào)位,0表示正號(hào),1表示負(fù)號(hào),其余的〃-1位表示數(shù)值的絕對(duì)值。數(shù)值零的原碼表示有
兩種形式:[+0]原0]原=。
【例若機(jī)器字長(zhǎng)〃等于8,則
[+1]原=H]原二
[+127]原-[—127]原-
[+45]原=[-45]g=
[+0.5]原=0[-0.5]?=0(其中。是小數(shù)點(diǎn)的位置)
2)反碼表示法
數(shù)值X的反碼記作[X]反,如果機(jī)器字長(zhǎng)為〃,則最高位是符號(hào)位,。表示正號(hào),1表示負(fù)
號(hào),正數(shù)的反碼與原碼相同,負(fù)數(shù)的反碼則是其絕對(duì)值按位求反。數(shù)值0的反碼表示有兩種形
式:[+0]反=,[-0]反=。
【例1-6】若機(jī)器字長(zhǎng),等于8,則
[+1]反=[-1]反=
[+127]反=[—127]反二
[+45]反=[-45]反二
[+0.5]反=0[-05]反=。(其中。是小數(shù)點(diǎn)的位置)
3)補(bǔ)碼表示法
數(shù)值X的補(bǔ)碼記作[X]補(bǔ),如果機(jī)器字長(zhǎng)為〃,則最高位為符號(hào)位,。表示正號(hào),1表示負(fù)
號(hào),正數(shù)的補(bǔ)碼與其原碼和反碼相同,負(fù)數(shù)的補(bǔ)碼則等于其反碼的末尾加lo在補(bǔ)碼表示中,0
有唯一的編碼:[+0]補(bǔ)=,]-0:補(bǔ)二。
【例1?7】若機(jī)器字長(zhǎng)”等于8,則
[+1]補(bǔ)=H]補(bǔ)=
[+127]補(bǔ)=[-127]補(bǔ)=
[+45]補(bǔ)=[-45]補(bǔ)=
[+0.5]補(bǔ)=0[-05]補(bǔ)=0(其中0是小數(shù)點(diǎn)的位置)
4)移碼表示法
移碼表示法是在數(shù)X上增加一個(gè)偏移量來定義的,常用于表示浮點(diǎn)數(shù)中的階碼。如果機(jī)器
字長(zhǎng)為〃,在偏移量為2”7時(shí),只要將補(bǔ)碼的符號(hào)位取反便可獲得相應(yīng)的移碼表示。
【例1?8】若機(jī)器字長(zhǎng)〃等于8,則
[+1]移=H]移二
[+127]移二[-127]移二
[+45]移二[-45]移、
[+0]移=[一0]移二
4.定點(diǎn)數(shù)和浮點(diǎn)數(shù)
1)定點(diǎn)數(shù)
所謂定點(diǎn)數(shù),就是表示數(shù)據(jù)時(shí)小數(shù)點(diǎn)的位置固定不變。小數(shù)點(diǎn)的位置通常有兩種約定方式:
定點(diǎn)整數(shù)(純整數(shù),小數(shù)點(diǎn)在最低有效數(shù)值位之后)和定點(diǎn)小數(shù)(純小數(shù),小數(shù)點(diǎn)在最高有效
數(shù)值位之前)。
設(shè)機(jī)器字長(zhǎng)為〃,各種碼制表示下的帶符號(hào)數(shù)的范圍如表1-3所示。
表1-3機(jī)器字長(zhǎng)為〃時(shí)各種碼制表示的帶符號(hào)數(shù)的范圍
碼制定點(diǎn)整數(shù)定點(diǎn)小數(shù)
原碼-(2"-1一1)+(2n-,-1)
反碼?+(2/,_,-1)-(l-2-<z,-0)?+(1-2《一。
補(bǔ)碼_2,,_|?-1-
移碼-1?+(1—2十一))
2)浮點(diǎn)數(shù)
當(dāng)機(jī)器字長(zhǎng)為〃時(shí),定點(diǎn)數(shù)的補(bǔ)碼和移碼可表示2〃個(gè)數(shù),而其原碼和反碼只能表示2”-1
個(gè)數(shù)(0表示占用「兩個(gè)編碼),因此,定點(diǎn)數(shù)所能表示的數(shù)值范圍比較小,運(yùn)算中很容易因結(jié)
果超出范圍而溢出。因此引入浮點(diǎn)數(shù),浮點(diǎn)數(shù)是小數(shù)點(diǎn)位置不固定的數(shù),它能表示更大范圍
的數(shù)。
在十進(jìn)制中,一個(gè)數(shù)可以寫成多種表示形式。例如,83.125可寫成10'X().0B3I25或
104X0.0083125等。同樣,一個(gè)二進(jìn)制數(shù)也可以寫成多種表示形式。例如,二進(jìn)制數(shù)1011.10101
可以寫成24X0.101110101、25X0.0101110101或26XO.COIOI110101等。
一個(gè)含小數(shù)點(diǎn)的二進(jìn)制數(shù)N可以表示為更一般的形式:
N=2EXF
其中E稱為階碼,尸為尾數(shù),這種表示數(shù)的方法稱為浮點(diǎn)表示法。
在浮點(diǎn)表示法中,階碼通常為帶符號(hào)的純整數(shù),尾數(shù)為帶符號(hào)的純小數(shù)。浮點(diǎn)數(shù)的表示格
式如下:
階符階碼數(shù)符尾數(shù)
很明顯,一個(gè)數(shù)的浮點(diǎn)表示不是唯一的。當(dāng)小數(shù)點(diǎn)的位置改變時(shí),階碼也相應(yīng)改變,因此
可以用多種浮點(diǎn)形式表示同一個(gè)數(shù)。
浮點(diǎn)數(shù)所能表示的數(shù)值范圍主要由階碼決定,所表示數(shù)值的精度則由尾數(shù)決定。為了充分
利用尾數(shù)來表示更多的有效數(shù)字,通常采用規(guī)格化浮點(diǎn)數(shù)。規(guī)格化就是將尾數(shù)的絕對(duì)值限定在
區(qū)間似5,lb當(dāng)尾數(shù)用補(bǔ)碼表示時(shí),需要注意如下問題。
(1)若尾數(shù)MNO,則其規(guī)格化的尾數(shù)形式為M=0.1XXX…X,其中X可為0,也可為1,
即將尾數(shù)限定在區(qū)間[055
(2)若尾數(shù)M<0,則其規(guī)格化的尾數(shù)形式為M=1.0XXX…X,其中X可為0,也可為1,
即將尾數(shù)”的范圍限定在區(qū)間[-1,-0.5]o
3)工業(yè)標(biāo)準(zhǔn)IEEE754
IEEE754是由IEEE制定的有關(guān)浮點(diǎn)數(shù)的工業(yè)標(biāo)準(zhǔn),被廣泛采用。該標(biāo)準(zhǔn)的表示形式如下:
SPM
其中,S為數(shù)的符號(hào)位,為0時(shí)表示正數(shù),為1時(shí)表示負(fù)數(shù);P為階碼,通常用移碼表示;
M為尾數(shù),用原碼表示。
目前,計(jì)算機(jī)中主要使用三種形式的正EE754浮點(diǎn)數(shù),如表1-4所示。
表三種形式的IEEE754浮點(diǎn)數(shù)格式
參數(shù)單精度浮點(diǎn)數(shù)雙精度浮點(diǎn)數(shù)擴(kuò)充精度浮點(diǎn)數(shù)
浮點(diǎn)數(shù)字長(zhǎng)326480
尾數(shù)長(zhǎng)度235264
符號(hào)位長(zhǎng)度111
階碼長(zhǎng)度81115
指數(shù)偏移量+127+1023+16383
可表示的實(shí)數(shù)范圍]()一38?]10-丸8?]030810,32?0932
在IEEE754標(biāo)準(zhǔn)中,約定小數(shù)點(diǎn)左邊隱含有一位,通常這位數(shù)就是1,因此單精度浮點(diǎn)數(shù)
尾數(shù)的有效位數(shù)為24位,即尾數(shù)為l.XX-Xo
【例利用1ELE7乂標(biāo)注將數(shù)176.0625表示為隼精度浮點(diǎn)數(shù)。
解:首先將該十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù),g|J(176.0625)10=(10110000.0001),,其次對(duì)二進(jìn)
制數(shù)進(jìn)行規(guī)格化處理,即.0001=0X27。這就保證了最高位為1,而且小數(shù)點(diǎn)應(yīng)當(dāng)在。位置上,
將最高位去掉并擴(kuò)展為單精度浮點(diǎn)數(shù)所規(guī)定的23位尾數(shù),得到。
然后求階碼,上述表示中指數(shù)為7,用移碼表示為(注意,偏移量不是前面移碼描述中所
提到的128,而是127,因此偏移后的指數(shù)值為7+127=134)。
最后,可得到(176.O625)1o的單精度浮點(diǎn)數(shù)表示形式:
0
5.十進(jìn)制數(shù)與字符的編碼表示
數(shù)值、文字和英文字母等都被認(rèn)為是字符,任何字符進(jìn)入計(jì)算機(jī)時(shí),都必須轉(zhuǎn)換成二進(jìn)制
表示形式,稱為字符編碼。
用4位二進(jìn)制代碼表示一位十進(jìn)制數(shù),稱為二?十進(jìn)制編碼,簡(jiǎn)稱BCD編碼。因?yàn)?/p>
而十進(jìn)制數(shù)只有。?9這10個(gè)不同的數(shù)符,故有多種BCD編碼。根據(jù)4位代碼中每一位是否
有確定的權(quán)來劃分,可分為有權(quán)碼和無權(quán)碼兩類。
應(yīng)用最多的有權(quán)碼是8421碼,即4個(gè)二進(jìn)制位的權(quán)從高到低分別為8,4,2和h無權(quán)碼
中用的較多的是余3碼和格雷碼。余3碼是在X421碼的基礎(chǔ)上,把每個(gè)數(shù)的代碼加上0011后
構(gòu)成的。格雷碼的編碼規(guī)則是相鄰的兩個(gè)代碼之間只有一位不同。
常用的842IBCD碼、余3碼、格雷碼與十進(jìn)制數(shù)的對(duì)應(yīng)關(guān)系如表1-5所示。
表1?58421BCD碼、余3碼'格雷碼與十進(jìn)制數(shù)的對(duì)應(yīng)關(guān)系
十進(jìn)制數(shù)8421BCD碼余3BCD碼格雷碼
000001)0110000
1000101000001
2001001010011
3001101100010
4010001110110
5010110001110
6011010011010
7011110101(XX)
8100010111100
9100111000100
6.ASCII碼
ASCII碼(AmericanStandardCodeforInformationInterchange,美國(guó)標(biāo)準(zhǔn)信息交換碼)已
被國(guó)際標(biāo)準(zhǔn)化組織ISO采納,成為一種國(guó)際通用的信息交換用標(biāo)準(zhǔn)代碼。基本的ASCH碼采用
7個(gè)二進(jìn)制位,即d6d5山d3d2dd)對(duì)字符進(jìn)行編碼:低4位組d3d刈出)用作行編碼,高3位組d6d5d4
用作列編碼?;镜腁SCH字符代碼表如表1-6所示。
表L67位ASCII代碼表
d3d2dtd0位<1(4(14位(高3位)
(低4位)000001010on100101110111
0000NULDLESP0@P、p
0001SOHDCI!1AQaq
0010STXDC22BRbr
0011ETXDC3#3CScs
0100EOTDC4$4DTdI
0101ENQNAK%5EUeu
0110ACKSYN&6FVfV
0111BELETB7Gwgw
1000BSCAN(8HXhX
1001HTEM)9IYiy
1010LFSUB*:JZjz
1011VTESC+9K[k(
f
1100FFFS<L\11
1101CRGS-=M]m)
1110SORS?>NTn
1111DIUS/?0I0Del
根據(jù)ASCII碼的構(gòu)成格式,可以很方便地從對(duì)應(yīng)的代碼表中查出每一個(gè)字符的編碼。例如,
字符“0”的ASCII碼值為(25+24=48),字符字”的ASCH碼值為(26+25+20=97),>
7.漢字編碼
漢字處理包括漢字的編碼輸入、漢字的存儲(chǔ)和漢字的輸出等環(huán)節(jié)。也就是說,在計(jì)算機(jī)中
處理漢字,必須先將漢字代碼化,即對(duì)漢字進(jìn)行編碼。
西文是拼音文字,基本符號(hào)比較少,編碼比較容易,而且在一個(gè)計(jì)算機(jī)系統(tǒng)中,輸入、內(nèi)
部處理、存儲(chǔ)和輸出都可以使用同一代碼。漢字種類繁多,編碼比拼音文字困難,而且在i個(gè)
漢字處理系統(tǒng)中,輸入、內(nèi)部處理、存儲(chǔ)利輸出對(duì)漢字代碼的要求不盡相同,所以采用的編碼
也不同。漢字信息處理系統(tǒng)在處理漢字和詞語(yǔ)時(shí),關(guān)鍵的問題是要進(jìn)行一系列的漢字代碼轉(zhuǎn)換。
1)輸入碼
中文的字?jǐn)?shù)繁多,字形復(fù)雜,字音多變,常用漢字就有7000個(gè)左右。為了能直接使用西
文標(biāo)準(zhǔn)鍵盤輸入漢字,必須為漢字設(shè)計(jì)相應(yīng)的編碼方法,漢字的輸入碼主要分為三類:數(shù)字編
碼、拼音碼和字形碼。
(1)數(shù)字編碼。數(shù)字編碼就是用數(shù)字串代表一個(gè)漢字的輸入,常用的是國(guó)標(biāo)區(qū)位碼。國(guó)標(biāo)
區(qū)位碼將國(guó)家標(biāo)準(zhǔn)局公布的6763個(gè)兩級(jí)漢字分成94個(gè)區(qū),每個(gè)區(qū)94位,區(qū)碼和位碼各兩位
十進(jìn)制數(shù)字。例如,“中”字位于第54區(qū)48位,區(qū)位碼為5448。
漢字在區(qū)位碼表的排列是有規(guī)律的。在94個(gè)分區(qū)中,1?15區(qū)用來表示字母、數(shù)字和符號(hào),
16?87區(qū)為一級(jí)和二級(jí)漢字。一級(jí)漢字以漢語(yǔ)拼音為序排列,二級(jí)漢字以偏旁部首進(jìn)行排列。
使用區(qū)位碼方法輸入漢字時(shí),必須先在表中查找漢字對(duì)應(yīng)的代碼,才能輸入。數(shù)字編碼輸入的
優(yōu)點(diǎn)是無重碼,而且輸入碼和內(nèi)部編碼的轉(zhuǎn)換比較方便,但是數(shù)字串代碼難以記憶。
(2)拼音碼。拼音碼是以漢語(yǔ)讀音為基礎(chǔ)的輸入方法。由于漢字同音字太多,輸入重碼率
很高,因此,技拼音輸入后還必須進(jìn)行同音字選擇,會(huì)影響愉入速度。
(3)字形編碼。字形編碼是以漢字的形狀確定的編碼。漢字總數(shù)雖多,但都是由一筆一劃
組成,全部漢字的部件和筆劃是有限的。因此,把漢字的筆劃部件用字母或數(shù)字進(jìn)行編碼,按
筆劃書寫的順序依次輸入,就能表示一個(gè)漢字,五筆字型、表形碼等便是這種編碼法。五筆字
型編碼是最常見的輸入碼。
2)內(nèi)部碼
漢字內(nèi)部碼(簡(jiǎn)稱漢字內(nèi)碼)是漢字在設(shè)備或信息處理系統(tǒng)內(nèi)部最基本的表達(dá)形式,是在
設(shè)備和信息處理系統(tǒng)內(nèi)部存諸、處理、傳輸漢字用的代碼。漢字?jǐn)?shù)量多,用一個(gè)字節(jié)無法區(qū)分,
采用國(guó)家標(biāo)準(zhǔn)局GB2312-80中規(guī)定的漢字國(guó)標(biāo)碼,兩個(gè)字節(jié)存放一個(gè)漢字的內(nèi)碼,每個(gè)字節(jié)
的最高位置1,作為漢字機(jī)內(nèi)碼。由于兩個(gè)字節(jié)各用7位,因此可表示16384個(gè)可區(qū)別的機(jī)內(nèi)
碼。以漢字“大”為例,國(guó)標(biāo)碼為3473H,兩個(gè)字節(jié)的高位置I,得到的機(jī)內(nèi)碼為B4F3H。
為了統(tǒng)一地表示世界各國(guó)的文字,國(guó)際標(biāo)準(zhǔn)化組織1993年公布了“通用多八位編碼字符
集”國(guó)際標(biāo)準(zhǔn)ISO/IEC10646,簡(jiǎn)稱UCS(UniveralCodcSet)。UCS包含了中、日、韓等國(guó)的
文字,這一標(biāo)準(zhǔn)為包括漢字在內(nèi)的各種正在使用的文字規(guī)定了統(tǒng)一的編碼方案。該標(biāo)準(zhǔn)是用4
個(gè)8位碼(4個(gè)字節(jié))來表示每個(gè)字符,并相應(yīng)地指定組、平面、行和字位。
?組:用一個(gè)8位二進(jìn)制來編碼組,最高位不用,剩下7位,能表示128個(gè)組。
?平面:用一個(gè)8位二進(jìn)制來編碼平面,能表示256個(gè)平面。
?行:用一個(gè)8位二進(jìn)制來編碼行,能表示256個(gè)行。
?字位:用一個(gè)8位二進(jìn)制來編碼字位,能表示256個(gè)字位。
一個(gè)字符就被安排在這個(gè)編碼空間的一個(gè)字位上。4個(gè)8位碼32位足以包容世界二所有的
字符,同時(shí)也符合現(xiàn)代處理系統(tǒng)的體系結(jié)構(gòu)。
例如,ASCII字符“A",其ASCII碼用十六進(jìn)制表示為41Ho它在UCS中的編碼為H,
即在00組,00面,00行,第41H字位上。漢字“大”在GB2312中的編碼為3474H,它在
UCS中的編碼為H,即在00組,00面,59H行,第27H字位上。
我國(guó)相應(yīng)的國(guó)家標(biāo)準(zhǔn)為GB13000o詳細(xì)內(nèi)容請(qǐng)查閱網(wǎng)址。
3)字形碼
漢字字形碼是表示漢字字形的字模數(shù)據(jù),通常用點(diǎn)陣、矢量函數(shù)等方式表示,用點(diǎn)陣表示
字形時(shí),漢字字形碼指的就是這個(gè)漢字字形點(diǎn)陣的代碼。字形碼也稱字模碼,是用點(diǎn)陣表示的
漢字字形碼,它是漢字的輸出方式,根據(jù)輸出漢字的要求不同,點(diǎn)陣的多少也不同。簡(jiǎn)易型漢
字為16X16點(diǎn)陣,高精度型漢字為24X24點(diǎn)陣、32X32點(diǎn)陣、48X48點(diǎn)陣等。
字模點(diǎn)陣的信息量是很大的,所占存儲(chǔ)空間也很大,以16X16點(diǎn)陣為例,每個(gè)漢字就需
要32字節(jié)用于機(jī)內(nèi)存儲(chǔ)。字庫(kù)中存儲(chǔ)了每個(gè)漢字的點(diǎn)陣代碼,當(dāng)顯示輸出時(shí)才檢索字庫(kù),輸
出字模點(diǎn)陣得到字形。
漢字的矢量表示法是將漢字看作由筆畫組成的圖形,提取每個(gè)筆畫的坐標(biāo)值,這些坐標(biāo)值
就可以決定每一筆畫的位置,將每一個(gè)漢字的所有坐標(biāo)值信息組合起來就是該漢字字形的矢審
信息。顯然,漢字的字形不同,其矢量信息也就不同,每個(gè)漢字都有自己的矢量信息。由于漢
字的筆畫不同,則矢量信息就不同。所以,每個(gè)漢字矢量信息所占的內(nèi)存大小不一樣。這與點(diǎn)
陣表示法不一樣。
同樣,將每一個(gè)漢字的矢量信息集中在一起就構(gòu)成了漢字庫(kù)。當(dāng)需要漢字輸出時(shí),利用漢
字字形檢索程序根據(jù)漢字內(nèi)碼從字模庫(kù)中找到相應(yīng)的字形碼。
1.2.2校驗(yàn)碼
計(jì)算機(jī)系統(tǒng)運(yùn)行時(shí).各個(gè)部件之間要進(jìn)行數(shù)據(jù)交換.為了確保數(shù)據(jù)在傳送過程中正確無誤.
一是提高硬件電路的可靠性:二是提高代碼的校驗(yàn)?zāi)芰Γú殄e(cuò)和糾錯(cuò)。通常使用校驗(yàn)碼的
方法來檢測(cè)傳送的數(shù)據(jù)是否出錯(cuò)。其基本思想是把數(shù)據(jù)可能出現(xiàn)的編碼分為兩類:合法編碼和
錯(cuò)誤編碼。合法編碼用于傳送數(shù)據(jù),錯(cuò)誤編碼是不允許在數(shù)據(jù)中出現(xiàn)的編碼。合理地設(shè)計(jì)錯(cuò)誤
編碼以及編碼規(guī)則,使得數(shù)據(jù)在傳送中出現(xiàn)某種錯(cuò)誤時(shí)就會(huì)變成錯(cuò)誤編碼,這樣就可以檢測(cè)出
接收到的數(shù)據(jù)是否有錯(cuò)。
碼距是校驗(yàn)碼中的一個(gè)重要概念。所謂碼距,是指一個(gè)編碼系統(tǒng)中任意兩個(gè)合法編碼之間
至少有多少個(gè)二進(jìn)制位不同。例如,4位8421碼的碼距為1,在傳輸過程中,該代碼的一位或
多位發(fā)生錯(cuò)誤,都將變成另外一個(gè)合法編碼,因此這種代碼無差錯(cuò)檢驗(yàn)?zāi)芰?。下面?jiǎn)單介紹常
用的三種校驗(yàn)碼:奇偶校驗(yàn)碼(ParityCodes)、海明碼(HammingCode)和循環(huán)冗余校驗(yàn)(Cyclic
RedundancyCheck,CRC)碼。
1.奇偶校驗(yàn)碼
奇偶校驗(yàn)是一種簡(jiǎn)單有效的校驗(yàn)方法。這種方法通過在編碼中增加一個(gè)校驗(yàn)位來使編碼中
1的個(gè)數(shù)為奇數(shù)(奇校驗(yàn))或者偶數(shù)(偶校驗(yàn)),從而使碼距變?yōu)?。對(duì)于奇偶校驗(yàn),它可以檢
測(cè)代碼中奇數(shù)位出錯(cuò)的編碼,但不能發(fā)現(xiàn)偶數(shù)位出錯(cuò)的情況,即當(dāng)合法編碼中奇數(shù)位發(fā)生了錯(cuò)
誤,也就是編碼中的1變成?;颉W兂?,則該編碼中1的個(gè)數(shù)的奇偶性就發(fā)生了變化,從而
可以發(fā)現(xiàn)錯(cuò)誤。
表1.78421碼的奇偶校瞼碼
十進(jìn)制數(shù)8421BCD碼帶奇校驗(yàn)位的8421碼帶偶校驗(yàn)位的8421碼
000000000100000
100010001000011
200100010000101
300110011100110
401000100001001
501010101101010
601100110101100
7Dili0111001111
810001000010001
9100110011100I0
從表1-7可知,帶奇偶校驗(yàn)位的8421碼由4位信息位和1位校驗(yàn)位組成,碼距為2,能檢
杳出代碼信息中奇數(shù)位出錯(cuò)的情況,而錯(cuò)在哪些位是檢查不出來的。也就是說,它只能發(fā)現(xiàn)錯(cuò)
誤,而不能校正錯(cuò)誤。
常用的奇偶校驗(yàn)碼有三種:水平奇偶校驗(yàn)碼、垂直奇偶校驗(yàn)碼和水平垂直校驗(yàn)碼。
(1)水平奇偶校驗(yàn)碼。對(duì)每一個(gè)數(shù)據(jù)的編碼添加校驗(yàn)位,使信息位與校驗(yàn)位處于同一行。
(2)垂直奇偶校驗(yàn)碼。這種校驗(yàn)碼把數(shù)據(jù)分成若干組,一組數(shù)據(jù)占一行,排列整齊,再加
一行校驗(yàn)碼,針對(duì)每一列采用奇校驗(yàn)或偶校驗(yàn)。
【例1?10】對(duì)于32位數(shù)據(jù),其垂直奇校驗(yàn)和垂直偶校驗(yàn)如下所示。
編碼分類垂直奇校驗(yàn)碼垂直偶校驗(yàn)碼
1010010110100101
數(shù)據(jù)0011011000110110
1100110011001100
1010101110101011
校驗(yàn)位000010111i110100
(3)水平垂直校驗(yàn)碼。在垂直校驗(yàn)碼的基礎(chǔ)上,對(duì)每個(gè)數(shù)據(jù)再增加?位水平校驗(yàn)位,便構(gòu)
成水平垂直校驗(yàn)碼。
【例i?n】對(duì)于32位數(shù)據(jù),其水平垂直奇校驗(yàn)和偶校驗(yàn)如下所示。
奇偶類水平垂直奇校驗(yàn)碼水平垂直偶校驗(yàn)碼
分類水平校驗(yàn)位數(shù)據(jù)水平校驗(yàn)位數(shù)據(jù)
110100101010100101
100110110000110110
111001100011001100
010101011110101011
垂直校驗(yàn)位000001011111110100
2.海明碼
海明碼也是利用奇偶性來檢錯(cuò)和糾錯(cuò)的校驗(yàn)方法。海明碼的構(gòu)成方法是:在數(shù)據(jù)位之間插
入k個(gè)校驗(yàn)位,通過擴(kuò)大碼距來實(shí)現(xiàn)檢錯(cuò)和糾錯(cuò)。
例如,對(duì)于8位的數(shù)據(jù)位,進(jìn)行海明校驗(yàn)需要4個(gè)校驗(yàn)位。令數(shù)據(jù)位為D:、D6、Ds、D&、
4、D2、Di、DO,校驗(yàn)位為P4、P3、P2、PH形成的海明碼為H12、H”、…、H3、Hi.Hi,則
編碼過程如下。
(1)首先確定數(shù)據(jù)位與校驗(yàn)位在海明碼中的位置,如下所示。
H12HiiH10H9HSH7H6HSH4H3H2Hl
D7DiD4P4D3D?DiP3DoP2Pi
(2)通過校驗(yàn)關(guān)系,確定各校驗(yàn)位的值。
Pi偶校驗(yàn):Pi、Do、DHD3、D4、D6
即PI=DO十DI十D3十D4十D6
P2偶校驗(yàn):P2、Do、D2、Da、D5、D6
即P2=Do十D2十D?十D5十Df>
P3偶校驗(yàn):P3、Di、D2、D3、D7
即P3=D|十D2十D3十D7
P4偶校驗(yàn):P4、D4>D5、D(,、D7
即P4=D4十D5十D6十D7
若采用奇校驗(yàn),則將各校驗(yàn)位的偶校驗(yàn)值取反即可。
(3)檢測(cè)錯(cuò)誤。對(duì)使用海明編碼的數(shù)據(jù)進(jìn)行差錯(cuò)檢測(cè)很簡(jiǎn)單,只需作以下計(jì)算:
G二Pi十Do十Di十D39D4十D6
G=P2十Do十D?十D3十D.5十D6
Q=P3十DI十D2十D3十D?
Q=P4十D4十D5十。6十D7
若采用偶校驗(yàn),則QGGG全為0時(shí)表示接收到的數(shù)據(jù)無錯(cuò)誤(奇校驗(yàn)則應(yīng)全為1)。當(dāng)
QG3G2G不全為0說明發(fā)生了差錯(cuò),而且G4G3G2G1的十進(jìn)制值指出發(fā)生錯(cuò)誤的位置,例如
G1G3G2G=1010,說明HIO(D5)出錯(cuò)了,將其取反即可糾正錯(cuò)誤。
【例1?12】設(shè)數(shù)據(jù)為,試采用4個(gè)校驗(yàn)位求其偶校驗(yàn)方式的海明碼。
解:D7D6D5D4D3D2D1D尸,根據(jù)公式
Pi=Do十Di十D3十D4十D6=l十0十1十。十1=1
P2=D()十D?十D3十Ds十D6=l十。十1十1十1=0
P產(chǎn)Di十D2十6十D7=0十0十1十0=1
P4=D4十Ds十D6十D7=0十1十1十0=0
因此,求得的海明碼為:
H|HuH10HsH3Hi
2H9H7H6H5H4H2
E>7D5D301Do
D6D4P4D2P3P2Pi
011001001101
3.循環(huán)冗余校驗(yàn)碼
循環(huán)冗余校驗(yàn)碼廣泛應(yīng)用于數(shù)據(jù)通信領(lǐng)域和磁介質(zhì)存儲(chǔ)系統(tǒng)中。它利用生成多項(xiàng)式為2個(gè)
數(shù)據(jù)位產(chǎn)生「?jìng)€(gè)校驗(yàn)位來進(jìn)行編碼,其編碼長(zhǎng)度為&+入CRC的代碼格式為:
n-1r+1rr-121
…
數(shù)據(jù)位----------------------------校驗(yàn)位
由此可知,循環(huán)冗余校驗(yàn)碼是由兩部分組成的,左邊為信息碼(數(shù)據(jù)),右邊為校驗(yàn)碼。
若信息碼占出位,則校驗(yàn)碼就占〃-女位。其中,〃為CRC碼的字長(zhǎng),所以又稱為(〃,k)碼。
校驗(yàn)碼是由信息碼產(chǎn)生的,校驗(yàn)碼位數(shù)越長(zhǎng),該代碼的校驗(yàn)?zāi)芰驮綇?qiáng)。在求CRC編碼時(shí),
采用的是模2運(yùn)算。
模2加減運(yùn)算的規(guī)則是:按位運(yùn)算,不發(fā)生借位和進(jìn)位,如卜所示:
0+0=01+0=10+1=11+1=0
0-0=01-0=10-1=11-1=0
1.2.3邏輯代數(shù)及邏輯運(yùn)算
邏輯代數(shù)是1849年英國(guó)數(shù)學(xué)家喬治?布爾提出的,它是用代數(shù)的方式對(duì)邏輯變量進(jìn)行描
述和分析的數(shù)學(xué)工具,也稱為布爾代數(shù)。邏輯變量的取值只有“真”和“假”,通常以1表示
“真”,。表示“假、
1.基本的邏輯運(yùn)算
在邏輯代數(shù)中有三種最基本的運(yùn)算:“與”運(yùn)算、“或”運(yùn)算、“非”運(yùn)算,其他邏輯運(yùn)算
可由這三種基本運(yùn)算進(jìn)行組合來表示。
1)“與”運(yùn)算
“與”運(yùn)算又稱為邏輯乘,其運(yùn)算符號(hào)常用AND、「、八或”?”表示。設(shè)A和B為兩
個(gè)邏輯變量,當(dāng)且僅當(dāng)A和B的取值都為“真”時(shí),A“與"B的值為“真”;否則A“與"B
的值為“假”,如表1-8所示。
2)“或”運(yùn)算
“或”運(yùn)算也稱為邏輯加,其運(yùn)算符號(hào)常用OR、U、V或表示。設(shè)A和B為兩個(gè)邏
輯變量,當(dāng)且僅當(dāng)A和B的取值都為“假”時(shí),A“或"B的值為“假”:否則A"或"B的值
為“真”,如表1-9所示。
表1-8“與”運(yùn)算規(guī)則表1-9“或”運(yùn)算規(guī)則
ABA?BABA+B
000000
010011
100101
111111
3)“非”運(yùn)算
_“非”運(yùn)算也稱為邏輯求反運(yùn)算,常用,表示對(duì)變量A的值求反。其運(yùn)算規(guī)則很簡(jiǎn)單:i=o,
0=1O
4)“異或”運(yùn)算
常用的邏輯運(yùn)算還有“異或”運(yùn)算,乂稱為半加運(yùn)算,其運(yùn)算符號(hào)常用XOR或十表示。
設(shè)A和B為兩個(gè)邏輯變量,當(dāng)且僅當(dāng)A、B的值皙時(shí),A“異或"B為真。A“異或”B的
運(yùn)算可由前三種基本運(yùn)算表示,即A十B=X?B+A?6.
2.常用的邏輯公式
常用的邏輯公式如表1-10所示。
表1-10常用的邏輯公式
交換律A+B=B+AA?B=B?A重疊律A+A=AA?A=A
A+(B+C)=(A+B:+C互補(bǔ)律A+A=lA-A=0
結(jié)合律
A?(D?C)=(A-B)?C吸收律A+AB=A+B
A?(B+C)=A?B+A?C0+A=A0?A=0
分配律0-1律
A+(B?C)=(A+B)?(A+C)1+A=11?A=A
反演律A4-B=A?BA?B=A+B對(duì)合律A=A
A+AB=A
其他公式AB+AB=A
AB+AC+BC=AB+ACA十B=A十B=A十B
3.邏輯表達(dá)式及其化簡(jiǎn)
1)邏輯表達(dá)式與真值表
邏輯表達(dá)式就是用邏輯運(yùn)算符把邏輯變量(或常量)連接在一起表示某種邏輯關(guān)系的表達(dá)
式。常用表格來描述一個(gè)邏輯表達(dá)式與其變量之間的關(guān)系,也就是把變量和表達(dá)式的各種取值
都一一對(duì)應(yīng)列舉出來,稱之為真值表。
【例1?13]用真值表證明AB+Am=A。
ABABABAB+AB
00000
01000
10011
11101
從表中可以看出,無論B取何值,AB+AB的值和A的值都是相同的,所以AB+AB=A?
2)邏輯表達(dá)式的化簡(jiǎn)
利用邏輯運(yùn)算的規(guī)律和一些'常:型邏蹩恒啊可以過二個(gè)型輯表達(dá)式進(jìn)行化簡(jiǎn)。
1-14]化簡(jiǎn)邏輯表達(dá)式(云E^+A§C+云BC+A豆6+A§C+ABC)。
解:(ABC+ABC+ABC+ABC+ABC+ABC)
=(AB(C+C)+(A+A)BC+AB(C+C))(結(jié)合律、分配律)
=(AB+BC+AB)(互補(bǔ)律)
=((A+A)B+BC)(結(jié)合律、分配律)
=(B+BC)(互補(bǔ)律)
=(B+C)(吸收律)
1.2.4機(jī)器數(shù)的運(yùn)算
1.機(jī)器數(shù)的加減運(yùn)算
在計(jì)算機(jī)中,可以只設(shè)置加法器,而將減法運(yùn)算轉(zhuǎn)換為加法運(yùn)算來實(shí)現(xiàn)。
1)原碼加、減法
當(dāng)兩個(gè)相同符號(hào)的原碼數(shù)相加時(shí),只需將數(shù)值部分直接相加,運(yùn)算結(jié)果的符號(hào)與兩個(gè)加數(shù)
的符號(hào)相同。若兩個(gè)加數(shù)的符號(hào)相異,則應(yīng)進(jìn)行減法運(yùn)算。其方法是:先比較兩個(gè)數(shù)絕對(duì)值的
大小,然后用絕對(duì)值大者的絕對(duì)值減去絕對(duì)值小者的絕對(duì)值,結(jié)果的符號(hào)取絕對(duì)值大者的符號(hào)。
因此,原碼表示的機(jī)器數(shù)進(jìn)行減法運(yùn)算是很麻煩的,所以在計(jì)算機(jī)中很少被采用。
2)補(bǔ)碼加、減法
①補(bǔ)碼加法的運(yùn)算法則是:和的補(bǔ)碼等于補(bǔ)碼求和,即[X+Y]補(bǔ)=[X]補(bǔ)+[Y]補(bǔ)。
②補(bǔ)碼減法的方法是:差的補(bǔ)碼等于被減數(shù)的補(bǔ)碼加上減數(shù)取負(fù)后的補(bǔ)碼。因此,在補(bǔ)
碼表示中,可將減法運(yùn)算轉(zhuǎn)換為加法運(yùn)算,即[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)。
③由[X]補(bǔ)求[-X]補(bǔ)的方法是:[X]補(bǔ)的各位取反(包括符號(hào)位),末尾加1。
【例1?15】設(shè)二
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T/CIQA 27-2021檢驗(yàn)檢測(cè)公共技術(shù)服務(wù)平臺(tái)服務(wù)質(zhì)量評(píng)價(jià)指南
- T/CIE 151-2022現(xiàn)場(chǎng)可編程門陣列(FPGA)芯片動(dòng)態(tài)老化試驗(yàn)方法
- T/CHES 41-2020寒冷地區(qū)渠道凍害評(píng)價(jià)導(dǎo)則
- T/CGCC 96-2024影視作品區(qū)塊鏈存證應(yīng)用指南
- T/CFDCC 0217-2023家居用陶瓷巖板
- T/CEPPEA 5004.8-2020核電廠常規(guī)島施工圖設(shè)計(jì)文件內(nèi)容深度規(guī)定第8部分:供暖通風(fēng)與空氣調(diào)節(jié)
- T/CECS 10250-2022綠色建材評(píng)價(jià)泡沫鋁板
- T/CECS 10042-2019綠色建材評(píng)價(jià)無機(jī)裝飾板材
- T/CCS 026-2023煤礦防爆鋰電池車輛動(dòng)力電源換電安全技術(shù)要求
- T/CCMA 0180-2024熱風(fēng)微波復(fù)合加熱式瀝青路面再生修補(bǔ)車
- 雞鴨屠宰生產(chǎn)企業(yè)安全風(fēng)險(xiǎn)分級(jí)管控資料
- 5S點(diǎn)檢表1(日檢查表)
- 工程物料五金商品清單大全及價(jià)格
- 訂單評(píng)審記錄表
- 河北XX鋼鐵2#高爐2017年擴(kuò)容大修(方案)
- (精心整理)林海雪原閱讀題及答案
- 19、38本翻譯附件104-bs10中文版
- 培訓(xùn)課件-安全工器具
- 溝槽支護(hù)及土方開挖專項(xiàng)施工方案
- 應(yīng)答器及地面電子單元(LEU)培資料
- 3D打印教學(xué)演講(課堂PPT)
評(píng)論
0/150
提交評(píng)論