0
我採取了一個普通的整數和鑄造它浮動,我發現很奇怪的是,這取決於我鑄造的價值,在轉換後,LSB可以翻轉一下。將int轉換爲float - 這是如何工作的?
下面是一個例子:
Enter a number: 1313131360
FLOAT: 01001110100111001000100110010111
^
This is where the mantissa starts
INT(Original): 1001110010001001100101101100000
INT(BackFromFloat): 1001110010001001100101110000000
我拿了號碼1313131360和鑄造它浮動,並回到INT,你可以看到在上線的第8位已經變成了一個。
更多我發現,如果我輸入號碼1313131328不會改變這一點:
Enter a number: 1313131328
FLOAT: 01001110100111001000100110010110
^
This is where the mantissa starts
INT(Original): 1001110010001001100101101000000
INT(BackFromFloat): 1001110010001001100101100000000
這是爲什麼?
請看[浮點運算是否壞了?](http://stackoverflow.com/questions/588004/is-floating-point-math-broken) –
@ iharob,我同意......完成。 – user1326293
這兩個例子中的數字都發生了變化 - 爲什麼關注第8位? (順便說一句,「尾數」從你標記的位置開始向右一點)。 –