簡體   English   中英

浮點數轉十進制數

[英]Floating point number to decimal number

我有以下浮點數:1|011|1001。 多項選擇中可能的答案是:
a)-729
b)729
c)72
d)-72。
答案是 d) -72。 但怎么可能呢? 我不知道他們是如何計算的。 我認為我的學校使用了另一種方法,而不是互聯網上已知的方法,因為當我像在我看過的所有教程中一樣嘗試時,它不起作用。 我什至嘗試向后像 -72 到浮點數,但指數已經不同了。 有人可以為我解釋一下嗎?

在“1|011|1001”中,1為符號域,011為指數域,1001為有效位域。

+ 的符號位是 0,- 的符號位是 1,所以這是 -。

011 2是 3,顯然意味着按 2 3縮放

1001 2是 9,意思是 9 的有效數。

所以這個數字是 − 2 3 • 9 = −72。

但是,這根本不是標准格式。 通常指數會被某個值偏置(偏移)。 對於n位字段,這通常是 2 n -1 -1,因此對於 3 位字段,偏差將為 3,001 表示 -2 的指數,010 表示 -1,011 表示 0,等等。

此外,有效位字段通常被縮放,因此 1001 將代表 0.1001 2 (9/16) 而不是 1001 2 (9)。 此外,根據指數字段的值,有效數通常由 0 或 1 的前導位構成。

所以這種格式與常見的格式有很大的不同。 任何測試或練習都不應該期望學生在沒有事先記錄的情況下知道它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM