21 Go 二進位制數轉成其他進位制
阿新 • • 發佈:2022-06-05
二進位制轉八進位制
規則:將二進位制數每三位一組(從低位開始),每三位轉成一位八進位制數即可
PS:為什麼每三位一組,因為三位二進位制最大數為111,正好能表達八進位制的最大數7
案例:請將二進位制數 11010101 ,轉成八進位制數
1 str := `將二進位制數 11010101 ,轉成八進位制數 2 11 010 101 能分解成三位的八進位制數 3 3 2 5 4 325` 5 num := 0325 6 fmt.Println(str) 7 fmt.Printf("二進位制數 %b 轉成八進位制數為 %o \n", num, num) // 二進位制數 11010101 轉成八進位制數為 325二進位制數轉十六進位制 規則:將二進位制數每四位一組(從低位開始),每四位轉成一位十六進位制數即可 PS:為什麼每四位一組,因為四位二進位制最大數為1111,正好能表達十六進位制的最大數F 案例:請將二進位制數 1111110110 ,轉成十六進位制數
1str = `將二進位制數 1111110110 ,轉成十六進位制數 2 11 1111 0110 能分解成三位的十六進位制數 3 3 F 6 4 3F6` 5 num = 0X3F6 6 fmt.Println(str) 7 fmt.Printf("二進位制數 %b 轉成十六進位制數為 %X \n", num, num) // 二進位制數 1111110110 轉成十六進位制數為 3F6