常見進位制有以下幾種:
-
二進位制:只有 0 和 1,Go語言中不能直接使用二進位制表示整數;
-
八進位制:0-7,以數位 0 開頭;
-
十進位制:0-9;
-
十六進位制:0-9 以及 A-F,以 0X 開頭,A-F 以及 X 不區分大小寫。
任意進位制轉換為十進位制
二進位制轉十進位制:從最低位開始,每個位上數乘以 2 的位數減 1 次方然後求和。
1011 = 1*20 + 1*21 + 0*22 + 1*23 = 11
八進位制轉十進位制:從最低位開始,每個位上數乘以 8 的位數減 1 次方然後求和。
0123 = 3*80 + 2*81 + 1*82 + 0*83 = 83
其他進位制轉十進位制同理。
十進位制轉其他進位制
十進位制轉二進位制:不斷除以 2,直到 0 為止,餘數倒過來即可,如下圖所示: