當前位置:首頁 » 存儲配置 » float類型存儲

float類型存儲

發布時間: 2024-08-11 13:41:28

1. float取值范圍是多少

float的取值范圍是-3.402823466×10的38次方到3.402823466×10的38次方。

float(單精度浮點數)雖然是用4位元組32位存儲,但它各數間距並不固定,所以叫浮點型。簡單講就是離0越遠精度越低。

在存儲上分為符號位(1),指數位(8),位數位(23)三個部分,尾數有個進位前導所以取值是1.0-2.0,指數位最大值是127,表示數的形式理解成科學計數法±1.b(尾數位)×2的c次方(指數位-127)。float的取值范圍是-3.402823466×10的38次方到3.402823466×10的38次方。

浮點類型的單精度值具有4個位元組,包括一個符號位、一個8位excess-127二進制指數和一個23位尾數。尾數表示一個介於1.0和2.0之間的數。由於尾數的高順序位始終為1,因此它不是以數字形式存儲的。此表示形式為float類型提供了一個大約在3.4E_38和3.4E+38之間的范圍。

由於指數是以無符號形式存儲的,因此指數的偏差為其可能值的一半。對於float類型,偏差為127;對於double類型,偏差為1023。可以通過將指數值減去偏差值來計算實際指數值。

2. float是什麼數據類型

float數據類型是浮點型數據類型。

浮點數在機內用指數形式表示,分解為:數符,尾數,指數符,指數四部分。數符佔1位二進制,表示數的正負。指數符佔1位二進制,表示指數的正負。

尾數表示浮點數有效數字,0.xxxxxxx,但不存開頭的0和點。指數存指數的有效數字。指數佔多少位,尾數佔多少位,由計算機系統決定。

float在內存中的存儲遵循IEEE 754標准。在C/C++中,float類型佔4個位元組即32位 , 這32位分成了3部分:符號位:轉化成二進制後,第31位。 0代表正數,1代表負數。

階碼:30-23位,轉化成規格化的二進制之後與127之和。

尾數:22-0位。

例如:13.625在內存中的存儲,首先將13.625轉化成二進制,整數部分除2取余,直到商為0停止 。最後讀數時,從最後一個余數讀起,一直到最前面的一個余數。

3. float和double型分別怎麼存儲

C/C++的浮點數據類型有float和double兩種。

類型float大小為4位元組,即32位,內存中的存儲方式如下: 符號位(1 bit) 指數(8 bit) 尾數(23 bit)

類型double大小為8位元組,即64位,內存布局如下: 符號位(1 bit) 指數(11 bit) 尾數(52 bit)

符號位決定浮點數的正負,0正1負。

指數和尾數均從浮點數的二進制科學計數形式中獲取。

如,十進制浮點數2.5的二進制形式為10.1,轉換為科學計數法形式為(1.01)*(10^1),由此可知指數為1,尾數(即科學計數法的小數部分)為01。

根據浮點數的存儲標准(IEEE制定),float類型指數的起始數為127(二進制0111 1111),double類型指數的起始數為1023(二進制011 1111 1111),在此基礎上加指數,得到的就是內存中指數的表示形式。尾數則直接填入,如果空間多餘則以0補齊,如果空間不夠則0舍1入。所以float和double類型分別表示的2.5如下(二進制):

符號位

指數

尾數

0

1000 0000

010 0000 0000 0000 0000 0000


0

100 0000 0000

0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000

熱點內容
java線程調用 發布:2024-11-25 11:42:45 瀏覽:844
識地圖演算法 發布:2024-11-25 11:31:10 瀏覽:20
楊輝三角c語言程序一維數組 發布:2024-11-25 11:30:30 瀏覽:214
腳本一般用在什麼地方 發布:2024-11-25 11:13:28 瀏覽:824
php上傳xls 發布:2024-11-25 11:01:46 瀏覽:679
formphp 發布:2024-11-25 11:01:45 瀏覽:554
資料庫主表 發布:2024-11-25 10:54:13 瀏覽:229
什麼是cf腳本 發布:2024-11-25 10:51:48 瀏覽:921
存儲台設計 發布:2024-11-25 10:40:04 瀏覽:669
如何查看自己電腦的所有配置 發布:2024-11-25 10:14:02 瀏覽:771