float數(shù)據(jù)取值范圍 float的范圍和有效數(shù)字怎么算出來的?
float的范圍和有效數(shù)字怎么算出來的?首先,范圍是3.4e-38-3.4e-38,可以提供7位有效數(shù)字。以上兩個量是近似值,不同編譯器的值不同?,F(xiàn)在我將告訴您如何定義標(biāo)準(zhǔn)值:這更復(fù)雜。我建議你找IE
float的范圍和有效數(shù)字怎么算出來的?
首先,范圍是3.4e-38-3.4e-38,可以提供7位有效數(shù)字。以上兩個量是近似值,不同編譯器的值不同。現(xiàn)在我將告訴您如何定義標(biāo)準(zhǔn)值:這更復(fù)雜。我建議你找IEEE754標(biāo)準(zhǔn)。簡單地說,在IEEE754標(biāo)準(zhǔn)中,給出了單精度浮點數(shù)(float)和雙精度浮點數(shù)(double)的定義。Float有32位,double有64位。它們由符號位、指數(shù)位和尾位組成。這些位的組成如下:類型---符號位---索引位---尾位---浮點---位31(1位)--位30-23(8位)--位22-0(23位)雙---位63(1位)--位62-52(11位)--位51-0(52位)。取值范圍主要取決于指數(shù)部分,浮點的指數(shù)部分有8位(2^8)。因為它是有符號類型,所以相應(yīng)的指數(shù)范圍是-128~128。double的索引部分有11位(2^11)。因為它是有符號的,所以對應(yīng)的索引范圍是-1024~1024。整數(shù)的一些有效位在-e38.4位~128 x的范圍內(nèi)。表示x是一個整數(shù)變量,用于告訴計算機x存儲整數(shù)。
Float是浮點類型,F(xiàn)loat y表示y是浮點類型,它存儲小數(shù)。
c語言中char,int,float各表示什么?
根據(jù)最廣泛使用的IEEE754標(biāo)準(zhǔn),浮點數(shù)據(jù)類型的長度是32位,其中最高的位是符號位,中間的8位是索引位,最后的23位是尾位。因此,浮動范圍(-3.4e38)~(3.4e38)很大,基本上可以滿足我們的需要。然而,一個問題是精度。23位尾數(shù)的最大范圍是2^23?1=8388607,所以浮點數(shù)的小數(shù)精度只有6-7位,所以使用浮點數(shù)時要注意其精度。
類似地,double的尾數(shù)從23位擴展到52位,順序碼從8位增加到11位。其示值范圍為-1.7e 308~1.7e 308,精度為2^52-1=4503599627370495,為16位,最小精度為15位。