中中中中中中 中中中中
中四級電腦科
二進制數
十進制與二進制之互換
二進制數之位值 1 1 1 1 1 1 1 1 1
12
48
1632
64128
256
二進制轉十進制 (加法 )將 10110101(2) 轉化為十進制數
考慮下列數字:128 64 32 16 8 4 2 1
1 0 1 1 0 1 0 1 128+ 32+16+ 4+ 1=181
答案 10110101(2) = 181(10)
注意留意二進制數的尾位,將可知道該數字為單數或是雙數。
尾位為0雙數
尾位為1單數
十進制轉二進制 (減法 )將 50(10) 轉化為二進制數考慮下列數字:
64 32 16 8 4 2 1 1 1 0 0 1 0 32+16 + 2 = 50
答案 50(10) = 110010(2)
十進制轉二進制 (除法 )將 50(10) 轉化為二進制數502
25 …….0212 …….12 6 …….0
21 ...….1
2 3 …….0
答案
50(10) =110010(2)
二進制算的缺點• 需用比較長的表示方式;• 數字變化過於單調致容易出錯;
解決方法引進八進制及十六進制數。
八進制數之位值 1 1 1 1 1 1 1 1 1
18
64512
409632768
262144
2097152
16777216
十六進制數之位值 1 1 1 1 1
1
16
2564096
65536
八進制與二進制之關係每三個二進制位可變為一個八進制位。
例如:1011101010(2) = 1352(8)
八進制與二進制之關係二進制 八進制 二進制 八進制
000 0 100 4001 1 101 5010 2 110 6011 3 111 7
十六進制與二進制之關係每四個二進制位可變為一個十六進制位。
例如:1011101010(2) = 2EA(16)
十六進制與二進制之關係二進制 十六進制 二進制 十六進制0000 0 1000 8
0001 1 1001 9
0010 2 1010 A
0011 3 1011 B
0100 4 1100 C
0101 5 1101 D
0110 6 1110 E
0111 7 1111 F
二、八及十六進制間之互換
例如:
7654 ( 8 )
= 111110101100 ( 2 )
= FAC ( 16 )
例如:
2FA7 ( 16 )
= 10111110100111 ( 2 )
= 27647 ( 8 )
練習:將下列數字化為二進制數:
a)69 (10)
b)111 (10)
c)654 (8)
d)5A7 (16)
1000101 (2)
1101111 (2)
110101100 (2)
10110100111 (2)
練習:將下列數字化為十六進制數:
a) 59(10)
b) 11010011(2)
c) 1110010101(2)
d) 7654(8)
3B(16)
D3(16)
395(16)
111110101100(2)
=FAC(16)
二進制小數
二進制小數位之定義• 小數後第一個位代表 2-1 = 0.5
• 小數後第二個位代表 2-2 = 0.25
• 小數後第三個位代表 2-3 = 0.125
• 如此類推• 例如 101.011
• = 4+1+0.25+0.125
• =5.375(10)
將十進制小數轉為二進制小數
• 因為二進制的小數位較為複雜,固不建議用減法計算。
• 建議先用乘法令小數變為整數,再以先前介紹的方法轉化;
• 最後再調整小數點的位置。
例子:•將 3.7 化為二進制小數(致小數後五位)• 3.7 x 25 = 118.4•刪去小數位,只考慮 118• 118(10) = 1110110(2)
•將小數點向左手邊移五步,得到• 3.7(10) = 11.10110(2)
•此答案只為一近似值,誤差稱為截尾誤差
例子:•將 5.625 化為二進制小數(致小數後五位)• 5.625 x 25 = 180.0•無需刪去小數位• 180(10) = 10110100(2)
•將小數點向左手邊移五步,得到• 5.625(10) = 101.10100(2) (沒有誤差)•一般而言,截尾誤差是無法避免的!
練習:將下列數字化為二進制小數( 最多小數後五位):
a) 1.5(10)
b) 2.75(10)
c) 0.8(10)
d) 1.3(10)
1.1(2)
10.11(2)
0.11001 (2)
1.01001(2)