理科的至尊思想:进制之间的转换
1) 二進(jìn)制轉(zhuǎn)換十進(jìn)制(不分整數(shù)和小數(shù))
方法:
按權(quán)相加法,即將二進(jìn)制每位上的數(shù)乘以權(quán),然后相加之和即是十進(jìn)制數(shù)。例?
將二進(jìn)制數(shù)101.101轉(zhuǎn)換為十進(jìn)制數(shù)。?
結(jié)果:(101.101)2=(5.625)10
注意:
要知道二進(jìn)制的權(quán)值
要能求出每位的值
?
2) 十進(jìn)制轉(zhuǎn)換二進(jìn)制{整數(shù);小數(shù)}
整數(shù):
方法:除2取余法,即每次將整數(shù)部分除以2,余數(shù)為該位權(quán)上的數(shù),而商繼續(xù)除以2,余數(shù)又為上一個位權(quán)上的數(shù),這個步驟一直持續(xù)下去,直到商為0為止,最后讀數(shù)時候,從最后一個余數(shù)讀起,一直到最前面的一個余數(shù)。下面舉例:?
例:將十進(jìn)制的168轉(zhuǎn)換為二進(jìn)制?
結(jié)果: 將十進(jìn)制的168轉(zhuǎn)換為二進(jì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ù),因?yàn)樽詈笠晃皇墙?jīng)過多次除以2才得到的,因此它是最高位,讀數(shù)字從最后的余數(shù)向前讀,即10101000?
小數(shù):
方法:
乘2取整法,即將小數(shù)部分乘以2,然后取整數(shù)部分,剩下的小數(shù)部分繼續(xù)乘以2,然后取整數(shù)部分,剩下的小數(shù)部分又乘以2,一直取到小數(shù)部分?
為零為止。如果永遠(yuǎn)不能為零,就同十進(jìn)制數(shù)的四舍五入一樣,按照要求保留多少位小數(shù)時,就根據(jù)后面一位是0還是1,取舍,如果是零,舍掉,如果是1,向入一位。換句話說就是0舍1入。讀數(shù)要從前面的整數(shù)讀到后面的整數(shù)
舉例:
將0.125轉(zhuǎn)換為二進(jìn)制
結(jié)果:將0.125換算為二進(jìn)制(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。?
?
二進(jìn)制與八進(jìn)制之間的轉(zhuǎn)換
首先,我們需要了解一個數(shù)學(xué)關(guān)系,即23=8,24=16,而八進(jìn)制和十六進(jìn)制是用這?
關(guān)系衍生而來的,即用三位二進(jìn)制表示一位八進(jìn)制,用四位二進(jìn)制表示一位十六進(jìn)制數(shù)。?
接著,記住4個數(shù)字8、4、2、1(23=8、22=4、21=2、20=1)。現(xiàn)在我們來練習(xí)二進(jìn)制與八進(jìn)制之間的轉(zhuǎn)換。
1) 二進(jìn)制轉(zhuǎn)換為八進(jìn)制?
方法:取三合一法,即從二進(jìn)制的小數(shù)點(diǎn)為分界點(diǎn),向左(向右)每三位取成一位,接著將這三位二進(jìn)制按權(quán)相加,得到的數(shù)就是一位八位二進(jìn)制數(shù),然后,按順序進(jìn)行排列,小數(shù)點(diǎn)的位置不變,得到的數(shù)字就是我們所求的八進(jìn)制數(shù)。如果向左(向右)取三位后,取到最高(最低)位時候,如果無法湊足三位,可以在小數(shù)點(diǎn)最左邊(最右邊),即整數(shù)的最高位(最低位)添0,湊足三位。例?
①將二進(jìn)制數(shù)101110.101轉(zhuǎn)換為八進(jìn)制?
得到結(jié)果:將101110.101轉(zhuǎn)換為八進(jìn)制為56.5?
② 將二進(jìn)制數(shù)1101.1轉(zhuǎn)換為八進(jìn)制?
得到結(jié)果:將1101.1轉(zhuǎn)換為八進(jìn)制為15.4?
?2) 將八進(jìn)制轉(zhuǎn)換為二進(jìn)制?
方法:取一分三法,即將一位八進(jìn)制數(shù)分解成三位二進(jìn)制數(shù),用三位二進(jìn)制按權(quán)相加去湊這位八進(jìn)制數(shù),小數(shù)點(diǎn)位置照舊。例:?
① 將八進(jìn)制數(shù)67.54轉(zhuǎn)換為二進(jìn)制?
因此,將八進(jìn)制數(shù)67.54轉(zhuǎn)換為二進(jìn)制數(shù)為110111.101100,即110111.1011?
大家從上面這道題可以看出,計(jì)算八進(jìn)制轉(zhuǎn)換為二進(jìn)制?
首先,將八進(jìn)制按照從左到右,每位展開為三位,小數(shù)點(diǎn)位置不變?
然后,按每位展開為22,21,20(即4、2、1)三位去做湊數(shù),即a×22+ b×21 +c×20=該位上的數(shù)(a=1或者a=0,b=1或者b=0,c=1或者c=0),將abc排列就是該位的二進(jìn)制數(shù)?
接著,將每位上轉(zhuǎn)換成二進(jìn)制數(shù)按順序排列?
最后,就得到了八進(jìn)制轉(zhuǎn)換成二進(jìn)制的數(shù)字。?
以上的方法就是二進(jìn)制與八進(jìn)制的互換,大家在做題的時候需要注意的是?
1) 他們之間的互換是以一位與三位轉(zhuǎn)換,這個有別于二進(jìn)制與十進(jìn)制轉(zhuǎn)換?
2) 大家在做添0和去0的時候要注意,是在小數(shù)點(diǎn)最左邊或者小數(shù)點(diǎn)的最右邊(即整數(shù)的最高位和小數(shù)的最低位)才能添0或者去0,否則將產(chǎn)生錯誤?
?二進(jìn)制與十六進(jìn)制的轉(zhuǎn)換?
方法:與二進(jìn)制與八進(jìn)制轉(zhuǎn)換相似,只不過是一位(十六)與四位(二進(jìn)制)的轉(zhuǎn)換,下面具體講解?
?1) 二進(jìn)制轉(zhuǎn)換為十六進(jìn)制?
方法:
方法:取四合一法,即從二進(jìn)制的小數(shù)點(diǎn)為分界點(diǎn),向左(向右)每四位取成一位,接著將這四位二進(jìn)制按權(quán)相加,得到的數(shù)就是一位十六位二進(jìn)制數(shù),然后,按順序進(jìn)行排列,小數(shù)點(diǎn)的位置不變,得到的數(shù)字就是我們所求的十六進(jìn)制數(shù)。如果向左(向右)取四位后,取到最高(最低)位時候,如果無法湊足四位,可以在小數(shù)點(diǎn)最左邊(最右邊),即整數(shù)的最高位(最低位)添0,湊足四位。?
①例:將二進(jìn)制11101001.1011轉(zhuǎn)換為十六進(jìn)制?
得到結(jié)果:將二進(jìn)制11101001.1011轉(zhuǎn)換為十六進(jìn)制為E9.B?
② 例:將101011.101轉(zhuǎn)換為十六進(jìn)制?
因此得到結(jié)果:將二進(jìn)制101011.101轉(zhuǎn)換為十六進(jìn)制為2B.A?
(2)將十六進(jìn)制轉(zhuǎn)換為二進(jìn)制?
方法:取一分四法,即將一位十六進(jìn)制數(shù)分解成四位二進(jìn)制數(shù),用四位二進(jìn)制按權(quán)相加去湊這位十六進(jìn)制數(shù),小數(shù)點(diǎn)位置照舊。?
①將十六進(jìn)制6E.2轉(zhuǎn)換為二進(jìn)制數(shù)?
因此得到結(jié)果:將十六進(jìn)制6E.2轉(zhuǎn)換為二進(jìn)制為01101110.0010即110110.001?
四、八進(jìn)制與十六進(jìn)制的轉(zhuǎn)換?
方法:一般不能互相直接轉(zhuǎn)換,一般是將八進(jìn)制(或十六進(jìn)制)轉(zhuǎn)換為二進(jìn)制,然后再將二進(jìn)制轉(zhuǎn)換為十六進(jìn)制(或八進(jìn)制),小數(shù)點(diǎn)位置不變。那么相應(yīng)的轉(zhuǎn)換請參照上面二進(jìn)制與八進(jìn)制的轉(zhuǎn)換和二進(jìn)制與十六進(jìn)制的轉(zhuǎn)?
五、八進(jìn)制與十進(jìn)制的轉(zhuǎn)換?
(1)八進(jìn)制轉(zhuǎn)換為十進(jìn)制?
方法:按權(quán)相加法,即將八進(jìn)制每位上的數(shù)乘以位權(quán),然后相加之和即是十進(jìn)制數(shù)。?
例:①將八進(jìn)制數(shù)67.35轉(zhuǎn)換為十進(jìn)制?
(2)十進(jìn)制轉(zhuǎn)換為八進(jìn)制?
十進(jìn)制轉(zhuǎn)換成八進(jìn)制有兩種方法:?
1)間接法:先將十進(jìn)制轉(zhuǎn)換成二進(jìn)制,然后將二進(jìn)制又轉(zhuǎn)換成八進(jìn)制?
2)直接法:前面我們講過,八進(jìn)制是由二進(jìn)制衍生而來的,因此我們可以采用與十進(jìn)制轉(zhuǎn)換為二進(jì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ù)部分為零為止。如果永遠(yuǎn)不能為零,就同十進(jìn)制數(shù)的四舍五入一樣,暫取個名字叫3舍4入。?
例:將十進(jìn)制數(shù)796.703125轉(zhuǎn)換為八進(jìn)制數(shù)?
解:先將這個數(shù)字分為整數(shù)部分796和小數(shù)部分0.703125?
整數(shù)部分?
小數(shù)部分?
因此,得到結(jié)果十進(jìn)制796.703125轉(zhuǎn)換八進(jìn)制為1434.55?
上面的方法大家可以驗(yàn)證一下,你可以先將十進(jìn)制轉(zhuǎn)換,然后再轉(zhuǎn)換為八進(jìn)制
?
轉(zhuǎn)載于:https://www.cnblogs.com/zsping/p/5494655.html
總結(jié)
以上是生活随笔為你收集整理的理科的至尊思想:进制之间的转换的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Modular Multiplicati
- 下一篇: 【IOS-COCOS2D游戏开发之十】添