十進制、二進制、八進制、十六進制互相轉換


十進制數由0~9共10個數字字符組成,在十進制數的每一位上滿十進一,在十進制每一位中表示最大數字為9.

二進制數由0和1兩個數字字符組成,在二進制中“逢二進一”,在二進制每一位中表示最大數字為1.

八進制是由0~7共8個數字字符組成,在八進制中“逢八進一”,在八進制中每一位中表示最大數字為7.

十六進制是由0~9、A、B、C、D、E、F共16個字符組成,在十六進制中“逢十六進一”,在十六進制中最大的數是F。

首先,講講十進制轉二進制:

例: 十進制要轉二進制

就拿55除以2

55/2=27余1,在拿27除以2,27/2=13余1,在拿13除以2,13/2=6余1,在拿6除以2,6/2=3余下0,在拿3除以2,3/2=1余1,

那么十進制55轉換成二進制就是110111

 

十進制轉八進制

例子:十進制534轉八進制

拿534除以8,534/8=66余6,在拿66除以8等於8余2,在拿8除以8等於1余0,那么十進制534轉八進制就是1026.

 

十進制轉十六進制

例子:十進制300轉十六進制

拿300除以16的等於18余12(12在16進制中以C表示,10為A,B為11,一直到F為15),在拿18除以16等於1余下2,在拿1除以16,等於0,不用表示,那么十進制300轉換為十六進制的結果為12C。

 

二進制轉換為十進制

例子:111=1*4+1*2+1*1=7;

它有個對照表:

1

1

1

1

1

1

1

1

128

64

32

16

8

4

2

1

看二進制有多少位,對照表然后在拆開來相加。

 

 

二進制轉換為八進制

有個方法,把二進制的數從右往左,三位一組,不夠補0

列:111=4+2+1=7

11001拆分為 001和011,001=1,011=2+1=3;

那么11001轉換為八進制就是31.

 

二進制轉換為十六進制

參照二進制轉八進制,但是它是從右往左,四位一組,不夠補0

列子:1101101拆分為1101、0110

分別計算兩個二進制的值,1101=8+4+0+1=13,十六進制中13為D

0110=4+2=6,那么二進制1101101轉換為十六進制就是6D。

八進制轉換為二進制

從后往前,每一位按十進制轉化為三位二進制,缺位補0

列子:77,拆分開7=4+2+1=111

所以八進制的77轉換位二進制得111111.

 

八進制轉換為十進制

列子:555=5*8的2次方+5*8的一次方+5=320+40+5=365;

 

八進制轉換位十六進制

先要把八進制轉換位2進制,然后在把二進制轉換位十六進制

例如:八進制721先轉換為二進制,把一個個拆開

7=111,2=010,1=001,

得到二77進制111010001,然后轉換為16進制,從右往左,四個一組,不夠補0

111010001 拆開為 0001,1101,0001

0001=1,1101=8+4+1=13,十六進制的話,就為D,0001=1,那么轉換為十六進制就是1D1

 

十六進制轉換為二進制

把每一位數轉換成二進制,每個數分四位,不足四位,前面補0

列子:2FD,分別拆開,2=0010,F=15=1111,D=13=1101

那么轉換為二進制就得到 1011111101

 

十六進制轉換為八進制

先將十六進制轉換成二進制,(原則一位十六進制轉四位二進制),在將二進制轉換成八進制,(原則是從右往左三個,不夠補0)

列子: 十六進制的2FD轉換二進制得1011111101,在將二進制1011111101轉換為八進制,從右邊往左,四個一拆分,不夠補0

1011111101拆分為 001,011,111,101,分別計算

001=1,011=2+1=3,111=4+2+1=7,101=4+1=5,那么最后轉換為八進制就得到1375.

 

 

十六進制轉換為十進制

跟八進制轉換為十進制類似

列子:2D=2*16的一次方+13=2*16+13=45

十六進制的2D轉換為十進制得到十進制45


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM