二進制、八進制、十進制、十六進制四種算法_第1頁
二進制、八進制、十進制、十六進制四種算法_第2頁
二進制、八進制、十進制、十六進制四種算法_第3頁
二進制、八進制、十進制、十六進制四種算法_第4頁
二進制、八進制、十進制、十六進制四種算法_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

二進制、八進制、十進制、十六進制四種算法之間的互相轉(zhuǎn)換Tag:二進制,八進制,十六進制,十進制|Author:jakee|一)、數(shù)制計算機中采用的是二進制,因為二進制具有運算簡單,易實現(xiàn)且可靠,為邏輯設(shè)計提供了有利的途徑、節(jié)省設(shè)備等優(yōu)點,為了便于描述,又常用八、十六進制作為二進制的縮寫。一般計數(shù)都采用進位計數(shù),其特點是:逢N進一,是每種進位計數(shù)制表示一位數(shù)所需要的符號數(shù)目為基數(shù)。采用位置表示法,處在不同位置的數(shù)字所代表的值不同,而在固定位置上單位數(shù)字表示的值是確定的,這個固定位上的值稱為權(quán)。在計算機中:D7D6D5D4D3D2D1D0只有兩種0和18421二)、數(shù)制轉(zhuǎn)換不同進位計數(shù)制之間的轉(zhuǎn)換原則:不同進位計數(shù)制之間的轉(zhuǎn)換是根據(jù)兩個有理數(shù)如相等,則兩數(shù)的整數(shù)和分數(shù)部分一定分別相等的原則進行的。也就是說,若轉(zhuǎn)換前兩數(shù)相等,轉(zhuǎn)換后仍必須相等。有四進制:十進制:有10個基數(shù):0~~9,逢十進一二進制:有2個基數(shù):0~~1,逢二進一八進制:有8個基數(shù):0~~7,逢八進一十六進制:有16個基數(shù):0~~9,A,B,C,D,E,F(xiàn)(A=10,B=11,C=12,D=13,E=14,F=15),逢十六進一1、數(shù)的進位記數(shù)法N=anT*pnT+an-2*pn-2+???+a2*p2+a1*p1+a0*p02、十進制數(shù)與P進制數(shù)之間的轉(zhuǎn)換①十進制轉(zhuǎn)換成二進制:十進制整數(shù)轉(zhuǎn)換成二進制整數(shù)通常采用除2取余法,小數(shù)部分乘2取整法。例如,將(30)10轉(zhuǎn)換成二進制數(shù)。將(30)10轉(zhuǎn)換成二進制數(shù)2|30….0 最右位215….127….123….11….1 最左位???(30)10二(11110)2將(30)10轉(zhuǎn)換成八、十六進制數(shù)8|30……6 最右位3 最左位? (30)10=(36)81630…14(E) 最右位1 最左位? (30)10=(1E)163、將P進制數(shù)轉(zhuǎn)換為十進制數(shù)把一個二進制轉(zhuǎn)換成十進制采用方法:把這個二進制的最后一位乘上20,倒數(shù)第二位乘上21, ,—直到最高位乘上2n,然后將各項乘積相加的結(jié)果就它的十進制表達式。把二進制11110轉(zhuǎn)換為十進制(11110)2=1*24+1*23+1*22+1*21+0*20==16+8+4+2+0=(30)10把一個八進制轉(zhuǎn)換成十進制采用方法:把這個八進制的最后一位乘上80,倒數(shù)第二位乘上81, ,—直到最高位乘上8n,然后將各項乘積相加的結(jié)果就它的十進制表達式。把八進制36轉(zhuǎn)換為十進制(36)8=3*81+6*80=24+6=(30)10把一個十六進制轉(zhuǎn)換成十進制采用方法:把這個十六進制的最后一位乘上160,倒數(shù)第二位乘上161, ,—直到最高位乘上16n,然后將各項乘積相加的結(jié)果就它的十進制表達式。把十六制1E轉(zhuǎn)換為十進制(1E)16=1*161+14*160=16+14=(30)103、 二進制轉(zhuǎn)換成八進制數(shù)二進制數(shù)轉(zhuǎn)換成八進制數(shù):對于整數(shù),從低位到高位將二進制數(shù)的每三位分為一組,若不夠三位時,在高位左面添0,補足三位,然后將每三位二進制數(shù)用一位八進制數(shù)替換,小數(shù)部分從小數(shù)點開始,自左向右每三位一組進行轉(zhuǎn)換即可完成。例如:將二進制數(shù)1101001轉(zhuǎn)換成八進制數(shù),則(001101001)2(151)8(1101001)2=(151)8八進制數(shù)轉(zhuǎn)換成二進制數(shù):只要將每位八進制數(shù)用三位二進制數(shù)替換,即可完成轉(zhuǎn)換,例如,把八進制數(shù)(643.503)8,轉(zhuǎn)換成二進制數(shù),則(643.503)8(110100011.101000011)2(643.503)8=(110100011.101000011)24、 二進制與十六進制之間的轉(zhuǎn)換(1)二進制數(shù)轉(zhuǎn)換成十六進制數(shù):由于2的4次方=16,所以依照二進制與八進制的轉(zhuǎn)換方法,將二進制數(shù)的每四位用一個十六進制數(shù)碼來表示,整數(shù)部分以小數(shù)點為界點從右往左每四位一組轉(zhuǎn)換,小數(shù)部分從小數(shù)點開始自左向右每四位一組進行轉(zhuǎn)換。(2)十六進制轉(zhuǎn)換成二進制數(shù)如將十六進制數(shù)轉(zhuǎn)換成二進制數(shù),只要將每一位十六進制數(shù)用四位相應(yīng)的二進制數(shù)表示,即可完成轉(zhuǎn)換。例如:將(163?5B)16轉(zhuǎn)換成二進制數(shù),則(163.5B)16(000101100011.01011011)2(163.5B)16=(101100011.01011011)2二進制,八進制,十進制,十六進制之間的轉(zhuǎn)換算法一、 十進制與二進制之間的轉(zhuǎn)換(1)十進制轉(zhuǎn)換為二進制,分為整數(shù)部分和小數(shù)部分①整數(shù)部分方法:除2取余法,即每次將整數(shù)部分除以2,余數(shù)為該位權(quán)上的數(shù),而商繼續(xù)除以2,余數(shù)又為上一個位權(quán)上的數(shù),這個步驟一直持續(xù)下去,直到商為0為止,最后讀數(shù)時候,從最后一個余數(shù)讀起,一直到最前面的一個余數(shù)。下面舉例:例:將十進制的168轉(zhuǎn)換為二進制得出結(jié)果將十進制的168轉(zhuǎn)換為二進制,(10101000)2分析:第一步,將168除以2,商84,余數(shù)為0。第二步,將商84除以2,商42余數(shù)為0。第三步,將商42除以2,商21余數(shù)為0。第四步,將商21除以2,商10余數(shù)為1。第五步,將商10除以2,商5余數(shù)為0。第六步,將商5除以2,商2余數(shù)為1。第七步,將商2除以2,商1余數(shù)為0。第八步,將商1除以2,商0余數(shù)為1。第九步,讀數(shù),因為最后一位是經(jīng)過多次除以2才得到的,因此它是最高位,讀數(shù)字從最后的余數(shù)向前讀,即10101000(2)小數(shù)部分方法:乘2取整法,即將小數(shù)部分乘以2,然后取整數(shù)部分,剩下的小數(shù)部分繼續(xù)乘以2,然后取整數(shù)部分,剩下的小數(shù)部分又乘以2,一直取到小數(shù)部分為零為止。如果永遠不能為零,就同十進制數(shù)的四舍五入一樣,按照要求保留多少位小數(shù)時,就根據(jù)后面一位是0還是1,取舍,如果是零,舍掉,如果是1,向入一位。換句話說就是0舍1入。讀數(shù)要從前面的整數(shù)讀到后面的整數(shù),下面舉例:例1:將0.125換算為二進制得出結(jié)果:將0.125換算為二進制(0.001)2分析:第一步,將0.125乘以2,得0.25,則整數(shù)部分為0,小數(shù)部分為0.25;第二步,將小數(shù)部分0.25乘以2,得0.5,則整數(shù)部分為0,小數(shù)部分為0.5;第三步,將小數(shù)部分0.5乘以2,得1.0,則整數(shù)部分為1,小數(shù)部分為0.0;第四步,讀數(shù),從第一位讀起,讀到最后一位,即為0.001。例2,將0.45轉(zhuǎn)換為二進制(保留到小數(shù)點第四位)大家從上面步驟可以看出,當(dāng)?shù)谖宕巫龀朔〞r候,得到的結(jié)果是0.4,那么小數(shù)部分繼續(xù)乘以2,得0.8,0.8又乘以2的,到1.6這樣一直乘下去,最后不可能得到小數(shù)部分為零,因此,這個時候只好學(xué)習(xí)十進制的方法進行四舍五入了,但是二進制只有0和1兩個,于是就出現(xiàn)0舍1入。這個也是計算機在轉(zhuǎn)換中會產(chǎn)生誤差,但是由于保留位數(shù)很多,精度很高,所以可以忽略不計。那么,我們可以得出結(jié)果將0.45轉(zhuǎn)換為二進制約等于0.0111上面介紹的方法是十進制轉(zhuǎn)換為為二進制的方法,需要大家注意的是:十進制轉(zhuǎn)換為二進制,需要分成整數(shù)和小數(shù)兩個部分分別轉(zhuǎn)換當(dāng)轉(zhuǎn)換整數(shù)時,用的除2取余法,而轉(zhuǎn)換小數(shù)時候,用的是乘2取整法注意他們的讀數(shù)方向因此,我們從上面的方法,我們可以得出十進制數(shù)168.125轉(zhuǎn)換為二進制為10101000.001,或者十進制數(shù)轉(zhuǎn)換為二進制數(shù)約等于10101000.0111。二進制轉(zhuǎn)換為十進制不分整數(shù)和小數(shù)部分方法:按權(quán)相加法,即將二進制每位上的數(shù)乘以權(quán),然后相加之和即是十進制數(shù)。例將二進制數(shù)101.101轉(zhuǎn)換為十進制數(shù)。得出結(jié)果:(101.101)2=(5.625)10大家在做二進制轉(zhuǎn)換成十進制需要注意的是1)要知道二進制每位的權(quán)值2)要能求出每位的值二、 二進制與八進制之間的轉(zhuǎn)換首先,我們需要了解一個數(shù)學(xué)關(guān)系,即23=8,24=16,而八進制和十六進制是用這關(guān)系衍生而來的,即用三位二進制表示一位八進制,用四位二進制表示一位十六進制數(shù)。接著,記住4個數(shù)字8、4、2、1(23=8、22=4、21=2、20=1)?,F(xiàn)在我們來練習(xí)二進制與八進制之間的轉(zhuǎn)換。(1)二進制轉(zhuǎn)換為八進制方法:取三合一法,即從二進制的小數(shù)點為分界點,向左(向右)每三位取成一位,接著將這三位二進制按權(quán)相加,得到的數(shù)就是一位八位二進制數(shù),然后,按順序進行排列,小數(shù)點的位置不變,得到的數(shù)字就是我們所求的八進制數(shù)。如果向左(向右)取三位后,取到最高(最低)位時候,如果無法湊足三位可以在小數(shù)點最左邊(最右邊),即整數(shù)的最高位(最低位)添0,湊足三位。例①將二進制數(shù)101110.101轉(zhuǎn)換為八進制得到結(jié)果:將101110.101轉(zhuǎn)換為八進制為56.5②將二進制數(shù)1101.1轉(zhuǎn)換為八進制得到結(jié)果:將1101.1轉(zhuǎn)換為八進制為15.4(2)將八進制轉(zhuǎn)換為二進制方法:取一分三法,即將一位八進制數(shù)分解成三位二進制數(shù),用三位二進制按權(quán)相加去湊這位八進制數(shù),小數(shù)點位置照舊。例:①將八進制數(shù)67.54轉(zhuǎn)換為二進制因此,將八進制數(shù)67.54轉(zhuǎn)換為二進制數(shù)為110111.101100,即110111.1011大家從上面這道題可以看出,計算八進制轉(zhuǎn)換為二進制首先,將八進制按照從左到右,每位展開為三位,小數(shù)點位置不變?nèi)缓?,按每位展開為22,21,20(即4、2、1)三位去做湊數(shù),即aX22+bX21+cX20=該位上的數(shù)(a=l或者a=0,b=1或者b=0,c=1或者c=0),將abc排列就是該位的二進制數(shù)接著,將每位上轉(zhuǎn)換成二進制數(shù)按順序排列最后,就得到了八進制轉(zhuǎn)換成二進制的數(shù)字。以上的方法就是二進制與八進制的互換,大家在做題的時候需要注意的是1) 他們之間的互換是以一位與三位轉(zhuǎn)換,這個有別于二進制與十進制轉(zhuǎn)換2) 大家在做添0和去0的時候要注意,是在小數(shù)點最左邊或者小數(shù)點的最右邊(即整數(shù)的最高位和小數(shù)的最低位)才能添0或者去0,否則將產(chǎn)生錯誤三、 二進制與十六進制的轉(zhuǎn)換方法:與二進制與八進制轉(zhuǎn)換相似,只不過是一位(十六)與四位(二進制)的轉(zhuǎn)換,下面具體講解(1)二進制轉(zhuǎn)換為十六進制方法:取四合一法,即從二進制的小數(shù)點為分界點,向左(向右)每四位取成一位,接著將這四位二進制按權(quán)相加,得到的數(shù)就是一位十六位二進制數(shù),然后,按順序進行排列,小數(shù)點的位置不變,得到的數(shù)字就是我們所求的十六進制數(shù)。如果向左(向右)取四位后,取到最高(最低)位時候,如果無法湊足四位,可以在小數(shù)點最左邊(最右邊),即整數(shù)的最高位(最低位)添0,湊足四位。①例:將二進制11101001.1011轉(zhuǎn)換為十六進制得到結(jié)果:將二進制11101001.1011轉(zhuǎn)換為十六進制為E9.B②例:將101011.101轉(zhuǎn)換為十六進制因此得到結(jié)果:將二進制101011.101轉(zhuǎn)換為十六進制為2B.A(2)將十六進制轉(zhuǎn)換為二進制方法:取一分四法,即將一位十六進制數(shù)分解成四位二進制數(shù),用四位二進制按權(quán)相加去湊這位十六進制數(shù),小數(shù)點位置照舊。①將十六進制6E.2轉(zhuǎn)換為二進制數(shù)因此得到結(jié)果:將十六進制6E.2轉(zhuǎn)換為二進制為01101110.0010即110110.001四、八進制與十六進制的轉(zhuǎn)換方法:一般不能互相直接轉(zhuǎn)換,一般是將八進制(或十六進制)轉(zhuǎn)換為二進制,然后再將二進制轉(zhuǎn)換為十六進制(或八進制),小數(shù)點位置不變。那么相應(yīng)的轉(zhuǎn)換請參照上面二進制與八進制的轉(zhuǎn)換和二進制與十六進制的轉(zhuǎn)五、八進制與十進制的轉(zhuǎn)換(1) 八進制轉(zhuǎn)換為十進制方法:按權(quán)相加法,即將八進制每位上的數(shù)乘以位權(quán),然后相加之和即是十進制數(shù)。例:①將八進制數(shù)67.35轉(zhuǎn)換為十進制(2) 十進制轉(zhuǎn)換為八進制十進制轉(zhuǎn)換成八進制有兩種方法:1) 間接法:先將十進制轉(zhuǎn)換成二進制,然后將二進制又轉(zhuǎn)換成八進制2) 直接法:前面我們講過,八進制是由二進制衍生而來的,因此我們可以采用與十進制轉(zhuǎn)換為二進制相類似的方法,還是整數(shù)部分的轉(zhuǎn)換和小數(shù)部分的轉(zhuǎn)換,下面來具體講解一下:①整數(shù)部分方法:除8取余法,即每次將整數(shù)部分除以8,余數(shù)為該位權(quán)上的數(shù),而商繼續(xù)除以8,余數(shù)又為上一個位權(quán)上的數(shù),這個步驟一直持續(xù)下去,直到商為0為止,最后讀數(shù)時候,從最后一個余數(shù)起,一直到最前面的一個余數(shù)。②小數(shù)部分方法:乘8取整法,即將小數(shù)部分乘以8,然后取整數(shù)部分,剩下的小數(shù)部分繼續(xù)乘以8,然后取整數(shù)部分,剩下的小數(shù)部分又乘以8,一直取到小數(shù)部分為零為止。如果永遠不能為零,就同十進制數(shù)的四舍五入一樣,暫取個名字叫3舍4入。例:將十進制數(shù)796.703125轉(zhuǎn)換為八進制數(shù)解:先將這個數(shù)字分為整數(shù)部分796和小數(shù)部分0.703125整數(shù)部分小數(shù)部分因此,得到結(jié)果十進制796.703125轉(zhuǎn)換八進制為1434.55上面的方法大家可以驗證一下,你可以先將十進制轉(zhuǎn)換,然后在轉(zhuǎn)換為八進制,這樣看得到的結(jié)果是否一樣六、十六進制與十進制的轉(zhuǎn)換十六進制與八進制有很多相似之處,大家可以參照上面八進制與十進制的轉(zhuǎn)換自己試試這兩個進制之間的轉(zhuǎn)換。十六進制數(shù)轉(zhuǎn)換成十進制數(shù)2進制,用兩個阿拉伯?dāng)?shù)字:0、1;8進制,用八個阿拉伯?dāng)?shù)字:0、1、2、3、4、5、6、7;10進制,用十個阿拉伯?dāng)?shù)字:0到9;16進制,用十六個阿拉伯?dāng)?shù)字……等等,阿拉伯人或說是印度人,只發(fā)明了10個數(shù)字?。?6進制就是逢16進1,但我們只有0~9這十個數(shù)字,所以我們用A,B,C,D,E,F這五個字母來分別表示10,11,12,13,14,15。字母不區(qū)分大小寫。十六進制數(shù)的第0位的權(quán)值為16的0次方,第1位的權(quán)值為16的1次方,第2位的權(quán)值為16的2次方……所以,在第N(N從0開始)位上,如果是是數(shù)X(X大于等于0,并且X小于等于15,即:F)表示的大小為X*16的N次方。假設(shè)有一個十六進數(shù)2AF5,那么如何換算成10進制呢?用豎式計算:2AF5換算成10進制:第0位:5*16A0=5第1位:F*16A1=240第2位:A*16A2=2560第3位:2*16A3=8192+10997直接計算就是:5*16A0+F*16A1+A*16八2+2*16A3=10997(別忘了,在上面的計算中,A表示10,而F表示15)現(xiàn)在可以看出,所有進制換算成10進制,關(guān)鍵在于各自的權(quán)值不同。假設(shè)有人問你,十進數(shù)1234為什么是一千二百三十四?你盡可以給他這么一個算式:1234=1*10A3+2*10A2+3*10A1+4*10A0十六進制數(shù)的表達方法如果不使用特殊的書寫形式,16進制數(shù)也會和10進制相混。隨便一個數(shù):9876,就看不出它是16進制或10進制。C,C++規(guī)定,16進制數(shù)必須以0x開頭。比如0X1表示一個16進制數(shù)。而1則表示一個十進制。另外如:0xff,0xFF,0X102A,等等。其中的x也也不區(qū)分大小寫。(注意:0x中的0是數(shù)字0,而不是字母O)以下是一些用法示例:inta=0x100F;intb=0x70+a;至此,我們學(xué)完了所有進制:10進制,8進制,16進制數(shù)的表達方式。最后一點很重要,C/C++中,10進制數(shù)有正負之分,比如12表示正12,而-12表示負12,;但8進制和16進制只能用達無符號的正整數(shù),如果你在代碼中里:-078,或者寫:-0xF2,C,C++并不把它當(dāng)成一個負數(shù)。十六進制數(shù)在轉(zhuǎn)義符中的使用轉(zhuǎn)義符也可以接一個16進制數(shù)來表示一個字符。如在6.2.4小節(jié)中說的‘?'字符,可以有以下表達方式:‘?' //直接輸入字符5 〃用八進制,此時可以省略開頭的0‘\0x3F'〃用十六進制同樣,這一小節(jié)只用于了解。除了空字符用八進制數(shù)‘\0‘表示以外,我們很少用后兩種方法表示一個字符。十進制數(shù)轉(zhuǎn)換到二、八、十六進制數(shù)6.3.110進制數(shù)轉(zhuǎn)換為2進制數(shù)給你一個十進制,比如:6,如果將它轉(zhuǎn)換成二進制數(shù)呢?10進制數(shù)轉(zhuǎn)換成二進制數(shù),這是一個連續(xù)除2的過程:把要轉(zhuǎn)換的數(shù),除以2,得到商和余數(shù),將商繼續(xù)除以2,直到商為0。最后將所有余數(shù)倒序排列,得到數(shù)就是轉(zhuǎn)換結(jié)果。聽起來有些糊涂?我們結(jié)合例子來說明。比如要轉(zhuǎn)換6為二進制數(shù)?!鞍岩D(zhuǎn)換的數(shù),除以2,得到商和余數(shù)”。那么:要轉(zhuǎn)換的數(shù)是6,6F2,得到商是3,余數(shù)是0。(不要告訴我你不會計算6^3!)“將商繼續(xù)除以2,直到商為0……”現(xiàn)在商是3,還不是0,所以繼續(xù)除以2。那就:3F2,得到商是1,余數(shù)是1。“將商繼續(xù)除以2,直到商為0……”現(xiàn)在商是1,還不是0,所以繼續(xù)除以2。那就:1F2,得到商是0,余數(shù)是1(拿筆紙算一下,1F2是不是商0余1!)“將商繼續(xù)除以2,直到商為0……最后將所有余數(shù)倒序排列”好極!現(xiàn)在商已經(jīng)是0。我們?nèi)斡嬎阋来蔚玫接鄶?shù)分別是:0、1、1,將所有余數(shù)倒序排列,那就是:110了!6轉(zhuǎn)換成二進制,結(jié)果是110。把上面的一段改成用表格來表示,則為:被除數(shù)計算過程商余數(shù)66/23033/21111/201(在計算機中,三用/來表示)如果是在考試時,我們要畫這樣表還是有點費時間,所更常見的換算過程是使用下圖的連除:(圖:1)請大家對照圖,表,及文字說明,并且自已拿筆計算一遍如何將6轉(zhuǎn)換為二進制數(shù)。說了半天,我們的轉(zhuǎn)換結(jié)果對嗎?二進制數(shù)110是6嗎?你已經(jīng)學(xué)會如何將二進制數(shù)轉(zhuǎn)換成10進制數(shù)了,所以請現(xiàn)在就計算一下110換成10進制是否就是6。6.3.210進制數(shù)轉(zhuǎn)換為8、16進制數(shù)非常開心,10進制數(shù)轉(zhuǎn)換成8進制的方法,和轉(zhuǎn)換為2進制的方法類似,惟一變化:除數(shù)由2變成8。來看一個例子,如何將十進制數(shù)120轉(zhuǎn)換成八進制數(shù)。用表格表示:被除數(shù)計算過程商余數(shù)120120/81501515/81711/801120轉(zhuǎn)換為8進制,結(jié)果為:170。非常非常開心,10進制數(shù)轉(zhuǎn)換成16進制的方法,和轉(zhuǎn)換為2進制的方法類似,惟一變化:除數(shù)由2變成16。同樣是120,轉(zhuǎn)換成16進制則為:被除數(shù)計算過程商余數(shù)120120/167877/1607120轉(zhuǎn)換為16進制,結(jié)果為:78。請拿筆紙,采用(圖:1)的形式,演算上面兩個表的過程。二、十六進制數(shù)互相轉(zhuǎn)換二進制和十六進制的互相轉(zhuǎn)換比較重要。不過這二者的轉(zhuǎn)換卻不用計算,每個C,C++程序員都能做到看見二進制數(shù),直接就能轉(zhuǎn)換為十六進制數(shù),反之亦然。我們也一樣,只要學(xué)完這一小節(jié),就能做到。首先我們來看一個二進制數(shù):1111,它是多少呢?你可能還要這樣計算:1*2八0+1*2八1+1*2八2+1*2八3=1*1+1*2+1*4+1*8=15。然而,由于1111才4位,所以我們必須直接記住它每一位的權(quán)值,并且是從高位往低位記,:8、4、2、1。即,最高位的權(quán)值為23=8,然后依次是22=4,21=2,20=1。記住8421,對于任意一個4位的二進制數(shù),我們都可以很快算出它對應(yīng)的10進制值。下面列出四位二進制數(shù)xxxx所有可能的值(中間略過部分)僅4位的2進制數(shù)快速計算方法十進制值十六進值1111=8+4+2+1=15 F1110=8+4+2+0=14 E1101=8+4+0+1=13 D1100=8+4+0+0=12 C1011=8+4+0+1=11 B1010=8+0+2+0=10A1001=8+0+0+1=1090001=0+0+0+1=10001=0+0+0+1=10000 =0+0+0+0=0 0二進制數(shù)要轉(zhuǎn)換為十六進制,就是以4位一段,分別轉(zhuǎn)換為十六進制。如(上行為二制數(shù),下面為對應(yīng)的十六進制):11111101,10100101,10011011FD,A5,9B反過來,當(dāng)我們看到FD時,如何迅速將它轉(zhuǎn)換為二進制數(shù)呢?先轉(zhuǎn)換F:看到F,我們需知道它是15(可能你還不熟悉A?F這五個數(shù)),然后15如何用8421湊呢?應(yīng)該是8+4+2+1,所以四位全為1:1111。接著轉(zhuǎn)換D:看到D,知道它是13,13如何用8421湊呢?應(yīng)該是:8+2+1,即:1011。所以,FD轉(zhuǎn)換為二進制數(shù),為:11111011由于十六進制轉(zhuǎn)換成二進制相當(dāng)直接,所以,我們需要將一個十進制數(shù)轉(zhuǎn)換成2進制數(shù)時,也可以先轉(zhuǎn)換成16進制,然后再轉(zhuǎn)換成2進制。比如,十進制數(shù)1234轉(zhuǎn)換成二制數(shù),如果要一直除以2,直接得到2進制數(shù),需要計算較多次數(shù)。所以我們可以先除以16,得到16進制數(shù):被除數(shù)計算過程商余數(shù)12341234/167727777/16413(D)44/160

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論