第 一 章
1-1 試將下列十進位數用數列方式表示。
(a) 635.62 (b) 1253.85 (c) 685235 解:
(a) 635.62=6×102 +3×101+5×100 +6×10−1 +2×10−2。
(b) 1253.85=1×103 +2×102 +5×101+3×100 +8×10−1+5×10−2。 (c) 685235=6×105 +8×104 +5×103 +2×102 +3×101 +5×100。
1-2 試將下列二進位數轉換成為十進位數字。
(a) 110101.11 (b) 101110110.011 (c) 1110001101001 解:
(a) (110101.11)2 =1×25+1×24+1×22 +1×20+1×2−1+1×2−2 =(53.75)10
(b) (101110110.011)2 =1×28+1×26+1×25+1×24+1×22+1×21+1×2−2 +1×2−3 =(374.375)10
(c) (1110001101001)2 =1×212 +1×211+1×210 +1×26+1×25+1×23 +1×20 =(7273)10
1-3 試將下列十進位數轉換成為二進位數字。
(a) 63.875 (b) 126.5 (c) 982
解: (a) (63.875)10 =(111111.111)2 (1) 整數部份
31 2
63÷ = 1 LSB 15
2
31÷ = 1
7 2
15÷ = 1
3 2
7÷ = 1
1 2
3÷ = 1
0 2
1÷ = 1 MSB
(2) 小數部份
75 . 0 1 75 . 1 2 875 .
0 × = − = 1
5 . 0 1 5 . 1 2 75 .
0 × = − = 1
0 1 1 2 5 .
0 × = − = 1
(b) (126.5)10 =(1111110.1)2。 (c) (982)10 =(1111010110)2。
1-4 試將十進位數之 (+6)至(−6)分別利用二進位數碼之真值數、1 的補數與 2 的補數表示法出來。
解:
利用 4 位元之二進位數來表示十進位數之(+6)至 (−6)之真值數、1 的補數與 2 的補數,而使 用最左邊之位元(MSB)來表示符號位元,當符號位元為「0」時,表示正數;而符號位元為「1」時,
表示負數。
十進位數字 真值數 1的補數 2 的補數
+ 6 0110 0110 0110
+ 5 0101 0101 0101
+4 0100 0100 0100
+ 3 0011 0011 0011
+ 2 0010 0010 0010
+ 1 0001 0001 0001
0 0000 0111 0000
−0 1000 1111 1000
− 1 1001 1110 1111
− 2 1010 1101 1110
− 3 1011 1100 1101
− 4 1100 1011 1100
− 5 1101 1010 1011
− 6 1110 1001 1010
1-5 試將下列十進位數分別轉換成為二進位數後,再分別利用 1 的補數與 2 的補數之算數運算來
完成二進位之減法運算。
(a) 62 −36 (b) 36 −72 (c) 68 −6 (d) 8 −88 解:
(a) 62−36=26=(011010)2 (1) 1的補數
011011
011010 1 011001 011011 111110 100100 111110
1 36 62
+ +
=
=
(2) 2 的補數
011100 011011
011010 011100 111110 100100 111110
1 36 62
+
=
= 1’s
端回進位
1’s 2’s
(b) 36−72=−36=(−0100100)2 (1) 1的補數
0100100 0110111
1011011 0110111 0100100 1001000 0100100 72
36
− +
=
=
(2) 2的補數
0100100 0111000
0100011 0110111
1011100 0111000 0100100 1001000 0100100 72
36
− +
=
=
(c) 68−6=62=(0111110)2 (1) 1的補數
1111001
0111110 1 0111101 1111011 1000100 0000110 1000100
1 6 68
+ +
=
=
(2) 2的補數
1111010
0111110 1111010 1000100 0000110 1000100
1 6 68
+
=
=
(d) 8−88=−80=(−1010000)2 (1) 1的補數
1010000 0100111
0101111 0100111 0001000 1011000 0001000 88
8
− +
=
=
(2) 2的補數
1010000 1001111
0101000
0110000 0101000 0001000 1011000 0001000 88
8
− +
=
=
1-6 試將下列十進位數轉換成BCD碼後,再進行BCD碼之加法運算,而答案以BCD碼表示。
(a) 62 +38 (b) 186 +846 (c) 99 +1 (d) 8 +80 解:
(a) (62)10 +(38)10 = 0110 0011+0011 0111 =1 0000 0000 =(100)10
62 BCD碼 0110 0010 38 BCD碼 0011 1000
1 進位 0 1 1 0 0 0 1 0 + 0 0 1 1 1 0 0 0 1 0 1 0 1 0 1 0 + 0 1 1 0 + 0 1 1 0 1 0 0 0 0 0 0 0 0
1’s
1’s
1’s
1’s
2’s
2’s
1’s
端回進位
2’s
1’s
1’s
2’s
1’s 2’s
(b) (186)10 +(846)10 =1 1001 0011 0010=(1032)10
186 BCD碼 0001 1000 0110 846 BCD碼 1000 0100 0110
1 1 進位 0 0 0 1 1 0 0 0 0 1 1 0 + 1 0 0 0 0 1 0 0 0 1 1 0 1 0 1 0 1 1 0 1 1 1 0 0 + 0 1 1 0 + 0 1 1 0 + 0 1 1 0 1 0 0 0 0 0 0 1 1 0 0 1 0 (c) (99)10 +(1)10 =1 0000 0000=(100)10
99 BCD碼 1001 1001 01 BCD碼 0000 0001
1 進位 1 0 0 1 1 0 0 1 + 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 + 0 1 1 0 + 0 1 1 0 1 0 0 0 0 0 0 0 0 (d) (8)10 +(80)10 = 1000 1000 =(88)10
08 BCD碼 0000 1000
80 BCD碼
1000 0000
1 進位 0 0 0 0 1 0 0 0 + 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0