[筆記]浮點數(Floating Point)整理

閱讀時間約 2 分鐘

何謂浮點數?

在了解浮點數之前,可以先大概了解一下跟他相對應的定點數

定點數:

小數點固定,整個數字表示為 整數 + 小數
今天要表示 25.125
那定點數表示法就是 25 125,中間再以小數點作為連接

浮點數:

小數點是漂浮不定的,整個數字表示分為 有效數字跟指數,類似於科學記號表示法
今天要表示 25.125
那浮點數表示法就是 2.5125 * 10^-1

為何需要浮點數?

今天若需要儲存那些很大的數字或很小的數字的時候,為了要讓精度提高,我們會需要大量的記憶體去儲存那些數字
像是 150000000 和 0.00000015
若是以浮點數表示就是 1.5*10^7 和 1.5 * 10^-7
電腦只需要儲存 1.5 有效位數跟 7 指數這兩個數字,這樣節省大量記憶體,也讓我們能夠操作很大或是很小的數字
若以圓周率來說
3.14159265359
若要很精確儲存圓周率,需要極大的記憶體才能儲存,儲存越多的位數,代表越精準
在記憶體有限的狀況下,我們會使用約略值去表示,像是 3.14
所以浮點數讓我們能儲存很大或很小的數字,但它本身可能只是一個約略值

最令人困惑的問題 0.1 + 0.2 ≠ 0.3

之所以 0.1 + 0.2 ≠ 0.3 是因為我們電腦用二進位浮點數去表示這些數字,然而 1/10 跟 2/10 並不是二進位可以明確表示出來的,導致他最終會以約略值去呈現
0.1 → 0.0011001100110011......
0.2 → 0.001100110011....
後面...為受限於有效位數約為 23 位數(單精度)的情況下,後面的會被省略掉
結果就是兩個相加後不會直接等於 0.3

那要怎麼解決這種小數點精算的問題?

在處理像是匯率或是跟錢相關的問題時,我們可以先將有小數點的數字乘於一定的倍數讓其沒有小數點,運算後再將其除回去即可,或是改成十進位制

結論

  1. 浮點數是類似於科學記號的表示法
  2. 浮點數解決了儲存很巨量或很小的數字佔太多記憶體問題
  3. 浮點數本身可能只是一個約略值,在做精確的小數點計算可能會有非預期的結果
  4. 太大的數字浮點數也有可能會造成溢位
    1會員
    5內容數
    123
    留言0
    查看全部
    發表第一個留言支持創作者!
    你可能也想看
    迎新活動「方格新手村」:新格友註冊加入方格子,知名日料吃到飽餐券送給你! 👉 還不是 vocus 的會員嗎?點此註冊,參與新手村活動 👈 近期站上也出現了不少新格友,為了歡迎各位的加入,「方格新手村」隨之登場! 即日起,只要是新註冊帳號於活動期間內發佈 3 則文章,就有機會抽獎獲得知名日料吃到飽餐券。原格友也可以一起同樂,我們準備了小任
    Thumbnail
    2024-06-21
    91
    屏東炸豬排-京厚屋 (家樂福屏東店),2024/3月美食筆記第一次吃這家餐廳,因為被納Q版的圖案造型吸引,就感覺很親子,進去用餐也是遇到一群跟我們一樣的親子父母團,吃起來整體觀感都還不錯,就分享一下用餐感受了。
    Thumbnail
    浮動式風電示範規畫座談會筆記能源署在1月26日召開「浮動式風電示範規畫座談會」,能源署在會議開始重申2022年1月18日公開會議的草案內容後,便開放產業發言。座談會目的主要希望了解業者對於示範案案場規模、併網時程以及躉購費率以及其他議題提供意見。
    2024-01-29
    2
    [讀書心得] 高勝率膽小投資買賣筆記:超佛系小資族短線獲利法  看到這本書時,一開始是作者的名字吸引了我了注意力,仔細閱讀過後,我很喜歡本書作者Lok對於草食系投資的定義,他認為市面上很多投資書或者是課程,都是希望能夠迅速致富、秒賺個一億的肉食系,但對於受薪階級的散戶而言,要達到這樣的等級,必須承擔的風險非常的高,因此作者提倡農耕民族式的投資,也就是專心培
    Thumbnail
    2023-12-12
    2
    衛福部被又經濟部打臉》英國國健署堅持尼古丁電子煙傷害比香菸小 王郁揚嗆綠共大搞認知作戰該產業的蓬勃發展也反映英國公共衛生單位的支持立場。儘管目前許多國家仍對透過吸入尼古丁蒸氣而不是菸草煙霧(來吸入尼古丁的潛在健康益處持謹慎態度,但英國國民健康署始終堅持轉換尼古丁對身體的傷害較小。今年4月,英國政府宣布一項以換代戒的措施,為約100萬名吸菸者提供免費電子煙入門套裝,創全球首例。
    Thumbnail
    Phoenix 筆記:phx.gen MVC 相關指令檔案整理這陣子開始摸 Elixir/Phoenix,對於裡面產生 MVC 相關檔案的指令稍微做個紀錄,免得要確認時還要翻來翻去 本圖的紀錄不包含 migration 檔跟測試檔
    Thumbnail
    2021-08-26
    2
    Obsidian筆記軟體簡介Obsidian是什麼 Obisidian是個強大的雙向連結筆記軟體,可以作為知識庫的連結,也可以當作個人筆記生活記錄使用。除了支援Markdown語法之外,還可以
    Thumbnail
    2021-07-31
    4
    筆記:TikTok(原musically)的社群媒體Growth。社群是國家一樣。社群是國家一樣 Q. 這麼培養社群?IG,Snapchat,YouTube等,各個平台都有Star。這些人從各個平台一直都被挖。這樣競爭強烈狀況下怎麼培養獨特社群? A. 培養社群是營運國家,經濟一樣。為了營運社群,從經濟政策可以學習。先說從0開始培養社群是類似開拓新土地的樣子。 ①告訴大家有新土地
    Thumbnail
    [筆記] Blender 快捷鍵紀錄 Blender 基本操作按鍵
    2021-02-11
    4
    迎新活動「方格新手村」:新格友註冊加入方格子,知名日料吃到飽餐券送給你! 👉 還不是 vocus 的會員嗎?點此註冊,參與新手村活動 👈 近期站上也出現了不少新格友,為了歡迎各位的加入,「方格新手村」隨之登場! 即日起,只要是新註冊帳號於活動期間內發佈 3 則文章,就有機會抽獎獲得知名日料吃到飽餐券。原格友也可以一起同樂,我們準備了小任
    Thumbnail
    2024-06-21
    91
    屏東炸豬排-京厚屋 (家樂福屏東店),2024/3月美食筆記第一次吃這家餐廳,因為被納Q版的圖案造型吸引,就感覺很親子,進去用餐也是遇到一群跟我們一樣的親子父母團,吃起來整體觀感都還不錯,就分享一下用餐感受了。
    Thumbnail
    浮動式風電示範規畫座談會筆記能源署在1月26日召開「浮動式風電示範規畫座談會」,能源署在會議開始重申2022年1月18日公開會議的草案內容後,便開放產業發言。座談會目的主要希望了解業者對於示範案案場規模、併網時程以及躉購費率以及其他議題提供意見。
    2024-01-29
    2
    [讀書心得] 高勝率膽小投資買賣筆記:超佛系小資族短線獲利法  看到這本書時,一開始是作者的名字吸引了我了注意力,仔細閱讀過後,我很喜歡本書作者Lok對於草食系投資的定義,他認為市面上很多投資書或者是課程,都是希望能夠迅速致富、秒賺個一億的肉食系,但對於受薪階級的散戶而言,要達到這樣的等級,必須承擔的風險非常的高,因此作者提倡農耕民族式的投資,也就是專心培
    Thumbnail
    2023-12-12
    2
    衛福部被又經濟部打臉》英國國健署堅持尼古丁電子煙傷害比香菸小 王郁揚嗆綠共大搞認知作戰該產業的蓬勃發展也反映英國公共衛生單位的支持立場。儘管目前許多國家仍對透過吸入尼古丁蒸氣而不是菸草煙霧(來吸入尼古丁的潛在健康益處持謹慎態度,但英國國民健康署始終堅持轉換尼古丁對身體的傷害較小。今年4月,英國政府宣布一項以換代戒的措施,為約100萬名吸菸者提供免費電子煙入門套裝,創全球首例。
    Thumbnail
    Phoenix 筆記:phx.gen MVC 相關指令檔案整理這陣子開始摸 Elixir/Phoenix,對於裡面產生 MVC 相關檔案的指令稍微做個紀錄,免得要確認時還要翻來翻去 本圖的紀錄不包含 migration 檔跟測試檔
    Thumbnail
    2021-08-26
    2
    Obsidian筆記軟體簡介Obsidian是什麼 Obisidian是個強大的雙向連結筆記軟體,可以作為知識庫的連結,也可以當作個人筆記生活記錄使用。除了支援Markdown語法之外,還可以
    Thumbnail
    2021-07-31
    4
    筆記:TikTok(原musically)的社群媒體Growth。社群是國家一樣。社群是國家一樣 Q. 這麼培養社群?IG,Snapchat,YouTube等,各個平台都有Star。這些人從各個平台一直都被挖。這樣競爭強烈狀況下怎麼培養獨特社群? A. 培養社群是營運國家,經濟一樣。為了營運社群,從經濟政策可以學習。先說從0開始培養社群是類似開拓新土地的樣子。 ①告訴大家有新土地
    Thumbnail
    [筆記] Blender 快捷鍵紀錄 Blender 基本操作按鍵
    2021-02-11
    4