2015-05-20 64 views
0

假設我有一個浮點(FP)的給定格式的FA(即,用他的指數大小,尾數大小),並且更具體地是這樣算法浮點轉換格式IEEE

FA fa; 

和假設我希望這能格式FB與操作FA2FB,這給一個浮點數FB,即像

FB fb = FA_2_FB(fa); 

在你的知識不IEEE標準提供執行該鑄造的一般方式的最好? (這可能是一個擴大或簡單的格式變化,具有相同數量的位。

是否清除我的問題? 如果標準沒有提供任何內容,我將指定我正在考慮哪些情況。

+0

沒有答案? Pleeeeease幫助我! – user8469759

+0

我今天似乎無法訪問IEEE xplore,所以我無法回答需要標準的問題。你會對基於知識和非標準文檔的答案感興趣嗎? –

+0

出於澄清...你談論的IEEE 754-2008不是?目前,這可能是一個非標準的。 – user8469759

回答

1

我從維基百科的文章複製術語IEEE floating point

我覺得這一點的最好辦法是將它分成四個方面的問題:

  1. 確定楠無限的輸入,並直接生成correspo以目標格式查找位模式。
  2. 給定數字輸入,提取符號,有效數和指數
  3. 檢查新格式的溢出和低於正常值。如果溢出,則生成適當的無窮大。如果低於正常值,計算在有效數字中保留的位數。
  4. 打包成新的格式。如果新的有效位的位數少於舊的,則可能需要舍入。

您需要選擇其中一種標準舍入模式。最簡單的方法是向零取整,這是簡單的截斷。不過,我建議輪到最接近的中點圓到平均。爲此,您需要查看第一個丟棄位的值,以及是否有超出它的任何非零位。

+0

我同意這種做法,但我需要了解是否有標準指定我不知道的東西。這種「某種東西」可能會導致我的實施發生一些變化。例如...假設你必須從尾數M = 30轉換爲M = 23,相同的指數大小,在這種情況下,我應該執行一種特定類型的舍入? (我基本上砍掉一些數字)。我想我應該在這種情況下使用圓形,後衛和粘性位。 – user8469759

+0

該標準指定了多個舍入模式。包括舍入到零,這是你得到的,如果你只是砍掉數字。最經常使用的是圓心到圓心的平均值。最好用防護和粘性物質完成。 –

+0

指數治療怎麼樣? – user8469759