各進(jìn)制之間的換算方法

不同進(jìn)制之間數(shù)字表示方法

  • 默認(rèn)的數(shù)字是10進(jìn)制,如:23
  • 以0開(kāi)頭為8進(jìn)制,如:045
  • 以0b開(kāi)頭為二進(jìn)制 如:0b11101101
  • 以0x開(kāi)頭為十六進(jìn)制,如:0x21458adf

10->2

正整數(shù):

除二取余(直到商為0時(shí)止),倒序排列,高位補(bǔ)零。

如:45

45/2 = 22...1 = 11...0 =5...1=2...1=0...1=>101101=》00101101

負(fù)整數(shù)

正數(shù)二進(jìn),取反加一

如-45

00101101——--取反---11010010----加1--11010011

小數(shù)部份

X2取整,小數(shù)累乘再取整,直到滿(mǎn)足位數(shù)或小數(shù)部份為0為止。

如0.45f

0.45x2 = 0.9(0---0.9)x2=1.8(1--0.8)x2=1.6(1--0.6)x2=1.2(1--0.2)x2=0.4(0--0.4)x2 = 0.8(0-0.8)...

浮點(diǎn)數(shù)取23位,所以0.45=》0.01110011001100110011001

2->10

整數(shù):

將二進(jìn)制補(bǔ)足位數(shù),首位是0表示正數(shù),首位是1表示負(fù)數(shù)

首位是0,則將每位數(shù)x2^n求和,其中n為從右往左的下標(biāo)。

如:101101

高位補(bǔ)零 = 00101101 =1*2^5+ 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 1*2^0 = 32+8+4+1 = 45

首位是1,則補(bǔ)位取反,再套用上面公式

如:11101011

取反:-00010100 = -10100 = -(12^4+12^2) = -20

小數(shù)部份

將小數(shù)的每一位x2^-n,再求和。

如:0.1101

= 0*2^0 + 1*2^-1 + 1*2^-2 + 0*2^-3 + 1*2^-4

=0+0.5+0.25+0.0625

=0.8125

16->2

首先記住下面的對(duì)應(yīng)關(guān)系

進(jìn)制 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
十六進(jìn)制 0 1 2 3 4 5 6 7 8 9 A B C D E F
二進(jìn)制 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

二進(jìn)制轉(zhuǎn)換成十六進(jìn)制的方法是,取四合一法,即從二進(jìn)制的小數(shù)點(diǎn)為分界點(diǎn),向左(或向右)每四位取成一位,如下圖

ic3.png

將對(duì)應(yīng)的四位數(shù)轉(zhuǎn)位十六進(jìn)制:

ic4.png

需要注意的是,在向左(或向右)取四位時(shí),取到最高位(最低位)如果無(wú)法湊足四位,就可以在小數(shù)點(diǎn)的最左邊(或最右邊)補(bǔ)0,進(jìn)行換算


ic6.png

上面是二進(jìn)制轉(zhuǎn)十六進(jìn)制,十六進(jìn)制轉(zhuǎn)二進(jìn)制反過(guò)來(lái)就行了

ic7.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容