2018年2月14日 星期三

計概A-02數字表示法

A-2.1不帶號整數

1.1Byte表示,沒有符號位元。

2.資料是n位元,數值範圍是0 ~ (2n - 1)

3.記憶體之儲存格式

0

1

1

1

1

0

1

1

27

26

25

24

23

22

21

20

 1 * 26 + 1 * 25 + 1 * 24 + 1 * 23 + 1 * 21 + 1 * 20 = (123)10

 

A-2.2帶號整數

1.2Byte表示,以1bit作符號位元(0代表正數,1代表負數)

2.資料是n位元,數值範圍

 1的補數(Complement)-(2n-1 - 1) ~ +(2n-1 - 1)

 2的補數:-2n-1 ~ +(2n-1 - 1)

3.記憶體之儲存格式:黃底為符號位元(Sign bit)

 (1)正數

0

0

0

0

0

0

0

0

0

0

1

0

1

1

0

1

  (+45)10 = (101101)2

 (2)負數

  1的補數:將原2進位數的各位元值0 11 0

  2的補數:1補數加1

  例:使用2Bytes儲存(-45)10

    (+45)10 = (0000 0000 0010 1101)2

    1的補數 = (1111 1111 1101 0010)2

    2的補數 = (1111 1111 1101 0011)2

 

A-2.3二進位浮點數算術標準(IEEE 754)

方式

單精確度(32位元)、雙精確度(64位元)、延伸單精確度(43位元以上,很少使用)與延伸雙精確度(79位元以上,通常以80位元實做)

表示法

sign

exponent(8bits)

fraction(23bits)

0

10000001

01110000000000000000000

31

30~23

22~0

sign部分:(-1)SS0表示正數;S1表示負數。

exponent部分:指數減去偏移值的差。

fraction部分:有效數的小數部分,省略科學表示法實數部分的1

偏移值

單精度的指數占用30~23的位置為8bits,偏移值為127

雙精度的指數占用62~52的位置為11bits,偏移值為1023

四精度的指數占用126~112的位置為15bits,偏移值為16383

範例

5.7510為正數,sign部分為0

5.7510 = 101.112,科學表示法1.0111×22,指數為2

指數2+偏移值127=129129轉為二進制10000001填入指數部分。

數值部分填入小數0111,剩下的位元填入0

 

A-2.4128(excess-128):用於表示二進位數字的編碼方式,其中每個數字都加128

例:(61)10轉換為超128

(61)10 + (128)10 = (189)10

(189)10 = (1011 1101)2

 

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。