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é)果。
例:見四級指導(dǎo)16頁。
3、二進(jìn)制數(shù)轉(zhuǎn)換成其它數(shù)據(jù)類型
3-1二進(jìn)制轉(zhuǎn)八進(jìn)制:從小數(shù)點(diǎn)位置開始,整數(shù)部分向左,小數(shù)部分向右,每三位二進(jìn)制為一組用一位八進(jìn)制的數(shù)字來表示,不足三位的用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)制:見1
3-3二進(jìn)制轉(zhuǎn)十六進(jìn)制:從小數(shù)點(diǎn)位置開始,整數(shù)部分向左,小數(shù)部分向右,每四位二進(jìn)制為一組用一位十六進(jìn)制的數(shù)字來表示,
不足四位的用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ù)來代表一個(gè)16進(jìn)制,如3A16 轉(zhuǎn)為二進(jìn)制為:
3為0011,A 為1010,合并起來為00111010??梢詫⒆钭筮叺?去掉得1110102
右要將二進(jìn)制轉(zhuǎn)為16進(jìn)制,只需將二進(jìn)制的位數(shù)由右向左每四位一個(gè)單位分隔,將各單位對照出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ù)來表示。如要將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è)單位分隔,將事單位對照出八進(jìn)制的值即可。
進(jìn)制轉(zhuǎn)換算法原理(二進(jìn)制 八進(jìn)制 十進(jìn)制 十六進(jìn)制)
2020-07-17 14:59編程貓 編程技術(shù)
進(jìn)制轉(zhuǎn)換算法原理(二進(jìn)制 八進(jìn)制 十進(jìn)制 十六進(jìn)制),以前上學(xué)那會(huì)確實(shí)學(xué)過,長時(shí)間不用都忘了。
延伸 · 閱讀
- 2022-02-25詳解c/c++鏈?zhǔn)蕉褩C枋鲞M(jìn)制轉(zhuǎn)換問題示例
- 2022-02-21C語言每日練習(xí)之進(jìn)制轉(zhuǎn)換
- 2021-12-06Java實(shí)現(xiàn)任意進(jìn)制轉(zhuǎn)換
- 2021-11-25手把手教你JAVA進(jìn)制之間的轉(zhuǎn)換
- 2021-11-21python內(nèi)置進(jìn)制轉(zhuǎn)換函數(shù)的操作
- 2021-11-10Java之實(shí)現(xiàn)十進(jìn)制與十六進(jìn)制轉(zhuǎn)換案例講解
- 編程技術(shù)
IT工程師都需要掌握的容器技術(shù)之DockerCompose
今天我們繼續(xù)來學(xué)習(xí)Docker技術(shù)之Docker Compose,本篇文章將是我們?nèi)萜骷夹g(shù)系列的最后一篇文章,讀過我們?nèi)萜骷夹g(shù)全系列文章的小伙伴肯定有疑問,整個(gè)系...
- 編程技術(shù)
Python“王者”地位不保!Julia和Swift后來居上
在過去的十年里,Python 一直統(tǒng)治著數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí),但是 Julia 和 Swift 后來居上,正準(zhǔn)備超越Python。...
- 編程技術(shù)
在地址欄里顯示logo的實(shí)現(xiàn)方法
在地址欄里顯示logo,其實(shí)大家可以看一些網(wǎng)站的頭部里面,下面的方法講的更仔細(xì)。...
- 編程技術(shù)
解決Fiddler在win7系統(tǒng)下的安全證書問題
今天小編就為大家分享一篇關(guān)于解決Fiddler在win7系統(tǒng)下的安全證書問題,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起...
- 編程技術(shù)
面試官:說說你對堆的理解?如何實(shí)現(xiàn)?應(yīng)用場景?
在計(jì)算機(jī)科學(xué)中,圖是一種抽象的數(shù)據(jù)類型,在圖中的數(shù)據(jù)元素通常稱為結(jié)點(diǎn),V是所有頂點(diǎn)的集合,E是所有邊的集合。...
- 編程技術(shù)
拿高薪的程序員,都學(xué)習(xí)了什么編程語言?
人的一生從來不是從出生那一刻就注定的,總是會(huì)因?yàn)槲覀兊倪x擇不斷的發(fā)生改變,小到一件衣服的色彩,大到未來人生的規(guī)劃!選錯(cuò)一件衣服可以重來,...
- 編程技術(shù)
TIOBE4月編程語言排行榜出爐!漲幅最大的語言竟然是它?
TIOBE 近日發(fā)布的4 月編程語言排行榜。前十榜單中,C、Java、Python 仍分別占據(jù)前三位。漲幅最大的語言是Python。...
- 編程技術(shù)
如何成為專業(yè)的惡意軟件研究員
當(dāng)今社會(huì),不管任何一門技術(shù),或者你從事任何一種職業(yè),都需要掌握相關(guān)的知識,現(xiàn)代的技術(shù)其實(shí)就是以前稱的“手藝”,大多數(shù)的手藝的學(xué)習(xí)和入門其...