成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

FE.ES-終結(jié)0.1+0.2,答到點上的那種

qylost / 782人閱讀

摘要:隨便逛了一下知乎和思否的博文,大都沒回答到點上。當比較和時,實際比較的是轉(zhuǎn)成進制,看上去是結(jié)果很明顯啦參考資料

隨便逛了一下知乎和思否的博文,大都沒回答到點上。

I.浮點數(shù)的二進制存儲

采用 IEEE 754 規(guī)范來存儲浮點數(shù):
1位【正負符號】+11位【指數(shù)】+52位【有效數(shù)字】,如下圖

由于0.1.toString(2)=0.0001100110011001100110011001100110011001100110011001101
所以
0.1 = 2^-4 * [1].1001100110011001100110011001100110011001100110011010
0.2 = 2^-3 * [1].1001100110011001100110011001100110011001100110011010

II. 到底怎么相加

鐵律是52位有效數(shù)字,也就是:

0.1 = 2^-3 *  0.1100110011001100110011001100110011001100110011001101(0)
0.2 = 2^-3 *  1.1001100110011001100110011001100110011001100110011010
sum = 2^-2 * 1.0011001100110011001100110011001100110011001100110011(1)

由于有效數(shù)字變成了53位,根據(jù)IEEE754 rounding mode 的 Round to Nearest,若x在a和b之間,選擇最低有效位為零的值。

a = 2^-2 * 1.0011001100110011001100110011001100110011001100110011
x = 2^-2 * 1.0011001100110011001100110011001100110011001100110011(1)
b = 2^-2 * 1.0011001100110011001100110011001100110011001100110100

當比較0.1+0.2 和 0.3時,實際比較的是

0.1 + 0.2 => 0:01111111101:0011001100110011001100110011001100110011001100110[100]
0.3       => 0:01111111101:0011001100110011001100110011001100110011001100110[011]

轉(zhuǎn)成10進制,看上去是:

0.1 + 0.2 => 0.300000000000000044408920985006...
0.3       => 0.299999999999999988897769753748...

結(jié)果很明顯啦

參考資料:
https://stackoverflow.com/que...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102151.html

相關(guān)文章

  • 2019面試筆記

    摘要:使用構(gòu)造函數(shù)創(chuàng)建對象后,新對象與構(gòu)造函數(shù)沒有關(guān)系了,新對象的屬性指向的是構(gòu)造函數(shù)的原型對象。構(gòu)造繼承使用父類的構(gòu)造函數(shù)來增強子類的實例,等于是在子類的構(gòu)造函數(shù)內(nèi)部執(zhí)行。 一.js原始類型: 在js中,存在著6種原始值: * boolean * number * string * undefined * null * symbol 注意: 雖然typeof null輸出的是o...

    nidaye 評論0 收藏0
  • 深度剖析0.1 +0.2===0.30000000000000004的原因

    摘要:吐槽一句,大二的專業(yè)課數(shù)字邏輯電路終于用在工作上了。,整數(shù)位為,且精度只到十分位,因此是。如果是不限精度的話,轉(zhuǎn)換后的二進制數(shù)應(yīng)該是無限循環(huán)。再看一下百科給出的標準因此,的類型,最高的位是符號位,接著的位是指數(shù),剩下的位為有效數(shù)字。 showImg(https://segmentfault.com/img/remote/1460000011902479?w=600&h=600); 用一...

    haobowd 評論0 收藏0
  • numpy數(shù)組維度理解終結(jié)

    摘要:寫在前面可能你會不相信,我是從玩中過來的,我覺得有必要記錄一下,這個坑還非踩不可為了說的清楚一點兒,我多鋪墊一點兒,先說說數(shù)組維度的理解引子老鐵們猜一猜長啥樣我猜你還沒到點我到底想說啥,還是一頭霧水,對吧哈哈別揍我,關(guān)子賣的挺大,我到底想說 寫在前面 可能你會不相信,我是從玩pytorch中過來的,我覺得有必要記錄一下,transpose這個坑還非踩不可,為了說的清楚一點兒,我多鋪墊一...

    LeexMuller 評論0 收藏0
  • 譯文-G1收集器

    摘要:原文出處設(shè)計的一個重要目標是設(shè)置階段的持續(xù)時長和頻率,因為垃圾收集器可預(yù)測,可配置。收集器盡自己最大努力高概率實現(xiàn)目標但不是必然,它會是硬實時。因此名稱是收集器。運行不同使用獨立的收集器。 原文出處:G1 – Garbage First G1設(shè)計的一個重要目標是設(shè)置stop-the-world階段的持續(xù)時長和頻率,因為垃圾收集器可預(yù)測,可配置。事實上,G1是一款軟實時的收集器,意味著你...

    missonce 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<