當前位置:編程學習大全網 - 遊戲軟體 - 計算機二進制,十進制,八進制,十六進制怎麽轉換

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

十進制轉換:

1234[10進制]?0 1 2 3 4 5 6 7 8 9 0?當數位上的值超過9就要進1

1000+200+30+4=1*103+2*102+3*101+4*100=1234。

21011[2進制]?0 1?當數位上的值超過1就要進1

1*23+0*22+1*21+1*20=8+0+2+1=11。

1011[8進制]0 1 2 3 4 5 6 7?當數位上的值超過7就要進1

1*83+1*81+1*80=512+8+1=521。

1011[16進制]0 1 2 3 4 5 6 7 8 9 A B C D E F?當數位上的值超過15就要進1

1*163+1*161+1*160=4096+16+1=4113。

二進制轉換:

1、十進制到二進制:除2取余數 最後把余數倒過來?100101

比如:十進制數37

所以轉換成的二進制數字為:100101

2、八進制到二進制:壹個八進制的位拆分成壹個三位的二進制數

比如:[八進制]616

6拆分成?110

1拆分成 001

6拆分成 110

所以轉換成的二進制數字為:110001110

3、十六進制到二進制:壹個八進制的位拆分成壹個四位的二進制數

比如:[十六進制]616

6拆分成 0110

1拆分成 0001

6拆分成 0110

所以轉換成的二進制數字為:11000010110

八進制轉換:

1、十進制到八進制:除8取余數 最後把余數倒過來

同時我們也可以先將十進制轉換成二進制,然後將二進制又轉換成八進制?

比如:2456 轉化成八進制數字:4630

2456/8=307,余0;

307/8=38,余3;

38/8=4,余6;

4/8=0,余4。

將所有余數倒序相連,得到結果:4630。

因此十進制的2456轉換為八進制結果為4630。

2、二進制到八進制轉換 ?7=4+2+1 111 八進制最大的數字是7轉換成二進制剛好是111,占3個位

每三個二進制數為壹組,轉成壹個八進制數位,如果二進制高位不足3位時,用零填補。

比如:10011011

010 011 011

2 3 3

因此二進制的10011011轉換為八進制結果為233。

十六進制轉換:

1、十進制到十六進制:除16倒著取余數

同時我們也可以先將十進制轉換成二進制,然後將二進制又轉換成十六進制?

比如說:1610轉換成十六進制

直接轉16進制:

1610/16=10010(A);

100 /16= 64;

6 /16= 06;

故:1610(10)=64A(16).

2、二進制到十六進制?15=8+4+2+1 ? 1111 十六進制最大數字是F,即15轉換成二進制1111,剛好占4個位

每四個二進制數為壹組,轉成壹個十六進制數位,如果二進制高位不足3位時,用零填補。

比如:1110011011

0011 1001 1011

3 ? 9 ?B

因此二進制的?1110011011轉換為十六進制39B

2進制,是供計算機使用的,1,0代表開和關,有和無,機器只認識2進制。

10進制,當然是便於我們人類來使用,我們從小的習慣就是使用十進制,這個毋庸置疑。

16進制,內存地址空間是用16進制的數據表示, 如0x8049324。

編程中,我們常用的還是10進制。 

比如:int a = 100,b = 99; 

不過,由於數據在計算機中的表示,最終以二進制的形式存在,所以有時候使用二進制,可以更直觀地解決 問題。但二進制數太長了。比如int 類型占用4個字節,32位。比如100,用int類型的二進制數表達將是: 

0000 0000 0000 0000 0110 0100 

面對這麽長的數進行思考或操作,沒有人會喜歡。因此,用16進制或8進制可以解決這個問題。因為,進制越大,數的表達長度也就越短。

參考資料:

百度百科--二進制

  • 上一篇:推薦幾部好看的香港犯罪電影
  • 下一篇:為什麽在steam下求生之路2特別慢
  • copyright 2024編程學習大全網