国产在线一区视频-国产在线永久视频-国产在线原创剧情麻豆-国产在线中文字幕-男人的天堂在线播放-男人的天堂在线观看入口

WAP手機網站 手機下載 手機軟件 手機游戲 手機網游 手機主題 手機圖片 手機鈴聲 手機世界微博
手機游戲攻略

減法都算錯?安卓驚爆計算器低級錯誤Bug

劉致遠 it168 2011-3-21

最近小編我在網上閑逛的時候發現有很多用戶都在反映一個非常驚悚的問題:使用Android手機內置的計算器時有些最簡單的減法都會算錯,例如14.52-14.49,再例如8.03-7.96,具體結果各位網友請趕緊拿出自己手上的Android手機算算吧,如果沒有Android手機的話,那就只能看小編我來算了...

 

 

 

 


▲左邊:14.52-14.49;右邊:8.03-7.96

  如上面兩張圖,這個計算錯誤簡直是讓人匪夷所思,而且其實不止這兩道題,會出現問題的數字還有很多很多。這萬一要是考試的時候偷偷作弊掏出來算個題目啥的,那還不直接補考補到死??話說考試作弊是不對,不過這個問題的確很嚴重,而且根據我的調查,身邊使用Android手機的人也基本上都出現了這個問題。真的是google的開發人員犯了如此低級的錯誤嗎?還是另有隱情?請大家關注本期走進科學...

  開個玩笑,小編我在發現這個問題之后立馬進行了大量的查證,具體是為啥呢?還是谷歌大神萬能:首先,在我們進行四則運算時計算機需要將十進制的數轉換成二進制,并且因為有小數,所以采用浮點數的方式存儲。如何怎么轉換成二進制?計算方法如下:

  整數部分采用 除2 取余數;小數部分采用 乘2 取整數。

  以8.03為例:

  整數部分:

  8/2 =4 余 0

  4/2 =2 余 0

  2/2 =1 余 0

  1/2 =0 余 1

  倒序排列取得的余數:1000

  小數部分:

  0.03 × 2 =0.06 整數 0

  0.06 × 2 =0.12 整數 0

  0.12 × 2 =0.24 整數 0

  0.24 × 2 =0.48 整數 0

  0.48 × 2 =0.96 整數 0

  0.96 × 2 =1.92 整數 1

  0.92 × 2 =1.84 整數 1

  0.84 × 2 =1.68 整數 1

  小數部分幾乎無窮無盡,但為了方便起見,我們只取前8位就可以了。

  正向排列取得的整數:00000111

  好了,8.03的二進制表示就是1000.00000111

  同理,7.96的二進制表示就是0111.11110101

  其次,有了2個數的二進制表示,然后就可以相減了:1000.00000111 - 0111.11110101

  豎向排列比較容易看

  1000.00000111 -

  0111.11110101

  ====結果是 ====

  0000.00010010

  然后將0000.00010010重新轉換成十進制

  如何轉換成10進制?

  有個公式可以用:假設有二進制數 ABC.XYZ ,轉換成10進制的值為

  ABC.XYZ =A×2^2 + B×2^1 + C×2^0 + X×2^-1 + Y×2^-2 + Z×2^-3 (^ 這個是冪運算符號,這個公式適用于任何進制轉換成十進制,只需將底數替換成相應的進制就可以了)

  通過這個公式,我們我們可以將二進制數的每一位對應轉換成十進制,然后相加,就得到最后的結果了。

  0000.00010010 =0 + 1×2^-4 + 2^-7 =0.0703125

  好了,現在很清晰了,計算機得出的最終結果是0.703125,而不是0.7!!!

  似乎和計算器中0.06999999有點不一樣?

  沒錯,因為我們的精度不夠:剛開始的時候,我們只取了8位二進制小數!

  如果我們能以單精度23個數據位來計算的,結果是:0.06982421875

  如果能以雙精度52個數據位來計算,那結果就是:0.06999999......  

  簡單的來說就是,由于咱們目前計算機技術的原因,這個問題是必然會出現的,而且這個問題在目前還無法從根本上解決,但可以通過某些技術手段來進行規避,例如在進行小數運算時先乘以100或者更大的數字來將其轉換為整數,在運算完成后再除以相應的數字來得到精確的結果。最后,小編發現并不只是Android手機內置的計算器會出現這個問題,例如百度的計算器也會,而有些計算器能夠得到相對精確的結果就是因為對算法進行了優化的結果。


▲百度計算器算8.03-7.96時的結果


 

手機資訊


手機資訊
經典游戲新版本更吸引人 蘋果熱門游戲推薦
銷量口碑均占優 各品牌手機中流砥柱一覽
低端手機哪個好 1000元左右智能手機推薦
720P視頻連播14小時 摩托羅拉XT910 MAXX評測
4.3英寸已成主流 超人氣大屏手機推薦
經典游戲重現江湖 一周Android游戲推薦
電信定制售價1999元 HTC新渴望VC上市
三星五一全國促銷 熱門手機選購推薦
不搶風頭不算好手機?HTC Titan II解析
1.4GHz四核+2050mAh 三星GALAXY SIII現身



手機資訊
售價3988元 行貨iPhone4 8G版小幅降價
耗電問題得以解決 iOS 5.0.1正式發布
真的如同過節 iPhone4S在香港正式發售
官方公告:索愛XperiaArc可運行PS游戲
搭載Tango系統 諾基亞Champagne曝光
雙核Android 4.0來襲 本周十大新機匯總
Android排第一 蘋果美國市場走勢持續上升
1.4GHz+Mango系統 諾基亞Sun即將上市
挑戰iPhone 4S 谷歌Nexus Prime再曝光
iPhone 4S無鎖版裸機價公布 11月起售
手機論壇


  諾基亞手機 蘋果手機 HTC手機 三星手機 摩托羅拉手機 索愛手機  




主站蜘蛛池模板: 亚洲一卡二卡三卡| 国产午夜一道一区视频| 国产无套内精一级毛片三| 精品无码久久久久久久久亚裔 | 午夜成人小说网| 天天色天天操天天日| 日韩丰满女子毛茸茸| 欧美在线视频一区二区| 亚洲天堂一区漫画| 亚洲911精品成人18禁网站| 色男人天堂人人操| 欧美国产精品二区三区13p| 日韩精品久久久肉伦网站| 欧美日韩久久久精品免费播放 | 婷婷国产人妻网站| 欧美特黄三级成人| 色多多欧美日韩国产导航| 亚州日韩免费在线| 色婷婷丁香影院| 免费观看永久视频18| 精国久久久久久久动漫| 精品一区二区无码| 国产精品嫩草55AV| 国产一区二区 小说| 岛国AV免费观看| 国产精品久久人妻朋友黄牛影视| 本日巨黄色黄色网| 厕所偷拍一区二区三区| 一区二区三区 欧美| 中文字幕在线观看无码| av老司机在线观看| Av无码1区2区3区漫画在线观看| 亚洲无码在线中文字幕| 日韩欧美一区二区三区在线观看 | 午夜福利蜜臀AV| 欧美日本在线观看| 欧美国产精品在线播放一区二区三区四区 | 日欧美国产一区二区| 久久久久久久久久黃色| 久久久野狼社区日本生活片 | 国产射精电影免费在线观看|