2013-05-10 76 views
1

今天晚些時候我有一個操作系統決賽,我正在看我過去的考試。反正長話短說我錯了,這不是硬件問題,我只是不確定如何去做。十進制到二進制使用符號,指數,大小

「假設我們使用32個位來表示的實數,用1位的數量,7位爲指數,和所述大小24位的符號。顯示中的位模式的數目0.5」

我在考試中的做法是將數字乘以2,保留小數點前的第一位數字,如果餘數不爲0,則用餘數重複該過程,否則我們完成。

0.5 * 2 = 1.0

0 * 2 = X

答案1

,但這是不正確的,任何人都可以幫助我的過程嗎?謝謝。

回答

2

所述指數和一個隱含的尾數前導1假設的63 a bias,我會斷定下面的位模式:

0 0111110 000000000000000000000000(== 0x3E000000

+(1 + 0) * power(2, 62-63)

== +1 * power(2, -1)

== == +1 * 0.5+0.5

reference

+0

我無法理解你解釋什麼,你可以去更多的細節/解釋? – user2369869 2013-05-10 12:14:32

+0

你沒有完全指定編碼(就像指數有偏差,是否保留了一些指數值),所以我做了一些假設。我在我的答案中添加了一些鏈接,可能會對您有所幫助。使用僅爲零的尾數給出'1 * power(2,指數偏置)'的值,所以爲了得到'power(2,指數偏置)== 0.5',我們希望'exponent-bias'等於' - 1'。假設63的偏差給了我們'指數== 62'。 – Michael 2013-05-10 12:23:01