在求一個 2 進位數字 (N , K 位數 )1 補數的方法有二種: - PowerPoint PPT Presentation

slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
在求一個 2 進位數字 (N , K 位數 )1 補數的方法有二種: PowerPoint Presentation
Download Presentation
在求一個 2 進位數字 (N , K 位數 )1 補數的方法有二種:

play fullscreen
1 / 14
在求一個 2 進位數字 (N , K 位數 )1 補數的方法有二種:
147 Views
Download Presentation
signa
Download Presentation

在求一個 2 進位數字 (N , K 位數 )1 補數的方法有二種:

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  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. 補數加法運算 • 1101 13 • + 1000 8 • ---------------------------- • 10101 21 • 0100 4 • + 0011 3 • ----------------------------- • 00111 7 • 0011 3 • + 0101 5 • ---------------------------- • 1000 8 • 00000100 • + 00000011 • ---------------------- • 000000111

  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。

  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 111110000000000000000000 • 以Byte表示時,即 01000100 11111000 00000000 00000000