溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

float精度的示例分析

發(fā)布時(shí)間:2021-09-22 14:11:36 來(lái)源:億速云 閱讀:142 作者:小新 欄目:開(kāi)發(fā)技術(shù)

小編給大家分享一下float精度的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

  浮點(diǎn)型數(shù)據(jù)類型,F(xiàn)LOAT數(shù)據(jù)類型用于存儲(chǔ)單精度浮點(diǎn)數(shù)或雙精度浮點(diǎn)數(shù)。浮點(diǎn)數(shù)使用IEEE(電氣和電子工程師協(xié)會(huì))格式。浮點(diǎn)類型的單精度值具有4個(gè)字節(jié),包括一個(gè)符號(hào)位、一個(gè)8位二進(jìn)制指數(shù)和一個(gè)23位尾數(shù)。由于尾數(shù)的高順序位始終為1,因此它不是以數(shù)字形式存儲(chǔ)的。此表示形式為float類型提供了一個(gè)大約在-3.4E+38~3.4E+38之間的范圍。

  float精度構(gòu)成

  浮點(diǎn)數(shù)在機(jī)內(nèi)用指數(shù)型式表示,分解為:數(shù)符,尾數(shù),指數(shù)符,指數(shù)四部分。

  數(shù)符占1位二進(jìn)制,表示數(shù)的正負(fù)。

  指數(shù)符占1位二進(jìn)制,表示指數(shù)的正負(fù)。

  尾數(shù)表示浮點(diǎn)數(shù)有效數(shù)字,0.xxxxxxx,但不存開(kāi)頭的0和點(diǎn)。

  指數(shù)存指數(shù)的有效數(shù)字。

  指數(shù)占多少位,尾數(shù)占多少位,由計(jì)算機(jī)系統(tǒng)決定。

  float精度區(qū)別

  可根據(jù)應(yīng)用程序的需求將變量聲明為float或double。這兩種類型之間的主要差異在于它們可表示的基數(shù)、它們需要的存儲(chǔ)以及它們的范圍。

  取值范圍

  類型 比特?cái)?shù) 有效數(shù)字 數(shù)值范圍

  float 32 6-7 -3.4*10(-38)~3.4*10(38)

  double 64 15-16 -1.7*10(-308)~1.7*10(308)

  longdouble 128 18-19 -1.2*10(-4932)~1.2*10(4932)

  浮點(diǎn)變量由尾數(shù)(包含數(shù)字的值)和指數(shù)(包含數(shù)字的數(shù)量級(jí))表示。

  下表顯示了分配給每個(gè)浮點(diǎn)類型的尾數(shù)和指數(shù)的位數(shù)。任何float或double的最高有效位始終是符號(hào)位。如果符號(hào)位為1,則將數(shù)字視為負(fù)數(shù);否則,將數(shù)字視為正數(shù)。

  指數(shù)和尾數(shù)

  類型

  指數(shù)長(zhǎng)度

  尾數(shù)長(zhǎng)度

  float

  8位

  23位

  double

  11位

  52位

  由于指數(shù)是以無(wú)符號(hào)形式存儲(chǔ)的,因此指數(shù)的偏差為其可能值的一半。對(duì)于float類型,偏差為127;對(duì)于double類型,偏差為1023。您可以通過(guò)將指數(shù)值減去偏差值來(lái)計(jì)算實(shí)際指數(shù)值。

  存儲(chǔ)為二進(jìn)制分?jǐn)?shù)的尾數(shù)大于或等于1且小于2。對(duì)于float和double類型,最高有效位位置的尾數(shù)中有一個(gè)隱含的前導(dǎo)1,這樣,尾數(shù)實(shí)際上分別為24和53位長(zhǎng),即使最高有效位從未存儲(chǔ)在內(nèi)存中也是如此。

  浮點(diǎn)包可以將二進(jìn)制浮點(diǎn)數(shù)存儲(chǔ)為非標(biāo)準(zhǔn)化數(shù),而不使用剛剛介紹的存儲(chǔ)方法。“非標(biāo)準(zhǔn)化數(shù)”是帶有保留指數(shù)值的非零浮點(diǎn)數(shù),其中尾數(shù)的最高有效位為0。通過(guò)使用非標(biāo)準(zhǔn)化格式,浮點(diǎn)數(shù)的范圍可以擴(kuò)展,但會(huì)失去精度。您無(wú)法控制浮點(diǎn)數(shù)以標(biāo)準(zhǔn)化形式還是非標(biāo)準(zhǔn)化形式表示;浮點(diǎn)包決定了表示形式。浮點(diǎn)包從不使用非標(biāo)準(zhǔn)化形式,除非指數(shù)變?yōu)樾∮诳梢詷?biāo)準(zhǔn)化形式表示的最小值。

以上是“float精度的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI