因為底層存儲結(jié)構(gòu)不同
具體例子
float類型數(shù)字在計算機中用4個字節(jié)存儲肝匆。遵循IEEE-754格式標準:
一個浮點數(shù)有2部分組成:底(小)數(shù)m和指數(shù)e 底(小)數(shù)部分 使用二進制數(shù)來表示此浮點數(shù)的實際值 指數(shù)部分 占用8bit的二進制數(shù)粒蜈,可表示數(shù)值范圍為0-255 但是指數(shù)可正可負,所以旗国,IEEE規(guī)定枯怖,此處算出的次方必須減去127才是真正的指數(shù)。 所以能曾,float類型的指數(shù)可從-126到127 底(小)數(shù)部分實際是占用24bit的一個值度硝,但是最高位始終為1(符號位不算 ) 格式: SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM S表示浮點數(shù)正負 E指數(shù)加上127后的值得二進制數(shù)據(jù)(因為開始減了127) M底數(shù)
舉例: 17.625在內(nèi)存中的存儲 首先要把17.625換算成二進制:10001.101 整數(shù)部分,除以2寿冕,直到商為0蕊程,余數(shù)反轉(zhuǎn)。 小數(shù)部分驼唱,乘以2藻茂,直到乘位0,進位順序取玫恳。 在將10001.101右移辨赐,直到小數(shù)點前只剩1位: 1.0001101 * 2^4 因為右移動了四位 這個時候,我們的底數(shù)和指數(shù)就出來了 底數(shù):因為小數(shù)點前必為1京办,所以IEEE規(guī)定只記錄小數(shù)點后的就好掀序。所以,此處的底數(shù)為:0001101 指數(shù):實際為4惭婿,必須加上127(轉(zhuǎn)出的時候不恭,減去127)叶雹,所以為131。也就是10000011 符號部分是整數(shù)换吧,所以是0 綜上所述浑娜,17.625在內(nèi)存中的存儲格式是: 01000001 10001101 00000000 00000000