進位制的各種轉換方式
^ = 次方(2^2 = 2的2次方)
二進位制轉十進位制
規則:從最低位開始(右邊的),將每個位上的數提取出來,乘以2的(位數-1)次方,然後求和
案例:二進位制:1011轉成十進位制的數
1011 = 1 * 2^0 + 1 * 2^1 +0 * 2^2 + 1 * 2^3
= 1+2+8
= 11
八進位制轉十進位制
規則:從最低位開始(右邊的),將每個位上的數提出來乘以8的(位數-1)次方,
然後求和。
案例:八進位制:123轉成十進位制的數
123 = 3 * 8^0 + 2 * 8^1 + 1 * 8^2
= 3+16+64
= 83
十六進位制轉十進位制
規則:從最低位開始,將每個位上的數提出來,乘以16的(位數-1)次方,然後求和。
案例:十六進位制:0x34A轉成十進位制的數
0x34A = 10 * 16^0 + 4 * 16^1 + 3 * 16^2
= 10+64+768
= 842
十進位制轉二進位制
規則:將該數不斷除以2,直到商為0為止。然後將每步得到的餘數倒過來,就是對應的二進位制。
案例:將56轉成二進位制
56轉成二進位制為:111000
十進位制轉八進位制
規則:將該數不斷的除以8,直到商為0為止,然後將每步得到的餘數倒過來。就是對應的八進位制。
案例:將156轉成八進位制
156轉成8進製為:0234
十進位制轉十六進位制
規則:將該數不斷除以16,直到商為0為止,然後沒步得到的餘數倒過來,就是對應的十六進位制。
案例:將356轉成十六進位制
將356轉成十六進位制為0x164
二進位制轉其他進位制
二進位制轉八進位制
規則:將二進位制數的每三位數一組(從低位開始組合),轉成對應的八進位制數即可。
(三位二進位制數表示的最大八進位制數是7)
案例:將二進位制:11010101轉成八進位制
11010101
分組:
11 010 101
101 = 5
010 = 2
11 = 3
將二進位制:11010101轉成八進位制為 0325
二進位制轉十六進位制
規則:將二進位制數的每四位數一組(從低位開始組合),轉成對應的八進位制數即可。
案例:將二進位制:11010101轉成八進位制
11010101
分組:
1101 0101
0101 = 5
1101 = D
將二進位制:11010101轉成十六進位制為 0xD5
其他進位制轉二進位制
八進位制轉二進位制
規則:將八進位制數每一位,轉成對應的一個3位的二進位制數即可
案例:將0237轉成二進位制
7 = 111
3 = 011
2 =10
將0237轉成二進位制為:10011111
十六進位制轉二進位制
規則:將八進位制數每一位,轉成對應的一個4位的二進位制數即可
案例:將0x237轉成二進位制
7 = 0111
3 = 0011
2 =10
將0x237轉成二進位制為:1000110111
PHP轉GO 菜鳥一枚,建了一個go語言微信交流群,歡迎各位大佬加入,加我微信 XU1014129578 拉群,暗號:gogogo
本作品採用《CC 協議》,轉載必須註明作者和本文連結