十六進位制之間的轉換公式,二八十十六進位制之間的轉換公式

2021-03-03 22:26:36 字數 5557 閱讀 6809

1樓:捉摸不透丶讍渄

一、十進位制轉換成其他進位制 1、轉換二進位制:十進位制數除二,然後取餘數,倒序。 例:

55除2後餘111011,然後倒序輸出為:110111 2、轉換八進位制:十進位制數除八,然後取餘數,倒序輸出。

例:128除8後餘002,然後倒序輸出為:200 3、轉換十六進位制:

十進位制數除十六,然後取餘數,倒序輸出。 例:125除16後餘13 7,然後倒序輸出為:

由於從10往後是用字母表示,10用字母a表示,其他往後排,所 以結果為7d

二、八、十

六、二進位制之間轉換 1、二轉換八:利用「4 2 1」這三個數轉換,二進位制每三位數代表一位八進位制數,從二進位制數右側開始算起,三個二進位制分為一組,不夠則用零補,然後每一組分別對應「4 2 1」這三個數,他們之間的和就為一個八進位制數 例:111011 轉換八進位制為:

011、111分別分為兩組,然後對應「4 2 1」,計算之和,為:73 2、二轉換十六:利用「8 4 2 1」這四個數轉換,二進位制每四位數代表一位十六進位制數,從二進位制數右側開始分,四個二進位制數分為一組,不夠則用零補,然後每一組分別對應「8 4 2 1」這四個數,他們之間的和就為一個十六進位制數。

例:111011轉換十六進位制為:1011、0011分別分為兩組,然後對應「8 4 2 1」,計算之和為:

3b 3、八轉換二:利用「4 2 1」這三個數轉換,八進位制每一位數代表三位二進位制,然後用二進位制的「0」和「1」分別對應一位八進位制數 例:73轉換二進位制為:

111011 4、十六轉換二:利用「8 4 2 1」這四個數轉換,十六進位制每一位數代表四位二進位制,然後用二進位制的「0」和「1」分別對應一位十六進位制數 例:3b轉換二進位制為:

111011

三、二進位制軒換十進位制 例:111011轉換十進位制為:1*2^0+1*2^1+0*2^2+1*2^3+1*2^4+1*2^5=55,因此十進位制數為:55

二,八,十,十六進位制轉換公式

2樓:匿名使用者

有一個公式:二進位制數、八進位制數、十六進位制數的各位數字分別乖以各自的基數的(n-1)次方,其和相加之和便是相應的十進位制數。個位,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、十進位制數轉二進位制數、八進位制數、十六進位制數

方法是相同的,即整數部分用除基取餘的演算法,小數部分用乘基取整的方法,然後將整數與小數部分拼接成一個數作為轉換的最後結果。

3、二進位制數轉換成其它資料型別

3-1二進位制轉八進位制:從小數點位置開始,整數部分向左,小數部分向右,每三位二進位制為一組用一位八進位制的數字來表示,不足三位的用0補足,

就是一個相應八進位制數的表示。

010110.001100b=26.14q

八進位制轉二進位制反之則可。

3-2二進位制轉十進位制:見1

3-3二進位制轉十六進位制:從小數點位置開始,整數部分向左,小數部分向右,每四位二進位制為一組用一位十六進位制的數字來表示,

不足四位的用0補足,就是一個相應十六進位制數的表示。

00100110.00010100b=26.14h

十進位制轉各進位制

要將十進位制轉為各進位制的方式,只需除以各進位制的權值,取得其餘數,第一次的餘數當個位數,第二次餘數當十位數,其餘依此類推,直到被除數小於權值,最後的被除數當最高位數。

一、十進位制轉二進位制

如:55轉為二進位制

2|55

27――1 個位

13――1 第二位

6――1 第三位

3――0 第四位

1――1 第五位

最後被除數1為第七位,即得110111

二、十進位制轉八進位制

如:5621轉為八進位制

8|5621

702 ―― 5 第一位(個位)

87 ―― 6 第二位

10 ―― 7 第三位

1 ―― 2 第四位

最後得八進位制數:127658

三、十進位制數十六進位制

如:76521轉為十六進位制

16|76521

4726 ――5 第一位(個位)

295 ――6 第二位

18 ――6 第三位

1 ―― 2 第四位

最後得1276516

二進位制與十六進位制的關係

2進位制 0000 0001 0010 0011 0100 0101 0110 0111

16進位制 0 1 2 3 4 5 6 7

2進位制 1000 1001 1010 1011 1100 1101 1110 1111

16進位制 8 9 a(10) b(11) c(12) d(13) e(14) f(15)

可以用四位數的二進位制數來代表一個16進位制,如3a16 轉為二進位制為:

3為0011,a 為1010,合併起來為00111010。可以將最左邊的0去掉得1110102

右要將二進位制轉為16進位制,只需將二進位制的位數由右向左每四位一個單位分隔,將各單位對照出16進位制的值即可。

二進位制與八進位制間的關係

二進位制 000 001 010 011 100 101 110 111

八進位制 0 1 2 3 4 5 6 7

二進位制與八進位制的關係類似於二進位制與十六進位制的關係,以八進位制的各數為0到7,以三位二進位制數來表示。如要將51028 轉為二進位制,5為101,1為001,0為000,2為010,將這些數的二進位制合併後為1010010000102,即是二進位制的值。

若要將二進位制轉為八進位制,將二進位制的位數由右向左每三位一個單位分隔,將事單位對照出八進位制的值即可。

一.在計算機應用中,二進位制使用字尾b表示;十進位制使用字尾d表示,八進位制用q表示,十六制使用字尾h表示。

二.二進位制,十六進位制與十進位制的計算轉換

1.二進位制轉換為十進位制

計算公式:二進位制資料x位數字乘以2的x-1次方的積的總和

例:10101011b=( )d

資料1 0 1 0 1 0 1 1

x-1位

7 6 5 4 3 2 1 0

相應的十進位制值即為:27 +25+23+21+20=128+32+8+2+1=171

2.十六進位制轉換十進位制

計算公式:二進位制資料x位數字乘以16的x-1次方的積的總和(與二進位制轉換十制進同理的,將底數換為16)

注意:在十六進位制中,10-16依次用a,b,c,d,e,f表示

例:1f3e h=( )d

計算:1*16的3次方+16*16的2次方+3*16的1次方+15*16的0次方=1*4096+16*256+3*16+15*16=4096+4096+48+240=8480

三.十進位制與二進位制,十六制的計算轉換

1.十進位制轉換為二進位制

十進位制資料數字除以2的餘數的逆序組合

例:404d=( )b

2|404 餘0

2|202 餘0

2|101 餘0

2|50 餘1

2|25 餘0

2|12 餘1

2|6 餘0

2|3 餘1

2|1計算結果便是:110101000

2.十進位制轉換十六進位制。。。與上面同理,注意的是10以上的數字用字母表示,除數是16

十六進位制與二進位制的轉換,建議通過十進位制來進行中轉。

帶小數點的十進位制轉換為二進位制時同理,小數店後的數位指數為負指數

一、二進位制數轉換成十進位制數

由二進位制數轉換成十進位制數的基本做法是,把二進位制數首先寫成加權係數式,然後按十進位制加法規則求和。這種做法稱為"按權相加"法。

二、十進位制數轉換為二進位制數

十進位制數轉換為二進位制數時,由於整數和小數的轉換方法不同,所以先將十進位制數的整數部分和小數部分分別轉換後,再加以合併。

1. 十進位制整數轉換為二進位制整數

十進位制整數轉換為二進位制整數採用"除2取餘,逆序排列"法。具體做法是:用2去除十進位制整數,可以得到一個商和餘數;再用2去除商,又會得到一個商和餘數,如此進行,直到商為零時為止,然後把先得到的餘數作為二進位制數的低位有效位,後得到的餘數作為二進位制數的高位有效位,依次排列起來。

2.十進位制小數轉換為二進位制小數

十進位制小數轉換成二進位制小數採用"乘2取整,順序排列"法。具體做法是:用2乘十進位制小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。

然後把取出的整數部分按順序排列起來,先取的整數作為二進位制小數的高位有效位,後取的整數作為低位有效位。

回答者:hackerkinsn - 試用期 一級 2-24 13:31

1.二進位制與十進位制的轉換

(1)二進位制轉十進位制

方法:"按權求和"

例: (1011.01)2 =(1×23+0×22+1×21+1×20+0×2-1+1×2-2)10

=(8+0+2+1+0+0.25)10

=(11.25)10

(2)十進位制轉二進位制

· 十進位制整數轉二進位制數:"除以2取餘,逆序輸出"

例: (89)10=(1011001)2

2 89

2 44 …… 1

2 22 …… 0

2 11 …… 0

2 5 …… 1

2 2 …… 1

2 1 …… 0

0 …… 1

· 十進位制小數轉二進位制數:"乘以2取整,順序輸出"

例: (0.625)10= (0.101)2

0.625

x 21.25

x 20.5x 21.0

3樓:匿名使用者

^十進位制》二進位制:除2取餘 從二進位制後面的數字開始計算:例如:

1002:2*2^0+0*2^1+0*2^2+1*2^3十進位制》八進位制:除8取餘 反過來:

三位合一位十進位制》十六進位制:除16取餘 反過來:四位合一位

4樓:姜容

十進位制轉二進位制:

除以二,取餘數(右邊第一位),再把商繼續除以二,再取餘數(右邊第二位)......直到商等於1,最後取商(最高位)。比如:

11/2=5...1(右邊第一位), 5/2=2...1(右邊第二位), 2/2=1(最高位)...

0(右邊第三位),所以十進位制數11轉二進位制後是:1011十轉八的情況類似,只要每次除以8即可。

轉十六進位制時,每次需除以16,並分別用a、b、c、d、e、f來代表餘數為10、11、12、13、14、15即可。例如:333/16=20...

13,20/16=1...4,所以十進位制數333轉十六進位制後是14d。

順便說一下,二進位制轉十六進位制是最方便的。如:1101001101011010,四位一組:(1101)(0011)(0101)(1010),轉成十六進位制後是d39a。

參考資料

二,八,十,十六進位制間的轉換公式是什麼&record=1

c裡面十六進位制怎麼轉換為字元

printf 數字代表來 的字源母是 c n num 直接列印 include int main void 測試通過。請問c 程式設計裡用字串讀進一個16進位制數後,怎樣轉化為10進位制數?include include include using namespace std int main el...

關於十六進位制與漢字的問題文字轉換為十六進位制

這6個位元組,翻譯過來是 j幣s卻 其中有兩個漢字,佔四個位元組,另外兩個是ascii碼,j和s。gb2312的內碼錶示漢字,是用兩個位元組,表示一個漢字,每個位元組的最高位都為1。6ah 最高位為0,不是漢字 bih d2h 最高位都為1,是一個漢字 53h 最高位為0,不是漢字 c8h b4h ...

八進位制與十六進位制互相轉換435O等於?H

先把十六進位制轉成bai 二進位制,然後du再把二zhi進位制轉成八進位制。例如 十六dao進位制 版7854ecaf 轉成二權進製為 0111 1000 0101 0100 1110 1100 1010 1111 轉成八進位制 1 111 000 010 101 001 110 110 010 1...