在求一個 2 進位數字 (n , k 位數 )1 補數的方法有二種:
DESCRIPTION
補數. 在求一個 2 進位數字 (N , K 位數 )1 補數的方法有二種:. 範例:若數字系統以 1 補數表示時, (B). (-3) 10 的 2 進位表示法 (8 個位元 ) 為何 ? 因為 -3 是負數,所以只要取 3 的 1 補數值即是 -3 的表示法。 (3) 10 =(00000011) 2 ,其 1 補數值 =(11111100) 2 ,所以 (-3) 10 =(11111100) 2. 範例:若數字系統以 1 補數表示時, (A). (6) 10 的 2 進位表示法 (8 個位元 ) 為何 ? 判別正負值 , 正為 0, 負為 1 - PowerPoint PPT PresentationTRANSCRIPT
1
補數• 在求一個 2 進位數字 (N , K 位數 )1 補數的方法有二種:
2
範例:若數字系統以 1 補數表示時,
(B). (-3)10 的 2 進位表示法 (8 個位元 ) 為何 ?
• 因為 -3 是負數,所以只要取 3 的 1 補數值即是 -3
的表示法。
• (3)10=(00000011)2,其 1 補數值 =(11111100)2,
所以 (-3)10=(11111100)2
3
範例:若數字系統以 1 補數表示時,
(A). (6)10 的 2 進位表示法 (8 個位元 ) 為何 ?
• 判別正負值 , 正為 0, 負為 1
• 用 2 進位表示法該值 . (6)10=(00000110)2
• 其 1 補數值為 (11111001)2
4
2 補數• 在求一個 2 進位數字 (N , K 位數 )2 補數的方法有二種:– 方法一:用最大值 (K 位都是 1)+1 ,再減 N– 方法二:由 N 的 1 補數加 1 。
5
範例:若數字系統以 2 補數表示時,
(A). (25)10 的值為 2 進位的多少 ?
• 25 是正數,所以最左邊位元是 0 ,所以
(25)10=(00011001)2
• 其 1 補數值 =(11100110)2,其 2 補數值 =(11100111)2
6
範例:若數字系統以 2 補數表示時,
• (B). (-33)10 的值為 2 進位的多少 ?
• 因為 -33 是負數,所以只要取 33 的 2 補數值即是 -33 的表示法。
• (33)10=(00100001)2,其 1 補數值 =(11011110)2,其 2 補
數值 =(11011111)2
• 所以 (-33)10=(11011111)2
7
補數加法運算– 0100 4
– + 0011 3– -----------------------------– 00111 7
– 00000100
– + 00000011– ----------------------– 000000111
– 0011 3
– + 0101 5– ----------------------------– 1000 8
– 1101 13
– + 1000 8– ----------------------------– 10101 21
8
補數減法運算– 0100 4
– - 0011 3– -----------------------------– 0001 1
– 0011 3
– - 0101 5– ----------------------------– 11110 ?
9
補數乘法運算– 0101 5 – * 0011 3– -----------------------------– 0101 15 – + 0101– -----------------------------
• 1111
10
補數除法運算
11
0011√ 01011
-------------------------
0011
101
011-------------------------
10
11
8 補數與 7 補數• (72)8 以 8 補數表示時• 82 - (72)8
• = 64 – 58• = 6
• (72)8 以 7 補數表示時• 82 - (72)8 –1
• = 64 – 58 –1• = 5
12
浮點數表示法• 以一個 4 字元 (32Bit) 的浮點數 (Floating Point)表示法為例,我們必須先將數值處理成正規化型式 (Normalized Form) ,其型式是將任一數值表示成 :「 +- A x 2N 」。其中 A 值範圍為: 0.1 <= A < 1
• 即 A 要表示成小數點型式,且小數之後第 1 位是1 。 N 則是次方數。經過正規化型式,可以將一個數值分成三部分,如圖 2-8 。
0 23 24 30 31
特性數 小數
位元編號
符號數
24 位元 7 位元
13
浮點數表示法• 符號數 (Sign) :
– 最左邊第 1 個位元, 1 代表負數, 0 代表正數• 特性數 (Exponent ,亦稱為指數 ) :
– 左邊數起的第 2 個到第 8 個位元 ( 共 7 個 ) ,代表此數的次方數。但是次方數還是要有正負號之分,例如 25
或 2-3,所以此部分要能區分出正負數,最簡單的方法是前半 段數字代表負數,後半段數字代表正數,例如以 7 個位元為例, 27=128 ,代表 0~127 。所以 0~63 代表負數 -64 到 -1 , 64~127 代表正數 0 到 63
• 小數 (Mantissa ,亦稱為尾數或假數 ) :– 一般是佔左邊數起的第 9 個到第 32 個位元 ( 共 24 個 ) ,代表此數的小數資料
14
• 範例:將 15.5 轉換成正規化型式的浮點數?• 解答:
– 1. 先將 15.5 轉換為 2 進位, (15.5)10= (1111.1)2
– 2. 將數值 (1111.1)2正規化 = (0.11111)2 x 24
– 3. 取其各部分的值:– 符號數: 0 因為數值是正數– 特性數: (4 + 64)10=(68)10=(1000100)2
– 小數:前面 5 個 11111 ,其餘皆是 0 ,所以是– 111110000000000000000000– 4. 合併浮點數 = 符 特 小– 號 性– 數 數 數– 0 1000100 11111000000000000000000
0
– 以 Byte 表示時,即 01000100 11111000 00000000 00000000