390 likes | 574 Views
計算機概論. 實習學生:蔣佳欣 學號: M93G0214. 課程簡介. 進制種類 進制轉換 數值的加減 補數種類 補數計算. 進制種類. 數值表示法 通常表示為 (N) r 或 N r r代表進制 r進制是由 0,1, …, r -1 共r個數字所構成 N 為r進制中的任何一個數值 當為十進制,則r可省略 例如:八進制是由 0,1, …,7 所構成。. 進制種類. 常見的進制種類 二進制:由 0 或 1 所構成 , 例如: (01001) 2 八進制:由 0 …7 所構成 , 例如: (275) 8
E N D
計算機概論 實習學生:蔣佳欣 學號:M93G0214
課程簡介 • 進制種類 • 進制轉換 • 數值的加減 • 補數種類 • 補數計算
進制種類 • 數值表示法 通常表示為 (N)r 或 Nr • r代表進制 • r進制是由0,1, …,r-1共r個數字所構成 • N為r進制中的任何一個數值 • 當為十進制,則r可省略 例如:八進制是由0,1, …,7所構成。
進制種類 • 常見的進制種類 二進制:由0或1所構成 , 例如:(01001)2 八進制:由0…7所構成 , 例如:(275)8 十進制:由0…9所構成 , 例如:7899 十六進制:由0…9,A,B,C,D,E,F所構成。 其中A=10, B=11, C=12, D=13, E=14, F=15 例如:(9AFC)16
進制轉換 • 十進制轉r進制 • r進制轉十進制 • 2冪次方進制互轉 • 非2的冪次方進制互轉
分子 分母 十進制轉r進制 • 將數值分為整數與小數(或分數)兩部份各別計算 ( . )或 ( 整數 —— ) 整數 小數 r 連除以r 由下往上 取餘數 連乘以r 由上往下 取整數 口訣:整數用除取餘數,小數用乘取整數。
十進制轉r進制 • (13.625)10 (?)2 13 2 0.625*2 = 1.25 1 2 6 0 2 3 0.25*2 = 0.5 1 1 0.5*2 = 1.0 1101 101 所以答案為 (1101.101)2
8 19 2 3 十進制轉r進制 • (19.125)10 (?)8 0.125*8 = 1.0 1 23 所以答案為 (23.1)8
16 194 12 2 十進制轉r進制 • (194.25)10 (?)16 0.25*16 = 4.0 C2 4 所以答案為 (C2.4)16
3 6 1 3 4 6 1 2 8 8 8 8 2 8 10 2 ––*2 = 0 –– ––*2 = 1 ––*2 = 1 –– = 1 –– 5 0 2 2 1 2 1 0 十進制轉r進制 • (10 ––)10 (?)2 1010 011 所以答案為 (1010.011)2
4 3 4 2 3 8 1 1 3 2 24 32 16 5 5 5 5 5 5 5 5 5 5 5 5 5 –– * 8 = ––– = 4 –– –– * 8 = ––– = 3 –– –– * 8 = –– = 1 –– –– * 8 = ––– = 6 –– 8 15 1 7 ____ 所以答案為 (17.4631)8 ____ 4631 十進制轉r進制 真分數一致,代表循環 • (15 ––)10 (?)8 17
* * * * * * * * * * * * * * ... ... ... ... rn-1 rn-1 rn-2 rn-2 r1 r1 r0 r0 r -1 r -1 r -2 r -2 r –m r –m r進制轉十進制 • r進位之數值可表示為 XnXn-1...X2X1.Y1Y2...Ym 則其對應的十進制 (Xn Xn-1 ... X2 X1.Y1 Y2 ... Ym )r ( . )10 整數 整數 小數 小數
1 1 3 = –– + –– 4 8 8 = –– r進制轉十進制 • (10110.011)2 (?)10 24 22 20 2-2 23 21 2-1 2-3 24+ 23 + 22 + 21 + 20 0* 1* 1* 2-1 + 2-2 + 2-3 1* 0* 1* 1* 0* = 16 + 4 + 2 = 22 = 0.375 所以答案為 (22.375)10
7 2 23 = –– + ––– 8 64 64 = ––– r進制轉十進制 • (356.27)8 (?)10 82 80 8-2 81 8-1 2*8-1 + 7*8-2 3*82 + 5*81 + 6*80 = 192 + 40 + 6 = 238 = 0.36 所以答案為 (238.36)10
189 13 11 = ––– + –––– 256 256 16 = –––– r進制轉十進制 • (A5C.BD)16 (?)10 162 160 16-2 161 16-1 11* 13* 16-1 + 16-2 10* 5* 12* 162 + 161 + 160 = 2560 + 80 + 12 = 2652 = 0.74 所以答案為 (2652.74)10
2冪次方進制互轉 • 先將原進制轉換成二進位,再將二進位轉換成所需進制。 • 轉換過程可利用先前的進制數值對照表完成。
2冪次方進制互轉 • (26.47)8 = (?)2 = (?)16 • (3E7.AF)16 = (?)2 = (?)8 (26.47)8 = (10110.100111)2 = (010 110.100 111)2 = (10110.100111 )2 00 = (14.9C)16 = (1111100111.10101111)2 = (1111100111.10101111 )2 (3E7.AF)16 = (0011 1110 0111.1010 1111)2 0 = (1747.536)8
7*9-1 1*92 + 8*91 + 4*90 = 81 + 72 + 4 = –– 5 = 157 31 2 = 0.78 5 6 1 5 0.78*5 = 3.9 157 1 1 7 0.9*5= 4.5 9 0.5*5 = 2.5 _ _ 所以答案為 (1112. 342)5 342 非2的冪次方進制互轉 • (184.7)9 = (?)10 = (?)5 小數一致,代表循環 1112
數值的加減 • 二進位與十進位都可分別直接做加、減運算。 • 其它進制的運算先轉成二進位或十進位再做運算,最後再轉回欲轉的進制即可。
8 43 5 3 數值的加法 • (18.4)10 + (26.225)10 = (?)8 (18.4)10 + (27.225)10 = (43.625)10 0.625*8 = 5.0 5 53 所以答案為 (53.5)8
6 649 1 108 6 0 18 6 3 0 數值的加法 • (45)6 + (123)6 + (2345)6 = (?)6 (45)6 = 4*61 + 5*60 = 29 (123)6 = 1*62 + 2*61 + 3*60 = 51 (2345)6 = 2*63 + 3*62 + 4*61 + 5*60 = 569 (29)10 + (51)10 + (569)10 = (649)10 3001 所以答案為 (3001)6
16 28 1 C 數值的減法 • (47.6)10 - (19.1)10 = (?)16 (47.6)10 - (19.1)10 = (28.5)10 0.5*16 = 8.0 8 1C 所以答案為 (1C.8)16
7 93 13 2 7 1 6 數值的減法 • (356)7 - (164)7 = (?)7 (356)7 = 3*72 + 5*71 + 6*70 = 188 (164)7 = 1*72 + 6*71 + 4*70 = 95 (188)10 - (95)10 = (93)10 162 所以答案為 (162)7
補數種類 • 補數的意義:電腦在執行算術運算時,對於減法運算,為了簡化電路的設計,均使用補數(Complement) 的原理,使減法運算利用補數及加法運算來取代。 即A-B=A+(B的補數)
N的(r-1) 's補數 = rn –r-m - N rn - N (N≠0) 0 (N = 0) N的r's補數 = 補數種類 • 補數的定義:對任一以r為進制的非負數 N,其中有n位整數,m位小數位數,則存在有二種補數表示法,即 r's補數及 (r-1)'s 補數。
補數計算 • (2006.5)10的10's及9's補數 r=10, N=2006.5, n=4, m=1 9's = rn – r-m - N = 104 - 10-1 - 2006.5 = 7993.4 10's = rn - N = 104 - 2006.5 = 7993.5
補數計算 • (r-1) 's補數求法將每一位元以 (r-1) 減去其值,即可得 (r-1)'s 補數。 • r 's補數求法將 (r-1) 's 補數之最右邊的位元加 1 ,即可得 r's 補數。 r's的補數值= (r-1) 's補數值+ (最右邊的位元加1)
9999.9 7993.4 ˍˍˍˍˍ - 2006.5 ˍˍˍˍˍ + 0.1 補數計算 • (2006.5)10的10's及9's補數 9's 10's (7993.4)10 (7993.5)10
555.55 12.34 + 0.01 - 543.21  ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ 補數計算 • (543.21)6的6's及5's補數 5's 6's (12.34)6 (12.35)6
FF.FFF 5C.430 - A3.BCF + 0.001  ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ 補數計算 • (A3.BCF)16的16's及15's補數 15's 16's (5C.430)16 (5C.431)16
補數計算 • 二進制求 1 的補數,只要將原本為1的數值改為0;0的數值改為1 ,便可得 1 的補數。 • 2 的補數則只需將 1 的補數值的最右邊位元加 1即可。
0010.110 + 0.001  ̄ ̄ ̄ ̄ ̄ ̄ 補數計算 • (1101.001)2的2's及1's補數 1's 2's 1101.001 (0010.110)2 (0010.111)2
補數計算 • (0.101)2的1's補數 1's 0.101 (1.010)2 (0.010)2 當N為純小數時,整數位數不用變為補數
重點複習 • 進制種類 • 進制轉換 • 數值的加減 • 補數種類 • 補數計算
13 2 0.625*2 = 1.25 2 6 1 0 2 3 0.25*2 = 0.5 1 1 0.5*2 = 1.0 1101 101 十進制轉r進制 • 將數值分為整數與小數(或分數)兩部份各別計算 (13.625)10 →(?)2 答案= (1101.101)2 ★:整數用除由下往上取餘數 小數用乘由上往下取整數。
82 81 80 8-1 8-2 2*8-1 + 7*8-2 3*82 + 5*81 + 6*80 23 2 7 = 192 + 40 + 6 = –– + ––– 64 64 8 = 238 = ––– = 0.36 r進制轉十進制 • ( 3 5 6 . 2 7 )8 (?)10 答案= (238.36)10
5's 6's 555.55 12.34 + 0.01 - 543.21  ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ (12.34)6 (12.35)6 補數計算 • (543.21)6的6's及5's補數