技術問 - 進位制轉換

weixin_33807284發表於2019-03-07

二進位制轉化成八進位制

-A.把二進位制的資料,從右開始,每三位一組合,最左邊不夠的時候補0。
-B.分別計算出對應的十進位制數值,
-C.再把每個十進位制的資料組合起來,就是一個八進位制。
3779438-82687d9e7a049980.png
二進位制轉八進位制

二進位制轉化成十六進位制

-A.把二進位制的資料,從右開始,每四位一組合,最左邊不夠的時候補0。
-B.分別計算出對應的十進位制數值,
-C.再把每個十進位制的資料組合起來,就是一個十六進位制。
3779438-c83944281e18602a.png
二進位制轉十六進位制

任意進位制轉化為十進位制

按權求和法:
  係數:每一個位上的資料值本身就是係數。
  基數:x進位制的基數就是x
  權:針對每一個位上的資料進行編號,從右邊並且是從0開始編號,這個編號就是該位上資料的權值
x進位制轉化成十進位制:每一個位上的係數*基數的權次冪 之和。

利用十進位制轉化十進位制,推匯出按權求和規律

3779438-5f2617bdbcc1363f.png
按權求和的推導

十進位制他轉化其他進位制

除基取餘,直到商為0,餘數反轉;

示例:

  • 52轉二進位制:0b110100

    52 / 2 = 26    餘0
    26 / 2 = 13     餘0
    13 / 2 = 6       餘1
    6 / 2 = 3        餘0
    3 / 2 = 1      餘1
    1 / 2 = 0    餘1
    
  • 52轉八進位制:064

    52 / 8 = 6 餘4
    6 / 8 =0 餘6
    
  • 52轉十六進位制:0x34

    52 / 16 = 3  餘4
    3 / 16 = 0  餘3 
    

任意的x進位制到y進位制的轉換

以十進位制為橋樑:
x進位制 轉 十進位制
十進位制 轉 y進位制

相關文章