2014-09-02 28 views
0

大家下午好。我不確定發佈這個問題的位置,所以如果這是錯誤的話,我表示歉意。我目前正在參加一個Discreet數學課程,最初我認爲我理解二進制浮點數轉換爲十進制轉換,而不是以前的課程。然而,今天在做一些使用任意大小的練習時,我遇到了一個我必須理解的問題。爲了簡單起見,我將使用1符號位,3位指數(4位偏移而不是127)和4位尾數。將二進制浮點數轉換爲紙上的十進制數。尾數以0開頭

我有這個號碼。 0 010 0100似乎很容易,它可能是所有你的專家。

  • 我知道第一個0位是符號位,這個數字是正數。
  • 我也知道接下來的3位是指數位。 010表示2.對於這個問題,我使用4位偏移而不是127,所以我做2 - 4 = -2。我會將不可見的小數點轉移到尾數上的左側2個點。

這是我的問題。這個尾數從0開始,而不是從1開始。那麼在1之前或之後是「隱形」小數點?

基本上我問的是,在移位小數之前,尾數是0.100還是1.00?奇怪的是,在我以前的課程中考過的所有浮點問題,我不相信我遇到了這個問題。也許教授通過給我們簡單的場景對我們很友善。

我一直認爲,尾數爲「標準化,所以我應該可以看到這個尾數爲1.000左移兩次獲得0.01000成爲十進制0.25之前,但現在我不那麼肯定。

感謝您的時間所有!

回答

2

對於普通浮法格式,還有一個暗示領先並不在其中尾數位數編碼。所以,你的尾數實際上是1.0100二進制。

更多信息請參閱IEEE_754-1985

+0

你完全震撼了我的世界!這是絕對有道理的。所以當我從十進制轉換回二進制時,這就是爲什麼我把小數移到第一位有效數字。那是對的嗎?我將小數點移到左邊,直到小數點前面有1,例如1.010101011?非常感謝。現在我完全明白爲什麼有隱含的領先優勢。 – 2014-09-02 22:43:53

相關問題