㈠進(jìn)位計(jì)數(shù)制表示方法 任意一個(gè)數(shù)N可以用下式表示: N=(dn-1 dn-2 …… d1 d0 d-1 …… d-m)r = dn-1 rn-1 + dn-2rn-2 + …… +d1r1 + d0r0 + d-1 r-1 + …… d-m r-m 其中:r為基數(shù) n、m為正整數(shù),分別代表整數(shù)和小數(shù)的位數(shù) di 為第i位的數(shù)碼,可以是0~(r-1)中的一個(gè) ri 為第i位的權(quán) ㈡不同進(jìn)位計(jì)數(shù)制的相互轉(zhuǎn)換 1.二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù) 1)按“權(quán)”展開法 例(11011.1)2=1×24+1×23+0×22+1×21+1×20+1×2-1 =27.5 2)按基值重復(fù)相乘(除)法 (略) 2.十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù) 1)重復(fù)相除(乘)法 規(guī)則:① 整數(shù)部分除2取余數(shù),直到商為0; ② 小數(shù)部分乘2取整數(shù),直到小數(shù)部分為0。 例 將十進(jìn)制數(shù)123.6875轉(zhuǎn)換成二進(jìn)制數(shù) 解: ① 整數(shù)部分 重復(fù)除以2 得商 余數(shù) 123÷2 61 1 最低位 61÷2 30 1 30÷2 15 0 15÷2 7 1 7÷2 3 1 3÷2 1 1 1÷2 0 1 最高位 整數(shù)部分 (123)10 = 1111011 ② 小數(shù)部分 重復(fù)乘以2 得乘積 取整數(shù)部分 0.6875×2 1.3750 1 最高位 0.3750×2 0.7500 0 0.7500×2 1.5000 1 0.5000×2 1.0000 1 最低位 小數(shù)部分 (0.6875)10 = 1011 故(123.6875)10 = 1111011.1011 2)減權(quán)定位法 (略) 3.二進(jìn)制數(shù)與八進(jìn)制數(shù)、十六進(jìn)制數(shù)之間的轉(zhuǎn)換 ① 3位二進(jìn)制數(shù)對(duì)應(yīng)于1位八進(jìn)制數(shù) ② 4位二進(jìn)制數(shù)對(duì)應(yīng)于1位十六進(jìn)制數(shù) 例 將二進(jìn)制數(shù)(1111000010.01101)轉(zhuǎn)換成八進(jìn)制和十六進(jìn)制數(shù)。 解:① 轉(zhuǎn)換成八進(jìn)制數(shù) 以小數(shù)點(diǎn)為基準(zhǔn)點(diǎn),按3位為一組劃分二進(jìn)制數(shù),然后將每一組二進(jìn)制碼分別轉(zhuǎn)換成對(duì)應(yīng)的八進(jìn)制碼。 001,111,000,010.011,010 1 7 0 2 . 3 2 即1111000010.01101 = (1702.32)8 ② 轉(zhuǎn)換成十六進(jìn)制數(shù) 以小數(shù)點(diǎn)為基準(zhǔn)點(diǎn),按4位為一組劃分二進(jìn)制數(shù),然后將每一組二進(jìn)制碼分別轉(zhuǎn)換成對(duì)應(yīng)的八進(jìn)制碼。 0011,1100,0010.0110,1000 3 C 2 . 6 8 即1111000010.01101 = (3C2.68)16 反過來(lái),1位八進(jìn)制數(shù)對(duì)應(yīng)于3位二進(jìn)制數(shù),1位十六進(jìn)制數(shù)對(duì)應(yīng)于4位二進(jìn)制數(shù),如: (7652.342)8 = 111,110,101,010.011,100,010 (8CE4.D62)16 = 1000,1100,1110,0100.1101,0110,0010 2.2計(jì)算機(jī)中數(shù)值型數(shù)據(jù)的表示方法 2.2.1 無(wú)符號(hào)數(shù)和有符號(hào)數(shù) ㈠ 無(wú)符號(hào)數(shù) 無(wú)符號(hào)數(shù)是指沒有符號(hào)的數(shù),即正整數(shù),在機(jī)器字長(zhǎng)中的全部數(shù)位均用來(lái)表示數(shù)值的大小,相當(dāng)于數(shù)的絕對(duì)值。 例如10010110表示96H(十進(jìn)制數(shù)150)。 對(duì)于字長(zhǎng)為n位的無(wú)符號(hào)數(shù)的表示范圍是0~(2n-1)。如機(jī)器字長(zhǎng)16位,無(wú)符號(hào)數(shù)的表示范圍為0~65535。 ㈡ 有符號(hào)數(shù) 1、機(jī)器真值 對(duì)有符號(hào)數(shù),在機(jī)器內(nèi)部用“1”表示“+”號(hào),用“0”表示“-”,即用數(shù)字來(lái)表示“+”、“-”號(hào),并規(guī)定放在有效數(shù)字的前面。 例如有符號(hào)數(shù)(小數(shù)): +0.1011 在機(jī)器中表示為 01011 ↑小數(shù)點(diǎn)位置 -0.1011 在機(jī)器中表示為 11011 ↑小數(shù)點(diǎn)位置 又如有符號(hào)數(shù)(整數(shù)): +1100 在機(jī)器中表示為 01100 ↑小數(shù)點(diǎn)位置 -1100 在機(jī)器中表示為 11100 ↑小數(shù)點(diǎn)位置 有符號(hào)數(shù)是指將符號(hào)數(shù)字化后放在有效數(shù)字的前面而組成的數(shù)。把符號(hào)“數(shù)字化”的數(shù)叫做機(jī)器數(shù),而把帶正、負(fù)號(hào)的數(shù)叫做真值。 2、原碼表示法 原碼表示法是一種最簡(jiǎn)單的機(jī)器數(shù)表示法,用最高位表示符號(hào)位,符號(hào)位為“O”表示該數(shù)為正,符號(hào)位為“I”表示該數(shù)為負(fù),數(shù)值部分就是原來(lái)的數(shù)值,即真值的絕對(duì)值,所以原碼表示又稱作帶符號(hào)的絕對(duì)值表示。 為了書寫方便,約定在整數(shù)的符號(hào)位和有效數(shù)值之間加“,”表示區(qū)分,對(duì)小數(shù),直接用小數(shù)點(diǎn)“.”來(lái)區(qū)分,如0.1011、1.1011、0,1100、1,1100。 整數(shù)原碼的定義為: 0,x 0≤x<2n 2n – x = 2n + |x| -2n<x≤0 小數(shù)原碼的定義為: x 0≤x<1 1– x = 1 + |x| -1<x≤0 式中x為真值,n為整數(shù)的位數(shù)。 例1: +1001010的原碼為:[x]原 = 01001010 -1001010的原碼為:[x]原 = 2n+1 + 1001010 = 11001010 例2: +0.100101的原碼為:[x]原 = 0.100101 -0.100101的原碼為:[x]原 = 1 + 0.100101 = 1.100101 當(dāng)x=0時(shí) [+0.0000]原=0.0000 [-0.0000]原=1-(-0.0000)=1.0000 即[+0]原不等于[-0]原,即原碼中“零”有兩種表示形式。 優(yōu)點(diǎn):直觀易懂,機(jī)器數(shù)和真值間的相互轉(zhuǎn)換很容易,用原碼實(shí)現(xiàn)乘、除運(yùn)算的規(guī)則很簡(jiǎn)單; 缺點(diǎn):實(shí)現(xiàn)加、減運(yùn)算的規(guī)則較復(fù)雜。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請(qǐng)聯(lián)系刪除!