浮點數的秘密

        1前言當我們學習C語言時,我們通常認為浮點數和小數是等效的,沒有嚴格的區分它們的概念。

        這不會影響我們的學習,因為浮點數和小數是綁定在一起的。

        ,只有小數點以浮點格式存儲。

        實際上,整數和十進制都可以以定點格式存儲,或者都可以以浮點格式存儲,但實際情況是C語言使用定點格式存儲整數,而浮點格式存儲小數位,在“數字范圍”內尋求兩個重要指標“”之間平衡的結果。

        和“數值精度”。

        2什么是浮點數?浮點數僅表示實數。

        浮點數在計算機中用于近似任何實數。

        具體來說,通過將整數或定點數(即尾數)乘以某個基數(在計算機中通常為2)的整數次冪來獲得此實數。

        這種表示方法類似于以10為基礎的科學表示法。

        3將浮點數存儲在內存中首先,很明顯,整數,浮點或字符等數據類型以二進制模式存儲在計算機的底部。

        浮點數在內存中的存儲方式不同于整數,因為整數可以一一對應地轉換為二進制數據。

        浮點數的存儲由符號+指數+分數組成。

        類型符號位指數尾數浮點數1位(No.31)8位(No.23至30)23位(No.0至22)雙精度1位(No.63)11位(No.52至62)52位(第0?51位)Int和float也占用了四個字節的內存,但是float可以表示的最大值比int大得多。

        根本原因是浮點數以指數形式存儲在內存中。

        將浮點數轉換為內存的步驟分為以下三個步驟:將浮點數轉換為二進制數,以科學計數法表示二進制浮點數,并計算指數偏移后的值。

        對于第三點:在計算指數時需要添加偏移量。

        (我將在后面介紹為什么使用偏移量),并且偏移量的值與浮點數的類型有關(浮點偏移量值為127,雙偏移量值為1023)。

        例如,對于指數6,float和double類型的偏移量值為:float:127 + 6 = 133 double:1023 + 6 = 1029 4浮點數19.625如何與float一起存儲的示例:將浮點數轉換為二進制:10011.101(將19.625的整數部分除以2得到余數,將小數部分除以2進行舍入);使用科學計數法表示二進制浮點數:1.0011101 * 2 ^ 4;計算指數偏移的值:127 + 4 = 131(10000011);馬賽克總結起來,內存中的float類型19.625的值為:0-10000011-001 1101 0000 0000 00000000。

        5 float和double的范圍和精度float和double的范圍由指數中的位數確定。

        (因為表示形式為1.x * 2 ^ Y,所以忽略了1.x的影響,并且指數直接用于表示浮點數的范圍)float:1位(符號位)8位(指數位)23bits(尾數位)double:1bit(符號位)11bits(指數位)52bits(尾數位)因此float的指數范圍是-127?+ 128,double的指數范圍是-1023 ?+ 1024,并且指數位以代碼形式補充。

        負指數確定浮點數可以表示的具有最小絕對值的非零數。

        正指數決定了浮點數可以表示的絕對值最大的數,也決定了浮點數的取值范圍。

        浮動范圍是-2 ^ 128?+ 2 ^ 128,即-3.40E + 38?+ 3.40E + 38; double的范圍是-2 ^ 1024?+ 2 ^ 1024,即-1.79E + 308?+ 1.79E + 308。

        精度浮點數和雙精度數的精度取決于尾數的位數。

        尾數表示小數點后的有效位數越多,精度越高。

        根據科學記數法將浮點數存儲在存儲器中,并且整數部分始終是隱式的“ 1”。

        由于它是常數,因此不會影響精度。

        float:2 ^ 23 = 8388608,共7位數字,表示最多可以有7位有效數字,但絕對可以保證6位數字,即float的精度為6?7位有效數字; double:2 ^ 52 = 4503599627370496,總共16位數字。

        同樣,double的精度為15-16位。

        6解剖:為什么要使用偏移量方法來計算索引?如果

        產品知識/行業、品牌資訊


        主站蜘蛛池模板: 日韩人妻一区二区三区免费| 3d动漫精品啪啪一区二区中| 无码一区二区三区爆白浆| 国产MD视频一区二区三区| 国产精品一区二区久久| 日韩精品一区在线| 国产精品亚洲一区二区在线观看| 国产午夜精品一区二区| 免费无码一区二区三区蜜桃大| 国产成人精品视频一区二区不卡| 高清一区二区三区视频| 精品人妻少妇一区二区三区不卡 | 国产成人av一区二区三区在线| 日本一区二区三区精品中文字幕| 福利一区二区三区视频午夜观看| 99热门精品一区二区三区无码| 久久精品免费一区二区三区| 国产成人片视频一区二区| 国产精品一区二区电影| 亚洲日韩AV一区二区三区中文| 日韩精品无码一区二区三区免费 | 久久国产精品一区| 午夜视频久久久久一区| 国产肥熟女视频一区二区三区| 无码国产精品一区二区免费I6| 无码人妻精品一区二区蜜桃网站| 亚洲伦理一区二区| 麻豆天美国产一区在线播放| 国产a∨精品一区二区三区不卡 | 亚洲AV色香蕉一区二区| 久久精品无码一区二区三区| 丝袜人妻一区二区三区网站| 日韩一区二区三区在线精品 | 无码人妻精品一区二区三区蜜桃 | 国产成人无码一区二区在线播放| 国产在线观看一区精品| 中文字幕一区在线| 亚洲老妈激情一区二区三区| 亚洲色精品aⅴ一区区三区| 国产成人无码一区二区三区在线 | 亚洲Av无码一区二区二三区|