新編計算機導(dǎo)論 課件 第3章 計算的基礎(chǔ)_第1頁
新編計算機導(dǎo)論 課件 第3章 計算的基礎(chǔ)_第2頁
新編計算機導(dǎo)論 課件 第3章 計算的基礎(chǔ)_第3頁
新編計算機導(dǎo)論 課件 第3章 計算的基礎(chǔ)_第4頁
新編計算機導(dǎo)論 課件 第3章 計算的基礎(chǔ)_第5頁
已閱讀5頁,還剩141頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

新編計算機導(dǎo)論計算的基礎(chǔ)1計算機與二進制數(shù)據(jù)的概念01邏輯代數(shù)03為何采用二進制02二進制與問題求解04本節(jié)CAPACITY內(nèi)容數(shù)據(jù)的概念數(shù)據(jù)的基本概念信息人通過接受信息來認識事物,從這個意義上說,信息是一種知識,是接受者原來不了解的知識數(shù)據(jù)數(shù)據(jù)是信息的載體,信息在計算機內(nèi)部具體的表示形式就是數(shù)據(jù)。信息是有意義的,而數(shù)據(jù)則沒有。數(shù)值、文字、語言、圖形、圖像等都是不同形式的數(shù)據(jù)數(shù)據(jù)的基本概念數(shù)據(jù)分類數(shù)據(jù)在計算機中都是以二進制表示、存儲和處理的。計算機中數(shù)據(jù)數(shù)值型數(shù)據(jù)非數(shù)值型數(shù)據(jù)字符漢字多媒體信息圖形圖像動畫音頻視頻超文本數(shù)據(jù)的概念為何采用二進制二進制易于物理實現(xiàn)只需表示“0”和“1”兩個狀態(tài),如晶體管通為“1”,截止為“0”;高電壓為“1”,低電壓為“0”;機器可靠性使用二進制數(shù)只有兩個狀態(tài),數(shù)字的傳輸和處理不容易出錯運算簡單二進制的運算法則比較簡單,使得計算機的運算器結(jié)構(gòu)簡單,控制簡單通用性強只有0和1兩個數(shù),可以代表邏輯代數(shù)中的“真”和“假”,因而邏輯代數(shù)成為計算機設(shè)計的數(shù)學(xué)基礎(chǔ)為何采用二進制基本的容量單位位(bit)位是計算機存儲數(shù)據(jù)的最小單位。一個二進制位只能表示0或1兩種狀態(tài),每個0或1就是一個位。字節(jié)(Byte)字節(jié)是計算機數(shù)據(jù)存儲和處理的最常用的基本單位,簡記為B。規(guī)定一個字節(jié)為8位,即1B=8bit,每個字節(jié)由8個二進制位組成。計算機的存儲器通常是以多少字節(jié)來表示容量。為何采用二進制基本的容量單位字(Word)在計算機中,作為一個整體來處理或運算的一串?dāng)?shù)碼,稱為一個計算機字,簡稱字。一個字通常由一個或若干個字節(jié)組成。計算機一次能直接處理的二進制數(shù)據(jù)的位數(shù)稱為字長。為何采用二進制基本的容量單位衡量數(shù)據(jù)容量的單位KB,千字節(jié),簡稱K,1KB=210B=1024BMB,兆字節(jié),簡稱M,1MB=210KB=220BGB,吉字節(jié),簡稱G,1GB=210MB=230BTB,太字節(jié),簡稱T,1TB=210GB=240BPB,拍字節(jié),簡稱P,1PB=210TB=250BEB,艾字節(jié),簡稱E,1EB=210PB=260BZB,澤字節(jié),簡稱Z,1ZB=210EB=270BYB,堯字節(jié),簡稱Y,1YB=210ZB=280B邏輯代數(shù)起源于19世紀初,又稱布爾代數(shù),由19世紀英國數(shù)學(xué)家喬治·布爾創(chuàng)立邏輯代數(shù)是實現(xiàn)邏輯運算的數(shù)學(xué)工具

用來表達事物和演算間的邏輯關(guān)系,只有兩個值,即“真”和“假”常用于邏輯線路的設(shè)計以及程序設(shè)計中條件的描述等是計算機的理論基礎(chǔ),也是計算機實現(xiàn)控制的基本理論依據(jù)在邏輯代數(shù)中,有與、或、非三種基本邏輯運算邏輯代數(shù)邏輯常量與變量邏輯常量只有兩個,即0和1,用來表示兩個對立的邏輯狀態(tài)。邏輯變量與普通代數(shù)一樣,也可以用字母、符號、數(shù)字及其組合來表示但它們之間有著本質(zhì)區(qū)別,因為邏輯常量的取值只有兩個,即0和1,而沒有中間值。邏輯代數(shù)基本邏輯關(guān)系與:當(dāng)決定一事件的所有條件都具備時,事件才發(fā)生邏輯變量與普通代數(shù)一樣,也可以用字母、符號、數(shù)字及其組合來表示但它們之間有著本質(zhì)區(qū)別,因為邏輯常量的取值只有兩個,即0和1,而沒有中間值。邏輯代數(shù)邏輯與運算(and)與運算可用&表示1&1=1,0&1=0,1&0=0,0&0=0,同時為1,結(jié)果為1,任意一方為0,則結(jié)果為0。邏輯或運算(or)與運算可用|表示1|1=1,0|1=1,1|0=1,0|0=0,同時為0,結(jié)果為0,任意一方為1,則結(jié)果為1。邏輯非運算(not)與運算可用!表示!1=0,!0=1邏輯運算二進制與問題求解趣味故事:小白鼠驗毒有1000瓶水,其中一瓶是有毒的,小白鼠只要嘗一點帶毒的水,24小時內(nèi)就會死亡,問:至少需要多少只小白鼠才能在24小時內(nèi)檢驗出哪瓶水有毒?如何檢驗?二進制與問題求解求解思路若將1000瓶水從0~999逐一編號,假設(shè)第997瓶水有毒,哪瓶有毒?用十進制編碼很難看出如何求解因每瓶水存在有毒或無毒兩種狀態(tài),可以用0表示無毒,1表示有毒,考慮采用二進制求解將每瓶水的編號由十進制轉(zhuǎn)換為二進制,則需要10位二進制數(shù)如何讓小白鼠試毒?小白鼠喝了毒水后可能很快死亡,也可能在接近24小時的時候死亡,考慮時間因素,不能一只只的試驗是否需要10只小白鼠?二進制與問題求解求解方法每瓶水的編號都由10位二進制數(shù)構(gòu)成,其編碼為B9B8B7B6B5B4B3B2B1B0十只小白鼠編號分別為M9,M8,M7,M6,M5,M4,M3,M2,M1,M0,制定下述規(guī)則:對于任一瓶水,若編碼Bi為1,則讓編號為Mi的小白鼠喝一口,否則不讓小白鼠Mi喝1000瓶水均按上述規(guī)則處理,24小時后觀察二進制與問題求解求解方法若小白鼠Mi死了,則Mi=1,否則Mi=0,將十只小白鼠的狀態(tài)值相連,即可得出有毒水瓶的二進制編號將編號轉(zhuǎn)換為10進制,即可得知幾號瓶中的水有毒二進制與問題求解求解方法比如現(xiàn)在是第997瓶水有毒,其編號為1111100101(B9B8B7B6B5B4B3B2B1B0);編號M9

,M8

,M7

,M6

,M5

,M2

,M0的小白鼠喝第997瓶水;編號M4

,M3

,M1的小白鼠不喝第997瓶水;將小白鼠狀態(tài)相連,編號M9

,M8

,M7

,M6

,M5

,M2

,M0的小白鼠健康狀況出現(xiàn)問題;編號M4

,M3

,M1的小白鼠正常,依題則有M9M8M7M6M5M4M3M2M1M0=1111100101;將編號轉(zhuǎn)為10進制,可知第997瓶水有毒。二進制與問題求解求解方法比如現(xiàn)在是第2瓶水有毒,其編號為0000000010(B9B8B7B6B5B4B3B2B1B0);編號M2的小白鼠喝第2瓶水;M9

,

M8

,

M7

,

M6

,

M5

,

M4

,

M3

,

M1

,

M0的小白鼠不喝第2瓶水;將小白鼠狀態(tài)相連,依題則有M9M8M7M6M5M4M3M2M1M0=0000000010;將編號轉(zhuǎn)為10進制,可知第2瓶水有毒。二進制與問題求解總結(jié)小白鼠問題的求解運用了二進制思維,它可以將很多事物(或狀態(tài))巧妙地統(tǒng)一起來比如0和1可以表示為有毒與無毒、喝與不喝、死與不死,對同一串0和1可以有不同的解讀,比如:000010,可以是編號為000010(第2瓶)的水瓶000010,第i位對應(yīng)第i只小白鼠,1表示喝,0表示不喝000010,第i位對應(yīng)第i只小白鼠,1表示死,0表示不死新編計算機導(dǎo)論謝謝觀看新編計算機導(dǎo)論計算的基礎(chǔ)2數(shù)制的表示與轉(zhuǎn)換(上)數(shù)制01數(shù)制之間的轉(zhuǎn)換03數(shù)制的表示02本節(jié)CAPACITY內(nèi)容數(shù)制數(shù)制數(shù)制也稱為進位計數(shù)制,是指用一組固定的符號和統(tǒng)一的規(guī)則來表示數(shù)值的方法。基數(shù)表示每種數(shù)值所需要的數(shù)碼個數(shù)稱為該數(shù)制的基數(shù)?;鶖?shù)簡稱“基”或“底”,常用字母R(radix)表示。如十進制數(shù)制,可用“0,1,2,…,9”,10個符號來表示,基數(shù)為10,即R=10。位權(quán)一個數(shù)碼處在不同位置所代表的值不同。每個數(shù)碼所表示的數(shù)值等于該數(shù)碼乘以一個與數(shù)碼所在位置相關(guān)的常數(shù),這個常數(shù)叫做位權(quán)?;颍阂环N數(shù)制中某一位上的“1”所表示的數(shù)值大小位權(quán)的大?。阂曰鶖?shù)為底、數(shù)碼所在位置的序號為指數(shù)的整數(shù)次冪。數(shù)制按位展開

例如:219=2×102+1×101+9×100可將任意數(shù)制的數(shù)K表示為如下通式:

數(shù)制數(shù)制的表示常用的數(shù)制表示方法常用的數(shù)制十進制——符合人們習(xí)慣。二進制——計算機內(nèi)部表示和存儲數(shù)據(jù),便于物理實現(xiàn)。十六進制、八進制——便于書寫,可以與二進制進行轉(zhuǎn)換。下標(biāo)法字符法數(shù)制的表示下標(biāo)法用小括號將要表示的數(shù)括起來,然后在右括號外的右下角寫上數(shù)制的基數(shù)R。一般用()角標(biāo)表示不同進制的數(shù)據(jù)。如:十進制數(shù)用()10表示,二進制數(shù)用()2表示(1056.78)10,表示1056.78是十進制數(shù)(756)8,表示756是八進制數(shù)(1101.0101)2,表示1101.0101是二進制數(shù)數(shù)制的表示字母法在計算機中,在數(shù)字后加字母表示不同進制數(shù)據(jù)。其中:B(binary)—二進制

D(decimal)—十進制(D可省略)O(octonary)—八進制(有的地方用Q)H(hexadecimal)—十六進制如:1011.01B,678O,156D數(shù)制的表示幾種進位計數(shù)制的表示和運算規(guī)則進位計數(shù)制的表示方法

對于任意的R進制數(shù):

位置計數(shù)法:(N)R=an-1an-2…a1a0.a-1…a-m

按權(quán)展開法:

(N)R=an-1×Rn-1+an-2×Rn-2+… +a1×R1+a0×R0+a-1×R-1+…+a-m×R-m

(其中n為整數(shù)位數(shù),m為小數(shù)位數(shù),R為基數(shù))數(shù)制進位計數(shù)制的表示方法

如,十進制:

(34958.34)10=3×104+4×103+9×102+

5×101+8×100+3×10-1+4×10-2

如:二進制:

(100101.01)2=1×25+0×24+0×23+ 1×22+0×21+1×20+0×2-1+1×2-2數(shù)制數(shù)制之間的轉(zhuǎn)換加減運算規(guī)則對于任意的R進制數(shù)逢R進一(進位原則)借一當(dāng)R(借位原則)數(shù)制之間的轉(zhuǎn)換運算規(guī)則二進制加法

0+0=0,0+1=1,1+0=1,1+1=10(逢二進一)二進制減法

0-0=0,1-0=1,1-1=0,0-1=1(借一當(dāng)二)

不夠減時,需要向高位借位,借位后有10-1=1二進制乘法

0×0=0,0×1=0,1×0=0,1×1=1二進制除法

0÷0(無意義),0÷1=0,1÷0(無意義),1÷1=1數(shù)制之間的轉(zhuǎn)換運算規(guī)則例1求(10011.01)2

+(100011.11)2

=?10011.01100011.11````+)0.0111011(110111)2數(shù)制之間的轉(zhuǎn)換運算規(guī)則例2求(10110.01)2

-(1100.10)2

=?10110.011100.10```

-)1.1001(1001.11)21數(shù)制之間的轉(zhuǎn)換運算規(guī)則例3求(1101.01)2×(110.11)2

=?1101.01110.11×)(1011001.0111)21101011101010000001

101011101011011001.0111數(shù)制之間的轉(zhuǎn)換運算規(guī)則例4求(1101.1)2÷(110)2

=?(10.01)21101

.1011010.01-110110-1

100數(shù)制之間的轉(zhuǎn)換R進制轉(zhuǎn)十進制方法:相應(yīng)位置的數(shù)碼乘以對應(yīng)位的權(quán)值,再將所有的乘積進行累加,即得對應(yīng)的十進制數(shù)。[例]求(1001.101)2的十進制數(shù)值。解:(1001.101)2=1×23+0×22+0×21+

1×20+1×2-1+0×2-2+1×2-3

=8+1+0.5+0.125=(9.625)10[例]求(653)8對應(yīng)的十進制數(shù)值?(653)8=6×82+5×81+3×80=384+40+3=427數(shù)制之間的轉(zhuǎn)換十進制轉(zhuǎn)二進制整數(shù)部分的轉(zhuǎn)換

----除2取余法小數(shù)部分的轉(zhuǎn)換----乘2取整法數(shù)制之間的轉(zhuǎn)換十進制整數(shù)轉(zhuǎn)二進制整數(shù)—除2取余法用2多次除被轉(zhuǎn)換的十進制數(shù)至商為0,每次所得余數(shù)構(gòu)成相應(yīng)二進制數(shù),第一個余數(shù)是最低位,最后一個余數(shù)是最高位。數(shù)制之間的轉(zhuǎn)換十進制整數(shù)轉(zhuǎn)二進制整數(shù)例5求(19)10的二進制數(shù)值。解:

因此,(19)10=(10011)2222221942101........1........0........0........1........余數(shù)低位高位941數(shù)制之間的轉(zhuǎn)換十進制小數(shù)轉(zhuǎn)二進制小數(shù)—乘2取整法用2多次乘被轉(zhuǎn)換的十進制數(shù)的小數(shù)部分,所得乘積的整數(shù)部分變?yōu)閷?yīng)的二進制數(shù)。第一次所得整數(shù)為最高位,其次為次高位,最后一次為最低位。至乘積為0。數(shù)制之間的轉(zhuǎn)換十進制小數(shù)轉(zhuǎn)二進制小數(shù)例6求(0.6875)10的二進制數(shù)值。解:因此,(0.6875)10=(0.1011)2

數(shù)制之間的轉(zhuǎn)換十進制小數(shù)轉(zhuǎn)二進制小數(shù)—乘2取整法十進制小數(shù)轉(zhuǎn)換為二進制小數(shù)過程中,有時會出現(xiàn)乘積的小數(shù)部分總不等于0的情況,或者出現(xiàn)循環(huán)小數(shù)的情況。如:(0.2)10

=(0.001100110011…)2

這樣的情況下,乘2過程的結(jié)束由所要求的轉(zhuǎn)換精度確定。一般當(dāng)要求二進制數(shù)取m位小數(shù)時,可求出m+1位,然后對最低位作0舍1入處理。數(shù)制之間的轉(zhuǎn)換十進制小數(shù)轉(zhuǎn)二進制小數(shù)例7求(0.323)10的二進制數(shù)值。(保留4位小數(shù))解:1.2920.6460.323×2×20.5841.168×2×20.336×2高位低位因此,(0.323)10=(0.0101)2

數(shù)制之間的轉(zhuǎn)換十進制小數(shù)轉(zhuǎn)二進制小數(shù)例8求(237.652)10的二進制數(shù)值。(保留4位小數(shù))解:則,(237.625)10=(11101101.101)2

整數(shù)除2取余10110111591182372914731222222220小數(shù)乘2取整0.6251.2500.250.501.0×2×2×2101數(shù)制之間的轉(zhuǎn)換十進制轉(zhuǎn)換為R進制數(shù)整數(shù)部分:除R取余法,即整數(shù)部分不斷除以R取余數(shù),直到商為0為止。最先得到的余數(shù)為最低位,最后得到的為最高位。又稱為“除R反向取余法”.小數(shù)部分:乘R取整法,首先不斷地對前次得到的積的小數(shù)部分乘R并列出該次得到的整數(shù)數(shù)值,直到小數(shù)部分乘積為0或者達到有效精度為止,最先得到的整數(shù)為小數(shù)部分的最高位(最靠近小數(shù)點),最后得到的整數(shù)為最低位

新編計算機導(dǎo)論謝謝觀看計算機科學(xué)導(dǎo)論計算的基礎(chǔ)2數(shù)制的表示與轉(zhuǎn)換(下)數(shù)制01數(shù)制之間的轉(zhuǎn)換03數(shù)制的表示02本節(jié)CAPACITY內(nèi)容數(shù)制之間的轉(zhuǎn)換二進制與R進制間的轉(zhuǎn)換把二進制轉(zhuǎn)換為八進制數(shù)時,只需將整數(shù)部分自右向左,小數(shù)部分自左向右分別按每三位為一組,不足三位用0補齊,用相應(yīng)的八進制數(shù)寫出。反之,把八進制數(shù)轉(zhuǎn)換為二進制數(shù),只要把每位八進制數(shù)用對應(yīng)的三位二進制數(shù)表示。二進制數(shù)與十六進制數(shù)的轉(zhuǎn)換同二進制與八進制轉(zhuǎn)換相似,只是按四位進行分組。數(shù)制之間的轉(zhuǎn)換二進制與八進制間的轉(zhuǎn)換例9將(1101101.10101)2轉(zhuǎn)換為八進制數(shù)。000~0001~1010~2011~3100~4101~5110~6111~7二進制數(shù):

001

101

101.101

010155

.52八進制數(shù):所以(1101101.10101)2

=(155.52)8數(shù)制之間的轉(zhuǎn)換八進制與二進制間的轉(zhuǎn)換例10將八進制數(shù)(345.64)8轉(zhuǎn)換為二進制數(shù)。八進制數(shù):3

4

5.6

4011二進制數(shù):100101

.110100000~0001~1010~2011~3100~4101~5110~6111~7所以(345.64)2

=(11100101.1101)2數(shù)制之間的轉(zhuǎn)換二進制與十六進制間的轉(zhuǎn)換轉(zhuǎn)換原則:每四位二進制對應(yīng)一位十六進制數(shù)。二進制轉(zhuǎn)十六進制:“四位一并”法方法:從小數(shù)點開始分別往兩邊,整數(shù)部分自右向左,小數(shù)部分自左向右,按每四位為一組,不足四位用0補齊,每組用相應(yīng)的十六進制數(shù)寫出。十六進制轉(zhuǎn)二進制:“一分為四”法方法:每位十六進制數(shù)用四位二進制數(shù)代替。數(shù)制之間的轉(zhuǎn)換二進制與十六進制間的轉(zhuǎn)換例11將(1101101.10101)2轉(zhuǎn)換為16進制數(shù)。0000~00001~10010~20011~30100~40101~50110~60111~71000~81001~91010~A1011~B1100~C1101~D1110~E1111~F所以(1101101.10101)2

=(6D.A8)16二進制數(shù):

0110

1101.1010

10006十六進制數(shù):D

.A8數(shù)制之間的轉(zhuǎn)換十六進制與二進制間的轉(zhuǎn)換例12將十六進制數(shù)(A9D.6C)16轉(zhuǎn)換為二進制數(shù)。所以(A9D.6C)2

=(101010011101.011011)2十六進制數(shù):A

9

D.6

C1010二進制數(shù):10011101

.011011000000~00001~10010~20011~30100~40101~50110~60111~71000~81001~91010~A1011~B1100~C1101~D1110~E1111~F數(shù)制之間的轉(zhuǎn)換十進制與二進制、八進制、十六進制之間的轉(zhuǎn)換十進制數(shù)二進制數(shù)八進制數(shù)十六進制數(shù)000011112102231133410044510155611066711177數(shù)制之間的轉(zhuǎn)換二進制與十進制、八進制、十六進制之間的轉(zhuǎn)換十進制數(shù)二進制數(shù)八進制數(shù)十六進制數(shù)81000

10891001

119101010

12A(10)111011

13B(11)121100

14C(12)131101

15D(13)141110

16E(14)151111

17F(15)數(shù)制之間的轉(zhuǎn)換課后練習(xí)將(75.453)10轉(zhuǎn)換為二進制數(shù)(取4位小數(shù))將(152.32)10轉(zhuǎn)換為八進制數(shù)(取3位小數(shù))將(237.45)10轉(zhuǎn)換為十六進制數(shù)(取3位小數(shù))新編計算機導(dǎo)論謝謝觀看計算機科學(xué)導(dǎo)論計算的基礎(chǔ)3數(shù)值型數(shù)據(jù)的表示(上)無符號數(shù)01定點數(shù)與浮點數(shù)03有符號數(shù)02本節(jié)CAPACITY內(nèi)容導(dǎo)言計算機編碼把信息編成二進制數(shù)碼的方法,稱為計算機的編碼。數(shù)值數(shù)據(jù)和字符等其它數(shù)據(jù)需采用不同的編碼方式。在計算機中參與運算的數(shù)有兩大類:無符號數(shù)和有符號數(shù)。無符號數(shù)無符號數(shù)是指沒有符號的數(shù),即非負整數(shù)。機器字長中的全部數(shù)位均用來表示整數(shù)值的大小,相當(dāng)于數(shù)的絕對值。無符號數(shù)的表示范圍:字長為n位的無符號數(shù)的表示范圍是0~(2n-1)如機器字長為16位,則無符號數(shù)的表示范圍是0~(216-1),即0~65535無符號數(shù)有符號數(shù)據(jù)的表示日常,我們在絕對值前面加“+”、“-”符號來表示有符號數(shù)。在計算機中,有符號數(shù)中的正負號及小數(shù)中的小數(shù)點都以二進制形式表示。有符號數(shù)數(shù)的符號數(shù)值化在計算機中,有符號數(shù)的符號同樣用0和1表示。在計算機中,數(shù)的最高位定義為符號位,用“0”表示正數(shù),用“1”表示負數(shù)。機器數(shù)和真值連同符號位一起數(shù)值化了的數(shù),稱為機器數(shù),能被計算機識別的數(shù)稱為機器數(shù)。把機器數(shù)所表示的真實數(shù)值稱為機器數(shù)的真值。真值是正、負號加某進制數(shù)絕對值的形式。一般的,機器數(shù)與真值之間存在著一一對應(yīng)的關(guān)系。有符號數(shù)機器數(shù)和真值【例】有符號數(shù)真值機器數(shù)+52=+0110100——0

0110100

-52=

-0110100——1

0110100符號位數(shù)值位機器數(shù)的表示形式在計算機中,機器數(shù)有三種表示方法:原碼、反碼和補碼。引入三種編碼的目的,主要是為了將減法運算轉(zhuǎn)換為加法運算,提高運算速度。有符號數(shù)原碼用最高位表示符號位,后面是數(shù)值部分,數(shù)值部分就是原來的數(shù)值,即真值的絕對值,所以原碼表示又稱為帶符號的絕對值表示。原碼表示規(guī)則號位:0表示正數(shù)、1表示負數(shù)。數(shù)值位:二進制數(shù)的絕對值。有符號數(shù)原碼表示的例子為書寫方便,數(shù)X的原碼、反碼、補碼分別記做[X]原、[X]反、[X]補。有符號數(shù)X=+101011[X]原=0101011X=-101011[X]原=1101011機器數(shù)的真值機器數(shù)有符號數(shù)【例】計算+127的原碼:解答:[+127]原=01111111B【例】計算-127的原碼:解答:[-127]原=11111111B有符號數(shù)原碼的表示范圍[X]原=0Xn-2Xn-3…X0 0≤X≤2n-1-11Xn-2Xn-3…X0

-(2n-1-1)≤X≤0如字長為8,則原碼表示范圍-(27-1)~27-1,即–127~+127。最大值01111111

最小值11111111求真值:帶符號數(shù)的原碼表示法簡單易懂,而且與真值轉(zhuǎn)換方便原碼的用途原碼做乘除法運算方便,兩數(shù)的符號和數(shù)值分別處理積的符號為兩數(shù)符號位的異或運算結(jié)果積的數(shù)值部分為兩數(shù)絕對值相乘的結(jié)果有符號數(shù)原碼的缺點1.用原碼表示0時0的原碼不唯一,有兩種表示形式:若是整數(shù)即:X=+0,[X]原=00000000,X=-0,[X]原=10000000若是小數(shù)即:[+0]原=0.0000000,[-0]原=1.00000002.原碼在進行兩個異符號數(shù)相加或兩個同符號數(shù)相減時,需做減法運算,判斷兩個數(shù)絕對值的大小,用絕對值大的減去絕對值小的。有符號數(shù)有符號數(shù)【例13】設(shè)X=+10101,Y=–11010求Z=X+Y:解:因為X與Y異號,所以X+Y實質(zhì)上要做減法運算。若用原碼計算,則首先要比較X與Y的絕對值的大小,本題是│Y│>│X│;其次做減法│Y│–│X│。那么結(jié)果是正數(shù)還是負數(shù)呢?當(dāng)然哪個數(shù)的絕對值大,結(jié)果的符號就與哪個數(shù)的符號相同。這里|Y|>|X|,而Y為負數(shù)所以結(jié)果是:Z=–00101(即–5)或[Z]原=1,001011101010101-00101反碼正數(shù)的反碼和它的原碼相同;而負數(shù)反碼是符號位為“1”,數(shù)值部分按位求反。有符號數(shù)注意1、用反碼表示時,0有兩種表示形式,即:

X=+0,[X]反=00000000, X=-0,[X]反=11111111反碼表示的例子有符號數(shù)X=+1101

[X]反=01101X=-1101[X]反=10010

X=+0.1011[X]反=0.1011X=-0.1011[X]反=1.0100機器數(shù)的真值機器數(shù)有符號數(shù)規(guī)定字長的情況若字長為8,則:如規(guī)定了字長,若不滿要求位數(shù)時,需在真值絕對值前補0,然后再按位求反,轉(zhuǎn)換為反碼。

X=+1101

[X]反=

00001101X=-1101

[X]反=

11110010有符號數(shù)【例】計算+127的反碼:解答:[+127]反=01111111B【例】計算-127的反碼:解答:[-127]反=10000000B反碼表示范圍-(2n-1-1)~2n-1-1(n為字長)如字長為8,則反碼表示范圍為-(27-1)~27-1,即–127~+127。有符號數(shù)有符號數(shù)反碼運算規(guī)則

[X+Y]反=[X]反+[Y]反

[X-Y]反=[X]反+[-Y]反若符號位有進位,則進行循環(huán)進位。有符號數(shù)【例14】已知X=+0.1101,Y=-0.0001,用反碼求X+Y?:解:[X]反=[+0.1101]反[Y]反=[-0.0001]反=0.1101=1.1110因此,

[X+Y]反=[+0.1101-0.0001]反=[+0.1101]反+[-0.0001]反=0.11000.11011.1110+10.1011+0.11001循環(huán)進位有符號數(shù)反碼轉(zhuǎn)換為真值

由反碼求得原碼,再由原碼求得真值,即可得到反碼的真值。[[X]反]反=[X]原:符號位為“0”,則真值符號為正,數(shù)值位不變。符號位為“1”,則真值符號為負,數(shù)值位為反碼的數(shù)值位按位取反。例如:反碼11011001B,符號位為1,將數(shù)值位按位取反,得到原碼10100110B,其真值為-0100110B即十進制數(shù)-38有符號數(shù)反碼轉(zhuǎn)換為真值

由反碼求得原碼,再由原碼求得真值,即可得到反碼的真值。[[X]反]反=[X]原:符號位為“0”,則真值符號為正,數(shù)值位不變。符號位為“1”,則真值符號為負,數(shù)值位為反碼的數(shù)值位按位取反。例如:反碼11011001B,符號位為1,將數(shù)值位按位取反,得到原碼10100110B,其真值為-0100110B即十進制數(shù)-38有符號數(shù)【例15】已知字長為8,X1=101,X2=11010,用反碼求X1-X2?解:結(jié)果符號位為1,表示是負數(shù),所以,X1-X2=-0010101[X1-X2]反=[X1]反

+

[-X2]反

=[+101]反+[-11010]反=[+0000101]反+[-0011010]反

=00000101+11100101=11101010新編計算機導(dǎo)論謝謝觀看計算機科學(xué)導(dǎo)論計算的基礎(chǔ)3數(shù)值型數(shù)據(jù)的表示(中)無符號數(shù)01定點數(shù)與浮點數(shù)03有符號數(shù)02本節(jié)CAPACITY內(nèi)容有符號數(shù)補碼正數(shù)的補碼與原碼相同。負數(shù)的補碼為其絕對值各位求反,然后在最低位加1。但是符號位的“1”既是符號位,也是數(shù)值位,參與運算。如果最高位(符號位)有進位,則進位被舍棄即:[X]補=[X]反+1有符號數(shù)補碼表示范圍[X]補=0Xn-2Xn-3…X0 =X 0≤X≤2n-1-11Xn-2Xn-3…X0+1

-(2n-1-1)≤X≤0如字長為8,則補碼表示范圍-27~27-1,即–128~+127。0的補碼唯一[0]補=[+0]補=[-0]補=00000000補碼表示的例子有符號數(shù)X=+1001

[X]補=01001或00001001X=-1001[X]補=10111或11110111X=-0.1011[X]補=1.0101求-11,、-127、+127的補碼有符號數(shù)答案:[-11]補=11110101B[+127]補=01111111B[-127]補=10000001B有符號數(shù)補碼運算規(guī)則

補碼可以把二進制的減法轉(zhuǎn)換為加法,它不必判斷數(shù)的正負,只要將符號位也參與運算,就能得到正確的結(jié)果。從而使正負數(shù)的加減運算轉(zhuǎn)化為單純的正數(shù)相加的運算,簡化了判斷過程;從而提高計算機的運算速度,并節(jié)省設(shè)備開銷。

[X+Y]補=[X]補+[Y]補

[X-Y]補=[X]補+[-Y]補符號位參與運算,但是若符號位有進位,則舍去進位。有符號數(shù)補碼轉(zhuǎn)換為真值符號位為“0”,符號為正,數(shù)值位不變。符號位為“1”,符號為負,數(shù)值位按位取反,最低位加1。即再次求補。(或,數(shù)值位先減1,然后按位取反。)即:[[X]補]補=[X]原

[x]補=11100100,則x=-0011100=-11100[x]補=1.1011,則x=-0.0101有符號數(shù)【例16】用補碼求1001-1011解:[X]補=[+1001]補[Y]補=[-1011]補=01001=10101因此,[1001

-1011]補=[+1001]補+[-1011]補=

111101001

-1011

=

-0010符號位0

10

0

11

010

1+

1

111

0有符號數(shù)【例17】用補碼求-1000-0011解:[X]補=[-1000]補[Y]補=[-0011]補=11000=11101因此,[-1000

-0011]補=[-1000]補+[-0011]補=

10101-

1000

-0011

=

-1011符號位進位,丟掉符號位1

10

0

01

110

1+1

1

010

11

010

1有符號數(shù)原碼、反碼和補碼有符號數(shù)8位二進制分別看作原碼、反碼和補碼有符號數(shù)3種碼制的比較相同點:解決了數(shù)值數(shù)據(jù)的符號在機器中的表示問題。最高位都表示符號位不同點:原碼的符號位和數(shù)值位必須分開進行運算。原碼和反碼的零各自都有兩種表示方法。原碼和反碼能表示的正數(shù)和負數(shù)的范圍相對于零是對稱的,而補碼的負數(shù)表示范圍比正數(shù)表示范圍要寬。新編計算機導(dǎo)論謝謝觀看新編計算機導(dǎo)論計算的基礎(chǔ)3數(shù)值型數(shù)據(jù)的表示(下)無符號數(shù)01定點數(shù)與浮點數(shù)03有符號數(shù)02本節(jié)CAPACITY內(nèi)容定點數(shù)和浮點數(shù)計算機中如何表示實數(shù)中的小數(shù)點呢?計算機中不用專門的器件表示小數(shù)點,而是用數(shù)的兩種不同的表示法來表示小數(shù)點的位置。根據(jù)小數(shù)點的位置是否固定,數(shù)的表示方法分為定點表示和浮點表示,相應(yīng)的機器數(shù)稱為定點數(shù)和浮點數(shù)。定點數(shù)和浮點數(shù)定點數(shù)(定點小數(shù)和定點整數(shù))定點數(shù)是指小數(shù)點的位置固定不變,約定所有數(shù)值數(shù)據(jù)的小數(shù)點隱含在某一個固定位置上。(1)定點小數(shù):將小數(shù)點的位置固定在數(shù)據(jù)的最高位之前。分為有符號定點小數(shù)和無符號定點小數(shù)。有符號定點小數(shù)(純小數(shù)),小數(shù)點固定在符號位之后,有效數(shù)值部分最高位之前(即,數(shù)值位的最左邊)。無符號定點小數(shù)無符號定點小數(shù),小數(shù)點固定在機器數(shù)的最左邊。不帶符號的字長為n位的機器所能表示的機器數(shù)定點小數(shù)X的范圍是:

2-n≤x≤1-2-n考慮:如何得出以上結(jié)論?隱含小數(shù)點最小值隱含小數(shù)點最大值000……001111……111定點數(shù)和浮點數(shù)定點數(shù)(定點小數(shù)和定點整數(shù))(2)定點整數(shù):定點整數(shù)分為有符號和無符號定點整數(shù)兩種。定點整數(shù)若是純整數(shù),約定小數(shù)點位置在有效數(shù)值部分最低位之后。如n+1位數(shù)據(jù)x的形式為x=x0

x1x2…xn

(其中x0為符號位,x1~xn是尾數(shù),xn為最低有效位),小數(shù)點固定在最低位之后(數(shù)值位的最右邊)。定點數(shù)和浮點數(shù)定點整數(shù)無符號定點整數(shù):所有的數(shù)據(jù)位都為數(shù)值;有符號整數(shù):用最高位表示數(shù)的正負號,其他位表示數(shù)的大小。例如:若用一個字節(jié)表示一個無符號整數(shù),其取值范圍是0~255(28-1)。定點數(shù)和浮點數(shù)浮點數(shù)

在科學(xué)計算和數(shù)據(jù)處理中,經(jīng)常需要處理和計算非常大或非常小的數(shù)值。定點表示法不能夠精確地完成這種數(shù)值的表示。為了表示更大取值范圍的數(shù),實數(shù)采用“浮點數(shù)”或“科學(xué)表示法”表示。

浮點數(shù)的思想來源于科學(xué)計數(shù)法定點數(shù)和浮點數(shù)浮點數(shù)一個十進制實數(shù)可以有以下幾種不同的表示形式:

-34.62=-3462×10-2

=

-0.3462×102

=

-3.462×101想一想二進制能不能用這種形式表示呢?0.0111=0.0111*20

=0.111

2-1

定點數(shù)和浮點數(shù)浮點數(shù)表示方法N=M×RE,式中,N為浮點數(shù),E叫做階碼,M叫做尾數(shù),R為浮點數(shù)階碼的底,與尾數(shù)的基數(shù)相同,通常R=2。E和M都是帶符號數(shù)。底是隱含的,在整個機器數(shù)中不出現(xiàn)。尾數(shù)M:為定點尾數(shù),符號代表了浮點數(shù)的正負,因此又稱為數(shù)符小數(shù),尾數(shù)的位數(shù)決定了浮點數(shù)有效數(shù)值的精度。階碼E:為定點整數(shù),階碼的數(shù)值大小決定了該浮點數(shù)實際小數(shù)點位置與尾數(shù)的小數(shù)點位置(隱含)之間的偏移量。階碼的位數(shù)多少決定了浮點數(shù)的表示范圍。階碼的符號叫階符。階碼一般采用補碼表示。定點數(shù)和浮點數(shù)【例18】二進制數(shù)101101.0101=101101.0101×20=10110.10101×21=1011010.101×2-1=101101010.1×2?答案:=101101010.1×2-11-10.01=-1001×2-10=-0.1001×210=-1.001×21備注:小數(shù)點左移一位,階碼加1;小數(shù)點右移一位,階碼減一定點數(shù)和浮點數(shù)浮點數(shù)通常用記階表示法來表示二進制的浮點數(shù)。則R=2,M為尾數(shù),E為階碼。如圖2-1:定點數(shù)和浮點數(shù)浮點數(shù)當(dāng)用一個字節(jié)來表示浮點數(shù)N=-0.1001×210時,階碼需要3位,尾數(shù)需要5位:01011001es階符ms數(shù)符me尾數(shù)(M)階碼(E)定點數(shù)和浮點數(shù)浮點數(shù)用記階表示法表示數(shù)時,相同的數(shù)可以有許多種不同的表示形式。如:

-0.1001×210=-0.01001×211

=-0.001001×2100用浮點方法表示上述不同形式的數(shù)時,所需要的編碼長度是不相同的。為了便于計算機中浮點數(shù)的運算,提高運算的精度,需要充分地利用尾數(shù)的有效數(shù)位,必須有一個統(tǒng)一規(guī)范的表示:浮點數(shù)的規(guī)格化表示。定點數(shù)和浮點數(shù)浮點數(shù)的規(guī)格化規(guī)格化浮點數(shù)的尾數(shù)M應(yīng)滿足條件:尾數(shù)第一位不能為0,尾數(shù)最高有效位為1,即尾數(shù)滿足:1/2≤|M|<1,稱滿足這種表示要求的浮點數(shù)為規(guī)格化浮點數(shù)。例如,-0.1001×210就可以直接表示成規(guī)格化的浮點數(shù),-0.01001×211則不是規(guī)格化的浮點數(shù)。把不滿足這一表示要求的尾數(shù),變成滿足這一要求的尾數(shù)的操作過程,叫作浮點數(shù)的規(guī)格化處理,通過尾數(shù)移位和修改階碼實現(xiàn)。備注:小數(shù)點左移一位,階碼加1;小數(shù)點右移一位,階碼減一定點數(shù)和浮點數(shù)浮點數(shù)與定點數(shù)比較在位數(shù)相同的情況下,浮點數(shù)的表示范圍比定點數(shù)的表示范圍大。浮點數(shù)的運算精度一般比定點數(shù)高但定點數(shù)運算規(guī)則簡單易于實現(xiàn),浮點數(shù)運算規(guī)則復(fù)雜。溢出在計算機中,當(dāng)要表示的數(shù)據(jù)超出計算機所使用的數(shù)據(jù)的表示范圍時,則產(chǎn)生數(shù)據(jù)的溢出。定點數(shù)和浮點數(shù)溢出定點數(shù)數(shù)據(jù)小于定點數(shù)能表示的最小值時,稱為下溢。數(shù)據(jù)大于定點數(shù)能表示的最大值時,稱為上溢。浮點數(shù)的運算精度一般比定點數(shù)高浮點數(shù)當(dāng)浮點數(shù)的尾數(shù)為零或階碼為最小值時,通常把數(shù)當(dāng)作零,稱為機器零。若一個數(shù)的階碼>機器所能表示的最大階碼,產(chǎn)生上溢,轉(zhuǎn)入溢出中斷處理;若一個數(shù)的階碼<機器所能表示的最小階碼,產(chǎn)生下溢,當(dāng)作機器零。新編計算機導(dǎo)論謝謝觀看新編計算機導(dǎo)論計算的基礎(chǔ)4信息的編碼(上)西文字符及多媒體的編碼01漢字的編碼02本節(jié)CAPACITY內(nèi)容導(dǎo)言0,1與編碼英文字母、符號、漢字、音頻、視頻等皆可用0和1表示編碼就是以若干位數(shù)碼或符號的不同組合來表示非數(shù)值信息的方法,是人為將若干位數(shù)碼或符號的每一種組合指定一種唯一的含義編碼需滿足三個主要特征:唯一性-不能產(chǎn)生二義性公共性-不同組織、應(yīng)用程序都承認并遵循該規(guī)則規(guī)律性-有一定規(guī)則,便于識別及使用西文字符及多媒體的編碼字符小寫字母、數(shù)值符號、標(biāo)點符號和一些控制符號等,稱做字符。對于字符型數(shù)據(jù),沒有相應(yīng)的轉(zhuǎn)換規(guī)則可以使用。需要人們規(guī)定出每個字符對應(yīng)的二進制編碼形式字符編碼用若干位0、1符號表示字符的方法稱做字符編碼。常用的字符編碼1、ASCII碼(西文字符編碼)2、漢字編碼ASCII碼標(biāo)準ASCII碼是7位二進制編碼,最多可以表示128個字符。每個字符可以用一個字節(jié)表示,字節(jié)的最高位為0(在數(shù)據(jù)傳輸時可用作奇偶校驗位)。ASCII碼包括52個英文大、小寫字母,10個阿拉伯?dāng)?shù)字0~9,32個通用控制字符和34個專用字符。ASCII碼中的符號也可以分成兩類:控制字符和顯示字符。美國信息交換標(biāo)準碼,ASCII是一種西文機內(nèi)碼,同時也被國際標(biāo)準化組織批準為國際標(biāo)準。主要用于小型機和微機,為計算機在世界范圍的普及做出了貢獻。西文字符及多媒體的編碼西文字符及多媒體的編碼ASCII碼10個數(shù)字字符和26個英文字母由小到大排列,且數(shù)字在前,大寫字母次之,小寫字母在最后,該特點可用于字符數(shù)據(jù)的大小比較。數(shù)字0~9由小到大排列,ASCII碼分別為48~57,ASCII碼與數(shù)值恰好相差48。在英文字母中,A的ASCII碼值為65,a的ASCII碼值為97,且由小到大依次排列。因此,只要我們知道了A和a的ASCII碼,也就知道了其他字母的ASCII碼。表中前32個字符和最后一個字符為控制字符,也稱不可打印字符,在通訊中起控制作用。比如00HNUL(null)空字符、7FHDEL(delete)刪除。

西文字符及多媒體的編碼ASCII碼ASCII碼表示舉例例:英文單詞Computer的ASCII編碼為0100001101101111011011010111000001110101011101000110010101110010例:數(shù)值0.6875的ASCII編碼為001100000010111000110110001110000011011100110101數(shù)值0.6875的二進制數(shù)值為0.1011西文字符及多媒體的編碼ASCII碼——擴充ASCII碼為表示更多符號,將7位ASCII碼擴充到8位,可表示256個字符,稱為擴充的ASCII碼。擴充的ASCII碼可以表示某些特定的符號,如希臘字符、數(shù)學(xué)符號等。這種編碼是在原ASCII碼128個符號的基礎(chǔ)上,將它的最高位設(shè)置為1進行編碼(即字符的編碼為高位為1的8位二進制編碼)。擴充ASCII碼中的前128個符號的編碼與標(biāo)準ASCII碼字符集相同。擴充的ASCII碼只能在不用最高位做校驗位或其他用途時使用。西文字符及多媒體的編碼Unicode碼為容納所有國家的文字,國際組織提出了Unicode標(biāo)準,即一種可以容納世界上所有文字和符號的字符編碼方案,編碼空間為0x0~0x10FFFF之間的整數(shù)??扇菁{1114112個符號的編碼西文字符及多媒體的編碼新編計算機導(dǎo)論謝謝觀看新編計算機導(dǎo)論計算的基礎(chǔ)4信息的編碼(下)西文字符及多媒體的編碼01漢字的編碼02本節(jié)CAPACITY內(nèi)容漢字編碼漢字信息的處理涉及漢字的輸入、漢字信息的轉(zhuǎn)換、漢字信息在計算機內(nèi)的存儲、輸出等,分別對應(yīng)不同的編碼。1)漢字輸入碼2)漢字交換碼(國標(biāo)碼)3)漢字機內(nèi)碼4)漢字字形碼5)漢字地址碼漢字的編碼漢字輸入碼為將漢字輸入計算機而編制的代碼稱為漢字輸入碼,也叫外碼。總體來說可分為音碼、形碼、音形結(jié)合碼三大類。音碼是根據(jù)漢字的拼音進行編碼的,如全拼碼、雙拼碼。形碼是根據(jù)漢字的字形結(jié)構(gòu)進行編碼的,如五筆字型碼、倉頡碼。音形碼則結(jié)合了兩者,如自然

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論