有人知道計算機的二進位制,十進位制,八進位制,十六進位制資料之間的轉

2021-03-25 05:36:31 字數 6126 閱讀 4861

1樓:匿名使用者

二進位制數1110101,轉換成十進位制過程是:

從最後一位開始,只要是1的,就按照2的相應倍數進行相加1.2.4.

8.16.32.

64.128(就是0倍,1倍,2倍。。。)則該數對應的十進位制數是1+4+16+32+64=117八進位制的轉換可以由上面算出的十進位制117來除以8取所得餘數,最先出現的餘數就是對應的八進位制的最後一位,依次排列就是:

165相應從十進位制轉2.8.16進位制都是同樣原理。

而從二進位制轉16進位制則有簡便方法:就是從二進位制的最後一位往上取四位一個段,就是對應16進位制的一位,不夠四位的高位用0補齊,則該二進位制數對應16進位制的過程就是0101對應1+4=5,0111對應1+2+4=7,對應的16進位制數就是75

計算機二進位制,十進位制,八進位制,十六進位制怎麼轉換

2樓:喵喵喵

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

二進位制數00111從低位到高位的位權依次是2的0次冪1、2的1次冪2、2的2次冪4、2的3次冪8、2的4次冪16。

理解了二進位制計數的基數和位權,就可以進行數制轉換了。00111如何轉換成十進位制計數呢?轉換很簡單,將二進位制數從高位到低位每個數字乘以相應的位權然後求和就可以了。

00111(二進位制)= 0 * 2^(5-1) + 0 * 2^(4-1) + 1 * 2^(3-1) + 1 * 2^(2-1) + 1 * 2^(1-1)

= 0 * 16 + 0 * 8 + 1 * 4 + 1 * 2 + 1 * 1

= 7(十進位制)

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

十進位制整數到二進位制整數的轉換可以採用「除2取餘,逆序輸出」法,

具體轉換過程是,用2去除一個十進位制數,得到商和餘數,然後再用2去除商,又會得到商和餘數,迴圈往復直至商為0為止。如果是十進位制小數轉二進位制小數,則採用「乘2取整,順序輸出」。轉換過程如下圖所示:

3、二進位制和八進位制之間的轉換

二進位制轉八進位制:取三合一法,即從二進位制的小數點為分界點,向左(向右)每三位取成一位,接著將這三位二進位制按權相加,然後,按順序進行排列,小數點的位置不變,得到的數字就是我們所求的八進位制數。

如果向左(向右)取三位後,取到最高(最低)位時候,如果無法湊足三位,可以在小數點最左邊(最右邊),即整數的最高位(最低位)添0,湊足三位。

4、八進位制轉二進位制:取一分三法,即將一位八進位制數分解成三位二進位制數,用三位二進位制按權相加去湊這位八進位制數,小數點位置照舊。

5、二進位制和十六進位制之間的轉換

二進位制轉十六進位制:取四合一法,即從二進位制的小數點為分界點,向左(向右)每四位取成一位,接著將這四位二進位制按權相加,然後,按順序進行排列,小數點的位置不變,得到的數字就是我們所求的十六進位制數。

如果向左(向右)取四位後,取到最高(最低)位時候,如果無法湊足四位,可以在小數點最左邊(最右邊),即整數的最高位(最低位)添0,湊足四位。

6、十六進位制轉二進位制:取一分四法,即將一位十六進位制數分解成四位二進位制數,用四位二進位制按權相加去湊這位十六進位制數,小數點位置照舊。

7、十進位制和八進位制之間、十進位制和十六進位制之間都是先把十進位制轉換為二進位制,然後在轉換為八進位制或者十六進位制。

擴充套件資料

某進位制計數制允許選用的基本數字符號的個數成為基數。一般來說,n進位制的基數為n,可進行選用的基本數字符號有n個,分別為0到n-1。

比如十六進位制的基數為16,可供選擇的基本數學符號為0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f十六個。

位權是指,該進位制中每一固定位置對應的單位值,簡稱為權。

以十進位制計數制來說,計數單位分別為個位、十位、百位、千位、萬位、十萬位……,其中個位數表示數值1、十位數表示數值10、百位數表示數值100、千位數表示數值1000、……,每個位數表示的數值叫位權。

位權通過計算基數的n-1次冪就可以得到,這裡的n是指位數所在數字中的位置。在十進位制中就是10的(n-1)次冪。

例如,對十進位制數1260來說,個位數是1260的第一個數字,因此n為1;十位數是第二個數字,因此n為2;百位數是第三個數字,因此n為3;千位數是第四個數字,因此n為4。

由此,個位數的位權為10的1-1次冪是1,十位數的位權為10的2-1次冪是10、百位數的位權為10的3-1次冪是100、千位數的位權為10的4-1次冪是1000。

1260 = 1 * 10^(4-1) + 2 * 10^(3-1) + 6 * 10^(2-1) + 0 * 10^(1-1)

= 1 * 1000 + 2 * 100 + 6 * 10 + 0 * 1

= 1000 + 200 + 60 + 0

3樓:匿名使用者

有一個公式:二

進位制數、八進位制數、十六進位制數的各位數字分別乖以各自的基數的(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

請問十進位制如何轉換成二進位制,二進位制數如何轉換成十進位制數?

還是寫基數,舉個複雜些的例子,你可以選擇僅涉及整數的部分來用 95.625轉換成二進位制 先寫二進位制各位基數 從1開始寫,右邊寫個小數點,先向左邊逐位寫,每位是右邊位陣列乘以2,寫到比95大為止 128 64 32 16 8 4 2 1.然後向左邊寫,每項是左邊項除以2,寫 三 四項即可 128 ...

matlab二進位制轉十進位制,matlab實現任意十進位制和二進位制的轉換

可以複用fread讀取二進位制制檔案 比如 fid fopen bin m fread fid,uint8 fclose fid 將二進位制資料按bai八位無符號整數讀入dum,為一個向量,若知道zhi長寬 fid fopen bin m fread fid,rows,cols uint8 fclo...

二進位制,十進位制,十六進位制,求學習

二進位制 基本數bai字為0,1,只要超過du1做進位成為zhi10,1 1 10 十進位制 這個和我們平時dao學的專是一樣的 十六進位制 基本數字屬為0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,其中a,b,c,d,e,f,也就是表示10,11,12,13,14,15,超過f就...