引用
引用第3樓grrrmeng于2017-06-02 15:29發(fā)表的 :
OK 問題已經找到了 原來是浮點乘法的時候 使用常數(shù) 他本身不能夠變?yōu)楦↑c。增加了一部賦值就好了 謝謝 謝謝
原因并不是本身不能夠變成浮點,而是浮點數(shù)在內存中排列與有符號數(shù)不同。
你可以對一個32位數(shù)進行隨意賦值一個不為0的常數(shù),最終都能出現(xiàn)浮點數(shù)。
出現(xiàn)你目前的原因是:
因為你將一個常數(shù)賦予浮點數(shù),也可以認為你將一個常數(shù)給了一個32位存儲空間,而這個常數(shù)在32位存儲空間中排列所得到的浮點數(shù)是一個很小的值。
由于這個值非常小,導致乘法結果是一個小數(shù),最終導致一個小數(shù)被轉化指令轉化為0了。
這才是導致你認為FIX沒有執(zhí)行的真正原因,因此,如果你希望在這個領域水平有所提高的話,你還是需要去看IEEE754浮點數(shù)的相關內容,特別是浮點數(shù)在內存中的排列格式。
Good Luck~