當前位置:首頁 » 存儲配置 » 尾數存儲

尾數存儲

發布時間: 2023-03-06 09:07:04

A. 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

B. 數據的表示方法大尾數小尾數

大尾小尾 是數據在存儲器中的存儲格式,INtel採用的是小尾表示,即數據的高位存儲在存儲器的高地址,低位存儲在存儲器的低地址,例如一個十六進制數據0x1234存儲在內存中,那麼該數據在內存中的存儲格式為: 34 12 == 內存方向是 從底(左)到高(右)而大尾數據存儲格式,一般存在摩托羅拉系統的XX中(忘記了) ,存儲格式剛好和小相反,高位低存,低位高存,還是數據0x1234 在內存中的存儲格式為: 12 34 ,高位的12存儲在低地址的存儲器地址中,低位34存儲在高地址中=====大小 只是一種數據存儲格式

C. Java中double的取值范圍為1.79E308。E308是什麼意思

此說法正確:
這個是科學計數法,E308表示10的308次方.
1.79E308也就是1.79乘以10的308次方
關於位存儲:
比如1位,只能表示0和1,所以1位最大值1
比如2位,0到3,所以最大值3.
關於long:
long共64位其中1位是符號位正負,剩餘63位,
表示最大數 2^63-1 =9223372036854775807
long用途:
十進制就有19位,如果你的訂單低於19位就能使用long來存儲。
問題:
double為什麼表示的整數比long大,都是64位啊
原來double,把64位劃分了幾個 部分,
1、有符號位,指數位,尾數位,通過降低精確度存儲更大的數字。
2、尾數52位存儲具體數字,指數11位和小數點位置有關,符號位1位代表正負
3、如果整數,你的數超過2^52,double就不精確了,開始舍棄精度
4、如果小數,小數點後邊的數超過2^52,double就不精確了,開始舍棄精度
double的應用:
只是提供了小數支持,小數精確到16位左右。也能存儲整數。
但是整數精確只能表示2^52以內的數,超過就不精確了。
所以19位以內的整數可以用long,16以內的小數和整數用double

熱點內容
萬勝壓縮機價格 發布:2025-05-20 12:20:00 瀏覽:986
判斷雲伺服器是否誠實的存放數據 發布:2025-05-20 12:11:07 瀏覽:375
c語言基礎書 發布:2025-05-20 12:11:00 瀏覽:779
java小數正則表達式 發布:2025-05-20 11:30:58 瀏覽:136
文件夾加密win7 發布:2025-05-20 11:27:46 瀏覽:837
壓縮文件設置密碼有什麼意思 發布:2025-05-20 11:26:37 瀏覽:551
造夢西遊qq登錄如何修改密碼 發布:2025-05-20 11:18:36 瀏覽:382
淘寶緩存清理後還是大 發布:2025-05-20 11:15:39 瀏覽:149
ios雲存儲自動訂購 發布:2025-05-20 11:06:22 瀏覽:110
編程與數學 發布:2025-05-20 11:01:23 瀏覽:444