進(jìn)制轉(zhuǎn)換算法原理(二進(jìn)制 八進(jìn)制 十進(jìn)制 十六進(jìn)制)
更新時(shí)間:2010年05月26日 20:42:19 作者:
進(jìn)制轉(zhuǎn)換算法原理(二進(jìn)制 八進(jìn)制 十進(jìn)制 十六進(jìn)制),以前上學(xué)那會(huì)確實(shí)學(xué)過(guò),長(zhǎng)時(shí)間不用都忘了。
1、二進(jìn)制數(shù)、八進(jìn)制數(shù)、十六進(jìn)制數(shù)轉(zhuǎn)十進(jìn)制數(shù)
有一個(gè)公式:二進(jìn)制數(shù)、八進(jìn)制數(shù)、十六進(jìn)制數(shù)的各位數(shù)字分別乖以各自的基數(shù)的(N-1)次方,其和相加之和便是相應(yīng)的十進(jìn)制數(shù)。個(gè)位,N=1;十位,N=2...舉例:
110B=1*2的2次方+1*2的1次方+0*2的0次方=0+4+2+0=6D
110Q=1*8的2次方+1*8的1次方+0*8的0次方=64+8+0=72D
110H=1*16的2次方+1*16的1次方+0*16的0次方=256+16+0=272D
2、十進(jìn)制數(shù)轉(zhuǎn)二進(jìn)制數(shù)、八進(jìn)制數(shù)、十六進(jìn)制數(shù)
方法是相同的,即整數(shù)部分用除基取余的算法,小數(shù)部分用乘基取整的方法,然后將整數(shù)與小數(shù)部分拼接成一個(gè)數(shù)作為轉(zhuǎn)換的最后結(jié)果。
例:見(jiàn)四級(jí)指導(dǎo)16頁(yè)。
3、二進(jìn)制數(shù)轉(zhuǎn)換成其它數(shù)據(jù)類型
3-1二進(jìn)制轉(zhuǎn)八進(jìn)制:從小數(shù)點(diǎn)位置開(kāi)始,整數(shù)部分向左,小數(shù)部分向右,每三位二進(jìn)制為一組用一位八進(jìn)制的數(shù)字來(lái)表示,不足三位的用0補(bǔ)足,
就是一個(gè)相應(yīng)八進(jìn)制數(shù)的表示。
010110.001100B=26.14Q
八進(jìn)制轉(zhuǎn)二進(jìn)制反之則可。
3-2二進(jìn)制轉(zhuǎn)十進(jìn)制:見(jiàn)1
3-3二進(jìn)制轉(zhuǎn)十六進(jìn)制:從小數(shù)點(diǎn)位置開(kāi)始,整數(shù)部分向左,小數(shù)部分向右,每四位二進(jìn)制為一組用一位十六進(jìn)制的數(shù)字來(lái)表示,
不足四位的用0補(bǔ)足,就是一個(gè)相應(yīng)十六進(jìn)制數(shù)的表示。
00100110.00010100B=26.14H
十進(jìn)制轉(zhuǎn)各進(jìn)制
要將十進(jìn)制轉(zhuǎn)為各進(jìn)制的方式,只需除以各進(jìn)制的權(quán)值,取得其余數(shù),第一次的余數(shù)當(dāng)個(gè)位數(shù),第二次余數(shù)當(dāng)十位數(shù),其余依此類推,直到被除數(shù)小于權(quán)值,最后的被除數(shù)當(dāng)最高位數(shù)。
一、十進(jìn)制轉(zhuǎn)二進(jìn)制
如:55轉(zhuǎn)為二進(jìn)制
2|55
27――1 個(gè)位
13――1 第二位
6――1 第三位
3――0 第四位
1――1 第五位
最后被除數(shù)1為第七位,即得110111
二、十進(jìn)制轉(zhuǎn)八進(jìn)制
如:5621轉(zhuǎn)為八進(jìn)制
8|5621
702 ―― 5 第一位(個(gè)位)
87 ―― 6 第二位
10 ―― 7 第三位
1 ―― 2 第四位
最后得八進(jìn)制數(shù):127658
三、十進(jìn)制數(shù)十六進(jìn)制
如:76521轉(zhuǎn)為十六進(jìn)制
16|76521
4726 ――5 第一位(個(gè)位)
295 ――6 第二位
18 ――6 第三位
1 ―― 2 第四位
最后得1276516
二進(jìn)制與十六進(jìn)制的關(guān)系
2進(jìn)制 0000 0001 0010 0011 0100 0101 0110 0111
16進(jìn)制 0 1 2 3 4 5 6 7
2進(jìn)制 1000 1001 1010 1011 1100 1101 1110 1111
16進(jìn)制 8 9 a(10) b(11) c(12) d(13) e(14) f(15)
可以用四位數(shù)的二進(jìn)制數(shù)來(lái)代表一個(gè)16進(jìn)制,如3A16 轉(zhuǎn)為二進(jìn)制為:
3為0011,A 為1010,合并起來(lái)為00111010??梢詫⒆钭筮叺?去掉得1110102
右要將二進(jìn)制轉(zhuǎn)為16進(jìn)制,只需將二進(jìn)制的位數(shù)由右向左每四位一個(gè)單位分隔,將各單位對(duì)照出16進(jìn)制的值即可。
二進(jìn)制與八進(jìn)制間的關(guān)系
二進(jìn)制 000 001 010 011 100 101 110 111
八進(jìn)制 0 1 2 3 4 5 6 7
二進(jìn)制與八進(jìn)制的關(guān)系類似于二進(jìn)制與十六進(jìn)制的關(guān)系,以八進(jìn)制的各數(shù)為0到7,以三位二進(jìn)制數(shù)來(lái)表示。如要將51028 轉(zhuǎn)為二進(jìn)制,5為101,1為001,0為000,2為010,將這些數(shù)的二進(jìn)制合并后為1010010000102,即是二進(jìn)制的值。
若要將二進(jìn)制轉(zhuǎn)為八進(jìn)制,將二進(jìn)制的位數(shù)由右向左每三位一個(gè)單位分隔,將事單位對(duì)照出八進(jìn)制的值即可。
有一個(gè)公式:二進(jìn)制數(shù)、八進(jìn)制數(shù)、十六進(jìn)制數(shù)的各位數(shù)字分別乖以各自的基數(shù)的(N-1)次方,其和相加之和便是相應(yīng)的十進(jìn)制數(shù)。個(gè)位,N=1;十位,N=2...舉例:
110B=1*2的2次方+1*2的1次方+0*2的0次方=0+4+2+0=6D
110Q=1*8的2次方+1*8的1次方+0*8的0次方=64+8+0=72D
110H=1*16的2次方+1*16的1次方+0*16的0次方=256+16+0=272D
2、十進(jìn)制數(shù)轉(zhuǎn)二進(jìn)制數(shù)、八進(jìn)制數(shù)、十六進(jìn)制數(shù)
方法是相同的,即整數(shù)部分用除基取余的算法,小數(shù)部分用乘基取整的方法,然后將整數(shù)與小數(shù)部分拼接成一個(gè)數(shù)作為轉(zhuǎn)換的最后結(jié)果。
例:見(jiàn)四級(jí)指導(dǎo)16頁(yè)。
3、二進(jìn)制數(shù)轉(zhuǎn)換成其它數(shù)據(jù)類型
3-1二進(jìn)制轉(zhuǎn)八進(jìn)制:從小數(shù)點(diǎn)位置開(kāi)始,整數(shù)部分向左,小數(shù)部分向右,每三位二進(jìn)制為一組用一位八進(jìn)制的數(shù)字來(lái)表示,不足三位的用0補(bǔ)足,
就是一個(gè)相應(yīng)八進(jìn)制數(shù)的表示。
010110.001100B=26.14Q
八進(jìn)制轉(zhuǎn)二進(jìn)制反之則可。
3-2二進(jìn)制轉(zhuǎn)十進(jìn)制:見(jiàn)1
3-3二進(jìn)制轉(zhuǎn)十六進(jìn)制:從小數(shù)點(diǎn)位置開(kāi)始,整數(shù)部分向左,小數(shù)部分向右,每四位二進(jìn)制為一組用一位十六進(jìn)制的數(shù)字來(lái)表示,
不足四位的用0補(bǔ)足,就是一個(gè)相應(yīng)十六進(jìn)制數(shù)的表示。
00100110.00010100B=26.14H
十進(jìn)制轉(zhuǎn)各進(jìn)制
要將十進(jìn)制轉(zhuǎn)為各進(jìn)制的方式,只需除以各進(jìn)制的權(quán)值,取得其余數(shù),第一次的余數(shù)當(dāng)個(gè)位數(shù),第二次余數(shù)當(dāng)十位數(shù),其余依此類推,直到被除數(shù)小于權(quán)值,最后的被除數(shù)當(dāng)最高位數(shù)。
一、十進(jìn)制轉(zhuǎn)二進(jìn)制
如:55轉(zhuǎn)為二進(jìn)制
2|55
27――1 個(gè)位
13――1 第二位
6――1 第三位
3――0 第四位
1――1 第五位
最后被除數(shù)1為第七位,即得110111
二、十進(jìn)制轉(zhuǎn)八進(jìn)制
如:5621轉(zhuǎn)為八進(jìn)制
8|5621
702 ―― 5 第一位(個(gè)位)
87 ―― 6 第二位
10 ―― 7 第三位
1 ―― 2 第四位
最后得八進(jìn)制數(shù):127658
三、十進(jìn)制數(shù)十六進(jìn)制
如:76521轉(zhuǎn)為十六進(jìn)制
16|76521
4726 ――5 第一位(個(gè)位)
295 ――6 第二位
18 ――6 第三位
1 ―― 2 第四位
最后得1276516
二進(jìn)制與十六進(jìn)制的關(guān)系
2進(jìn)制 0000 0001 0010 0011 0100 0101 0110 0111
16進(jìn)制 0 1 2 3 4 5 6 7
2進(jìn)制 1000 1001 1010 1011 1100 1101 1110 1111
16進(jìn)制 8 9 a(10) b(11) c(12) d(13) e(14) f(15)
可以用四位數(shù)的二進(jìn)制數(shù)來(lái)代表一個(gè)16進(jìn)制,如3A16 轉(zhuǎn)為二進(jìn)制為:
3為0011,A 為1010,合并起來(lái)為00111010??梢詫⒆钭筮叺?去掉得1110102
右要將二進(jìn)制轉(zhuǎn)為16進(jìn)制,只需將二進(jìn)制的位數(shù)由右向左每四位一個(gè)單位分隔,將各單位對(duì)照出16進(jìn)制的值即可。
二進(jìn)制與八進(jìn)制間的關(guān)系
二進(jìn)制 000 001 010 011 100 101 110 111
八進(jìn)制 0 1 2 3 4 5 6 7
二進(jìn)制與八進(jìn)制的關(guān)系類似于二進(jìn)制與十六進(jìn)制的關(guān)系,以八進(jìn)制的各數(shù)為0到7,以三位二進(jìn)制數(shù)來(lái)表示。如要將51028 轉(zhuǎn)為二進(jìn)制,5為101,1為001,0為000,2為010,將這些數(shù)的二進(jìn)制合并后為1010010000102,即是二進(jìn)制的值。
若要將二進(jìn)制轉(zhuǎn)為八進(jìn)制,將二進(jìn)制的位數(shù)由右向左每三位一個(gè)單位分隔,將事單位對(duì)照出八進(jìn)制的值即可。
您可能感興趣的文章:
- 科學(xué)知識(shí):二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制轉(zhuǎn)換
- PHP函數(shù)篇詳解十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制轉(zhuǎn)換函數(shù)說(shuō)明
- python實(shí)現(xiàn)各進(jìn)制轉(zhuǎn)換的總結(jié)大全
- C# 進(jìn)制轉(zhuǎn)換的實(shí)現(xiàn)(二進(jìn)制、十六進(jìn)制、十進(jìn)制互轉(zhuǎn))
- JS中的進(jìn)制轉(zhuǎn)換以及作用
- 二進(jìn)制、八進(jìn)制?、十進(jìn)制、十六進(jìn)制之間轉(zhuǎn)換的原理詳解
相關(guān)文章
如何設(shè)計(jì)一個(gè)幾十萬(wàn)在線用戶彈幕系統(tǒng)需求方案
這篇文章主要介紹了為大家如何設(shè)計(jì)一個(gè)幾十萬(wàn)在線用戶彈幕系統(tǒng)的需求實(shí)現(xiàn)方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-05-05
如何使用Git優(yōu)雅的回滾實(shí)現(xiàn)
這篇文章主要介紹了如何使用Git優(yōu)雅的回滾實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
將git項(xiàng)目導(dǎo)入GitHub的方法(附創(chuàng)建分支)
下面小編就為大家?guī)?lái)一篇將git項(xiàng)目導(dǎo)入GitHub的方法(附創(chuàng)建分支)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11
在 WordPress 的頁(yè)眉(header)和頁(yè)腳(footer)添加代碼方法
這篇文章主要介紹了在 WordPress 的頁(yè)眉(header)和頁(yè)腳(footer)添加代碼方法2021-09-09
實(shí)例詳解esp8266解析json數(shù)據(jù)的方法
這篇文章主要介紹了實(shí)例詳解esp8266解析json數(shù)據(jù)的方法,主要包括要解析的json文件,反序列化數(shù)據(jù)獲取到對(duì)象中,通過(guò)串口監(jiān)視器輸出解析后的數(shù)據(jù)信息,需要的朋友可以參考下2022-03-03
判斷Email地址是否正確的幾個(gè)函數(shù)(asp/php/javascript)
今天總結(jié)了幾個(gè)判斷Email地址的函數(shù),和大家分享一下2010-08-08

