2010年一級(jí)結(jié)構(gòu)基礎(chǔ)輔導(dǎo):(計(jì)算機(jī)應(yīng)用基礎(chǔ))備考講義(2)

字號(hào):

三、數(shù)制轉(zhuǎn)換轉(zhuǎn)
    計(jì)算機(jī)內(nèi)的數(shù)可有二進(jìn)制、八進(jìn)制、十六進(jìn)制、十進(jìn)制等不同的表現(xiàn)形式。人們多習(xí)慣于用十進(jìn)制,計(jì)算機(jī)則主要使用二進(jìn)制。因?yàn)橥粋€(gè)數(shù)可表示成不同進(jìn)制的形式,故常有必要進(jìn)行數(shù)制間的轉(zhuǎn)換。
    我們可以一般地描述r進(jìn)制,其中r是一個(gè)大于1的正整數(shù)。r進(jìn)制有如下特點(diǎn):(1)數(shù)的每一位只能取r個(gè)不同的數(shù)字,其符號(hào)集是{0,1,…r-1};(2)逢r進(jìn)位,r進(jìn)制數(shù)的從小數(shù)點(diǎn)開始向左的第i位數(shù)(i=0,l,…, m)的權(quán)是ri,從小數(shù)點(diǎn)開始向右的第i位數(shù)(i =I,2,…,m)的權(quán)是ri。我們用( ) r表示括號(hào)內(nèi)的數(shù)是r進(jìn)制數(shù)。
    因此,對(duì)r進(jìn)制數(shù)(amam-1…ala0a-1 a-2…a-n)r按權(quán)展開的表達(dá)式為:
    (amam-1…ala0a-1 a-2…a-n)r
    =am×rm+am-1×rm-1+。。。+a1×r1+a0×r0+a-1×r-1+a-2×r-2+。。。+a-n×r-n (7-1-1)
    例如,對(duì)十進(jìn)制數(shù), r=10,符號(hào)集為{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}。對(duì)十六進(jìn)制數(shù),r=16,符號(hào)集為{0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F}。不同數(shù)制之間的轉(zhuǎn)換,對(duì)于整數(shù)部分,往往可直接按定義進(jìn)行,即直接法,也可用余 數(shù)法轉(zhuǎn)換。采用余數(shù)法時(shí),若要將r進(jìn)制的整數(shù)M轉(zhuǎn)換成t進(jìn)制數(shù)的整數(shù),則把M除以 t并取余,再把上述得數(shù)除以t并取余,……,直至不能再除時(shí),最后的商也作為余數(shù)。 所有的余數(shù)按從后到前的次序依次從左到右排列就構(gòu)成了所要求的t進(jìn)制數(shù)。
     【例7-1-1】把(1101011)2轉(zhuǎn)換成十進(jìn)制數(shù)。
    【解】用直接法。
    (1101011)2=1×26 + 1×25 + 0×24 + 1×23 + 0×22 + 1×21十1×20= (107) 10
    【例7-1-2】把(107) 10轉(zhuǎn)換成二進(jìn)制數(shù)。
    【解】用余數(shù)法。107/2得53余1; 53/2得26余1; 26/2得13余0; 13/2得6余 1; 6/2得3余0; 3/2得1余1。把最后的得數(shù)1亦作為余數(shù),把所有的余數(shù)按從后到前 的次序從左到右排列得:
    (107)10 = (1101011)2不同數(shù)制之間的轉(zhuǎn)換,對(duì)于小數(shù)部分,可用取整法,即:要將r進(jìn)制數(shù)的小數(shù)M轉(zhuǎn) 換成t進(jìn)制數(shù)的小數(shù)時(shí),把M乘t ,取整數(shù)部分;又取上一步得數(shù)的小數(shù)部分再乘t,再 取整數(shù)部分;……;直至完畢或達(dá)到要求的位數(shù)。然后把各整數(shù)按從前到后的次序從左到 右排列,即構(gòu)成所求的小數(shù)部分。