




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
計算機中的數(shù)制和碼制內(nèi)容提要數(shù)和數(shù)制有符號的二進制數(shù)的表示方法及溢出問題定點數(shù)和浮點數(shù)二進制編碼11、數(shù)和數(shù)制計數(shù)制:一種計數(shù)的方法,用不同的代碼來表示任意數(shù)計算機中使用二進制數(shù)(B)為方便二進制數(shù)的記憶,使用十六進制數(shù)(H)為與人們良好溝通,使用十進制數(shù)(D)2十進制數(shù)的特點代碼個數(shù):具有10個不同的代碼,分別是0、1、2、3、4、5、6、7、8、9進位規(guī)則:逢10進一權(quán):以10為底的冪“權(quán)”是一種位置系數(shù)3二進制數(shù)的特點代碼個數(shù):具有2個不同的代碼,分別是0、1進位規(guī)則:逢2進一權(quán):以2為底的冪4十六進制數(shù)的特點代碼個數(shù):具有16個不同的代碼,分別是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F進位規(guī)則:逢16進一權(quán):以16為底的冪5十進制、二進制、十六進制數(shù)碼對照表十進制二進制十六進制00000B0H10001B1H20010B2H30011B3H40100B4H50101B5H60110B6H70111B7H81000B8H十進制二進制十六進制91001B9H101010B0AH111011B0BH121100B0CH131101B0DH141110B0EH151111B0FH1610000B10H6位置計數(shù)法(1)同一個數(shù)字在不同的數(shù)位代表的數(shù)值是不同的,這種計數(shù)方法稱為位置計數(shù)法。在位置計數(shù)法中,對每一個數(shù)位賦予不同的位值,稱為權(quán)。每個數(shù)位上的數(shù)字所表示的量是這個數(shù)字和該數(shù)位的權(quán)的乘積。所以一般來說,對于基數(shù)為X的任意數(shù)可以用多項式表示7位置計數(shù)法(2)其中:Ki——第i位的系數(shù),可以為0,1,…,(X-1)共X個數(shù)字符號中任一數(shù)字符號;m,n——冪指數(shù),均為正整數(shù);Xi——第i位的權(quán)。8書寫規(guī)則為了區(qū)分不同數(shù)制,常用如下方法:后綴表示法:
B—二進制;例:1011BO—八進制;例:345o(或Q)D—十進制(可省略);例:678D(或678)H—十六進制;例:8DFH9各種數(shù)制的相互轉(zhuǎn)換(1)非十進制數(shù)轉(zhuǎn)換成十進制數(shù)可將其按定義展開為多項式,再將系數(shù)和權(quán)均用十進制表示后,按照十進制進行乘法和加法計算,所得結(jié)果即為對應(yīng)的十進制數(shù)。例:二進制整數(shù)轉(zhuǎn)換為十進制整數(shù)101000101B=1*28+1*26+1*22+1*20=325D例:二進制小數(shù)轉(zhuǎn)換為十進制小數(shù)0.101001B=1*2-1+1*2-3+1*2-6=0.5+0.125+0.015625=0.640625D10各種數(shù)制的相互轉(zhuǎn)換(2)十進制數(shù)轉(zhuǎn)換成非十進制數(shù)整數(shù)部分按照基數(shù)進行連除,直到余數(shù)為0為止,所得的余數(shù)序列逆序就為對應(yīng)的非十進制數(shù);小數(shù)部分按照基數(shù)進行連乘,直到小數(shù)部分為0或達到計算要求的精度為止,每次乘積的整數(shù)部分序列就為對應(yīng)的非十進制小數(shù)。11各種數(shù)制的相互轉(zhuǎn)換(3)十進制325整數(shù)轉(zhuǎn)換為二進制整數(shù)除基取余法:
除基余數(shù)ki
232521621k02810k1
2401k22200k3
2100k4250k5221k6210k701k8
325D=101000101B12各種數(shù)制的相互轉(zhuǎn)換(4)例:將十進制數(shù)0.625轉(zhuǎn)化為二進制形式。
乘基整數(shù)ki
0.625×2=1.251k-1
0.25×2=0.50k-20.5×2=1.01k-3
0.625=0.101B注:如果一個任意十進制數(shù)要轉(zhuǎn)換成非十進制數(shù),可以把整數(shù)部分和小數(shù)部分分別加以轉(zhuǎn)換,然后把轉(zhuǎn)換后的整數(shù)部分和小數(shù)部分相加13各種數(shù)制的相互轉(zhuǎn)換(5)二進制轉(zhuǎn)換成十六進制數(shù)從小數(shù)點開始分別向左向右把整數(shù)及小數(shù)部分每4位分成一組,如果不足則補0。用十六進制數(shù)取代每組的數(shù)值,就可得到對應(yīng)的十六進制數(shù)。例如:二進制數(shù)1011101001.110101轉(zhuǎn)換成十六進制數(shù)二進制:001011101001.11010100↓↓↓↓↓十六進制:2E9.D4
1011101001.110101B=2E9.D4H14各種數(shù)制的相互轉(zhuǎn)換(6)十六進制數(shù)轉(zhuǎn)換成二進制數(shù)用對應(yīng)的4位二進制數(shù)取代1位十六進制數(shù)。例如:十六進制數(shù)5C7A.3BH轉(zhuǎn)換成二進制數(shù)十六進制數(shù):5C7A.3B↓↓↓↓↓↓二進制數(shù):0101110001111010.001110115C7A.3BH=101110001111010.00111011B15無符號數(shù)和有符號數(shù)在計算機中,可以區(qū)分正負的類型,稱為有符類型,無正負的類型(只有正值),稱為無符類型。當(dāng)我們指定一個數(shù)是無符號類型時,那么其最高位的1或0,和其它位一樣,用來表示該數(shù)的大小。當(dāng)我們指定一個數(shù)是有符號類型時,此時,最高位稱為“符號位”。最高位為1時,表示該數(shù)為負值,最高位為0時表示為正值。16無符號二進制數(shù)的算術(shù)運算加法:0+0=00+1=11+0=11+1=0減法:0-0=00-1=11-0=11-1=0乘法:0×0=00×1=01×1=11×0=0除法:乘法的逆運算,可以用減法和左移運算實現(xiàn)17無符號二進制數(shù)的取值范圍:一個n位的無符號二進制數(shù)X,其取值范圍是
0≤X≤2n-1溢出:最高有效位產(chǎn)生進位18無符號二進制數(shù)的邏輯運算“與”:0∧0=00∧1=01∧0=01∧1=1“或”:0∨0=00∨1=11∨0=11∨1=1“非”:1=00=1“異或”:0⊕0=00⊕1=11⊕0=11⊕1=0192、有符號二進制數(shù)的表示方法及溢出問題一個有符號的數(shù)在機器中的表示形式稱為機器數(shù),其數(shù)值稱為真值機器數(shù)有三種表示法:原碼、反碼、補碼計算機中帶符號的數(shù)用補碼表示20原碼表示法(1)正數(shù)的符號位用“0”表示,負數(shù)的符號位用“1”表示,絕對值的編碼與無符號數(shù)的編碼規(guī)則相同例如,X=+1010011[X]原=01010011
X=-1010011[X]原=11010011對于8位二進制原碼0有兩種表示形式:[+0]原=00000000
正零
[-0]原=10000000負零所能表示的取值范圍:-127~+127[+127]原=01111111[-127]原=1111111121原碼表示法(2)原碼表示簡單易懂,易于形成。但是,兩個異號數(shù)相加或兩個同號數(shù)相減,就要做減法操作22反碼表示法(1)正數(shù)的反碼表示與原碼相同,最高位為符號位,用“0”表示正,其余位為數(shù)值位
例如:[+4]反=00000100負數(shù)的反碼,表示為該數(shù)對應(yīng)的正數(shù)按位取反(包括符號位)
例如:[+4]反=00000100[-4]反=1111101123反碼表示法(2)對于8位二進制反碼0有兩種表示形式:[+0]反=00000000
正零
[-0]反=11111111
負零所能表示的取值范圍:-127~+127[+127]反=01111111[-127]反=1000000024補碼表示法(1)正數(shù)的補碼表示與原碼相同,最高位為符號位,用“0”表示正,其余位為數(shù)值位
例如:[+4]補=00000100負數(shù)的補碼等于其相應(yīng)的反碼加1(在最低位加1)
例如:[+4]補=00000100[-4]補=[-4]反+1=11111011+1=1111110025補碼表示法(2)對于8位二進制補碼:0的表示是唯一的:
[+0]補=[-0]補=00000000所能表示的數(shù)值范圍:-128~+127[+127]補=01111111[-128]補=1000000026二進制數(shù)、原碼、補碼關(guān)系二進制數(shù)無符號二進制數(shù)原碼補碼000000000+0+000000001000000101+1+12+2+2…………01111110126+126+12601111111127+127+12710000000128-0-12810000001129-1-12710000010130-2-126…………11111110254-126-211111111255-127-127有符號數(shù)運算時的溢出問題(1)溢出:有符號數(shù)的運算結(jié)果超出可表示的有符號數(shù)的范圍時,就會發(fā)生溢出,使計算結(jié)果出錯如果計算機的字長是n位,最高位是符號位,采用補碼表示法時,可表示的數(shù)的范圍為-2n-1≤X≤2n-1-1溢出出現(xiàn)在兩個同號數(shù)相加或兩個異號數(shù)相減的情況下
28有符號數(shù)運算時的溢出問題(2)加法運算時:如果次高位(數(shù)值部分最高位)形成進位加入最高位,而最高位(符號位)沒有進位輸出時;反過來,次高位沒有進位加入最高位,但最高位卻有進位輸出時,都會產(chǎn)生溢出。01001000B+72
+
01100010B+9810101010B-8610101101B
-83+10110000B-8001011101B+93+72與+98之和為+170,超過了8位二進制數(shù)的所能表示的最大數(shù)+127,產(chǎn)生了上溢,得到了錯誤的結(jié)果-86。-83與-80之和應(yīng)為-163,超過了8位二進制數(shù)所能表示的最小數(shù)-128,產(chǎn)生了下溢,得到了錯誤結(jié)果+93。29有符號數(shù)運算時的溢出問題(3)減法運算時:當(dāng)次高位不需從最高位借位,但最高位卻需借位(正數(shù)減負數(shù),差超出范圍,結(jié)果為負數(shù));反過來,次高位需從最高位借位,但最高位不需借位(負數(shù)減正數(shù),差超出范圍,結(jié)果為正數(shù)),都會產(chǎn)生溢出。01001000B
+72
-
10011110B-9810101010B-86+72與-98之差應(yīng)為170,超過了8位二進制數(shù)所能表示的最大+127,產(chǎn)生了上溢,得到了錯誤結(jié)果-86。10101101B
-83
-
01010000B+8001011101B+93-83與+80之差應(yīng)為-163,超出了8位二進制數(shù)所能表示的最小數(shù)-128,產(chǎn)生下溢,得到錯誤結(jié)果為+93。303、定點數(shù)和浮點數(shù)在計算機中用二進制表示實數(shù)的方法有兩種:定點法和浮點法定點法
所謂定點法,即小數(shù)點在數(shù)中的位置是固定不變的,以定點法表示的實數(shù)稱作定點數(shù)。方法一:規(guī)定小數(shù)點固定在最高數(shù)值位之前,機器中所能表示的都是小數(shù)。n位數(shù)值部分所能表示的數(shù)N的范圍(原碼表示)為1-2-n≥N≥-(1-2-n)符號位數(shù)值位↑小數(shù)點符號位數(shù)值位↑小數(shù)點31方法二:規(guī)定小數(shù)點固定在最低數(shù)值位之后,機器中所能表示的數(shù)都是整數(shù)。n位數(shù)值部分所能表示的數(shù)N的范圍是2n-1≥N≥-(2n-1)符號位數(shù)值位↑小數(shù)點由于實際問題中很少有純粹的整數(shù)或者小數(shù),所以定點法要求程序員為了調(diào)整所要表示的數(shù)值范圍,而選擇比例因子。所有原始數(shù)據(jù)都要用比例因子化成小數(shù)或整數(shù),計算結(jié)果又要用比例因子恢復(fù)。對于復(fù)雜的計算,計算中間需要多次調(diào)整比例因子。定點數(shù)和浮點數(shù)32浮點法任意一個二進制數(shù)N總可以寫成下面的形式:N=±d·2±p其中:d稱為尾數(shù),是二進制純小數(shù),指明數(shù)據(jù)的全部有效數(shù)字。前面的符號稱作數(shù)符,表示數(shù)的符號。P稱為階數(shù),它前面的符號稱為階符,由此可知,將尾數(shù)d的小數(shù)點向右(對+p)或向左(對-p)移動p位,即得數(shù)值N。所以階符和階碼指定小數(shù)點的位置,小數(shù)點隨著p的符號和大小而浮動,所以這種數(shù)稱為浮點數(shù)。定點數(shù)和浮點數(shù)33如果尾數(shù)的絕對值小于1而且大于等于0.5,即采用原碼編碼的正數(shù)或者負數(shù)和采用補碼編碼的正數(shù),其尾數(shù)的最高位數(shù)字為1;采用補碼編碼的負數(shù),其尾數(shù)的最高位數(shù)字為0,則該浮點二進制數(shù)被稱為規(guī)格化浮點數(shù)。數(shù)的加減運算要求小數(shù)點對齊,對于浮點數(shù)而言,就是階碼(包括階符)相等,使階碼相等的操作稱為對階。階符階碼數(shù)符尾數(shù)↑1位↑m位↑1位↑n位定點數(shù)和浮點數(shù)34例如:已知m=4,n=10,有一個十進制數(shù)17.75,將其轉(zhuǎn)換成二進制數(shù),并對它進行規(guī)格化。
(17.75)10=(10001.11)2=0.1000111×25
規(guī)格化后:001010
1000111000浮點運算后,經(jīng)常要把結(jié)果規(guī)格化,規(guī)格化的操作就是尾數(shù)每右移1位(相當(dāng)于小數(shù)點左移1位),階碼加1;尾數(shù)每左移1位,階碼減1。定點數(shù)和浮點數(shù)35對階的規(guī)則是:將兩個數(shù)中階碼小的數(shù)的尾數(shù)右移,階碼增大,直到與另一個數(shù)的階碼相等為止。這樣的操作很合理,因為尾數(shù)右移,不會打破尾數(shù)的范圍,只可能丟失最低有效位,造成的誤差較小。例如兩個二進制數(shù)1.10001和10011.1001相加,經(jīng)過規(guī)格化后分別為
00001011000100000010101001110010對階后變?yōu)?/p>
0010100000110001+00101010011100100010101010100011定點數(shù)和浮點數(shù)364、二進制編碼(1)二進制編碼的十進制數(shù)(BCD編碼)用二進制編碼表示的十進制數(shù)稱為二-十進制碼,簡稱BCD碼(BinaryCodedDecimal)BCD碼是十進制數(shù),但用二進制數(shù)來表示BCD碼有多種表示方法,最常用的是8421BCD碼8421BCD碼每一位用四位二進制數(shù)來表示378421BCD碼的編碼方案十進制8421BCD碼8421BCD碼十進制0123456789101112131415000000010010001101000101011001111000100100010000000100010001001000010011000101000001010138BCD碼的兩種格式BCD碼的兩種基本格式:組合式BCD碼
分離式BCD碼
組合式:一個字節(jié)表示兩個BCD碼,即兩位十進制數(shù)76543210
低位高位分離式:一個字節(jié)的低四位表示一個BCD碼,高四位通常為0000,它對這個字節(jié)所表示的十進制數(shù)無影響。76543210
BCD碼39BCD碼的加減運算例:用BCD碼求38+49
0011
1000
38的BCD碼+0100100149的BCD碼
1000
0001
81的BCD碼錯誤原因分析:由于BCD編碼是將每個十進制數(shù)用一組4位二進制數(shù),即一個十六進制數(shù)表示。在十進制數(shù)中是“逢十進一”和“借一當(dāng)十”,而計算機按二進制數(shù)運算,是“逢十六進一”和“借一當(dāng)十六”,這樣在BCD碼的加減法運算的結(jié)果會出現(xiàn)錯誤。40BCD碼的加減運算由于BCD碼加法會出錯,解決的方法就是“加6修正”,其規(guī)則是:⑴如果任何兩個對應(yīng)位BCD數(shù)相加的結(jié)果向高一位無進位時,若得到的結(jié)果小于或等于9,則該位不需修正;若得到的結(jié)果大于9且小于16時,該位就需要修正。⑵如果任何兩個對應(yīng)位BCD數(shù)相加的結(jié)果向高一位有進位時(即結(jié)果大于或等于16),該位進行加6修正。⑶低位修正結(jié)果使高位大于9時,高位進行加6修正。這種修正稱為BCD調(diào)整。同樣在進行減法運算時,可采用“減6修正法”。在計算機中,還有BCD調(diào)整指令,可得到正確的結(jié)果。41BCD碼的加減運算例:用BCD碼求38+49
0011
1000
38的BCD碼+0100100149的BCD碼
1000
0001低四位向高四位有進位
0000
0110低四位加6修正
1000
0111
87正確結(jié)果42ASCII字符編碼計算機既要處理數(shù)值數(shù)據(jù),還要處理字母、數(shù)字和符號(簡稱字符),而計算機內(nèi)部只能識別二進制代碼,所以必須將字符進行編碼目前微型計算機普遍采用的是美國國家信息交換標(biāo)準(zhǔn)字符碼—ASCII碼(AmericanStandardCodeforInformationInterchange)43ASCII字符編碼ASCII碼采用7位二進制代碼對字符編碼,故可表示128個字符
44ASCII字符編碼一個字節(jié)為8位,在用一個字節(jié)表示一個ASCII碼時,通常認為最高位為0。有時根據(jù)需要也用最高位作為奇偶校驗位,用來檢驗代碼在存儲和發(fā)送過程中是否發(fā)生錯誤。偶校驗時,每個代碼的二進制形式中應(yīng)有偶數(shù)個1;奇校驗時,每個代碼中應(yīng)有奇數(shù)個1。奇偶校驗只具有發(fā)現(xiàn)代碼在存儲和發(fā)送過程中出現(xiàn)的奇數(shù)個位出現(xiàn)錯誤的能力,由于簡單可行,它被廣泛地用于信息的存儲和傳送。45ASCII碼字符表(7位碼)
000010012010301141005101611071110123450000000100100011010001016789A0110011110001001101010111100110111101111BCDEFNULSOHSTXETXEOTENQDLEDC1DC2DC3DC4NAKSP!“#$%012345@ABCDEPQRSTU、abcdepqrstuACKBELBSHTLFSYNETBCANEMSUB&‘()*6789:FGHIJVWXYZfghijvwxyzVTFFCRSOSIESCFSGSRSUS+,—。/;<=>
溫馨提示
- 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年ZA系列甲苯歧化催化劑項目發(fā)展計劃
- 舞蹈基礎(chǔ)知識
- 腦卒中第三級預(yù)防
- 西洋樂器企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 鋸材企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 絨布類衫褲企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 住宅物業(yè)管理企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 股票交易企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 河北省邢臺市2024-2025學(xué)年高一上學(xué)期期末語文試題
- 清潔用品批發(fā)企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 物流園區(qū)倉儲管理手冊
- 職業(yè)技術(shù)學(xué)院《口腔頜面外科學(xué)》課程標(biāo)準(zhǔn)
- 高中英語北師大版(2019)必修第二冊Unit 5 Humans and Nature Lesson 1 A sea story 教學(xué)設(shè)計
- 港口液體?;费b卸管理人員理論考試題及答案
- TSG ZF001-2006《安全閥安全技術(shù)監(jiān)察規(guī)程》
- 13《少年中國說》課件
- 2024版小學(xué)英語新課程標(biāo)準(zhǔn)測試題及答案
- 《學(xué)前兒童藝術(shù)教育活動指導(dǎo)》第7章
- 2025年駕駛證資格考試科目一必刷題庫及答案(共300題)
- 南京醫(yī)科大學(xué)科技成果轉(zhuǎn)移轉(zhuǎn)化管理辦法-資產(chǎn)管理處
- AQ 1110-2014 煤礦帶式輸送機用盤式制動裝置安全檢驗規(guī)范(正式版)
評論
0/150
提交評論