- 運行 Binary_Hexadecimal_Converter.py。
- 輸入在 0 ~ 255 範圍內的整數。
舉例來說,輸入數字 "10",程式會輸出:
You entered: 10
Binary representation: 1010
Hexadecimal representation: A
- 草稿與說明可見 Notes.ipynb。
- 在 Binary_Hexadecimal_Converter.py 及 Binary_Hexadecimal_Converter_GUI.py 中,定義成
Convert_2_Bin()
及Convert_2_Hex()
十進位制中,當一個數字超過十,就會進位到下一個位數。舉例來說,9 的下一個數字就是十,因此會將 1 進位到十位數,個位數回到 0。
我們可以將其視為,只要超過 10,就把除以 10 拿到的數字(商數),進位到下一位數,再把餘數放回去。
例如:
我們可以把超過十位數(例如百位數或更高)的視為一連串的商數
這在其他進位制中也同理。
- 在二進位中,誠如上述,每個位數都是除以二的餘數,因此只有兩個可能數值:
0
和1
。十進位 $r \times 2^n$ 二進位 0 $0 \times 2^0$ 0 1 $1 \times 2^0$ 1 2 $1 \times 2^1 + 0 \times 2^0$ 10 3 $1 \times 2^1 + 1 \times 2^0$ 11 4 $1 \times 2^2 + 0 \times 2^1 + 0 \times 2^0$ 100 5 $1 \times 2^2 + 0 \times 2^1 + 1 \times 2^0$ 101 6 $1 \times 2^2 + 1 \times 2^1 + 0 \times 2^0$ 110 7 $1 \times 2^2 + 1 \times 2^1 + 1 \times 2^0$ 111 8 $1 \times 2^3 + 0 \times 2^2 + 0 \times 2^1 + 0 \times 2^0$ 1000 - 在十六進位中,單一位數的範圍是 0 到 15,在表示上使用
A
至F
來擴充。十進位 十六進位 十進位 十六進位 0 0
8 8
1 1
9 9
2 2
10 A
3 3
11 B
4 4
12 C
5 5
13 D
6 6
14 E
7 7
15 F
最近稍微接觸
tkinter
,就想要試看看。
-
運行 Binary_Hexadecimal_Converter_GUI.py。
-
在文字框輸入 0 ~ 255 範圍內的整數。
-
點擊
Convert
按鈕,輸出結果將顯示在下方。Binary representation: <二進位數值> Hexadecimal representation: <十六進位數值>