浮點數中尾數的位數主要影響

來源:趣味百科館 7.05K

浮點數中尾數的位數主要影響浮點數的精確度,浮點數數值的範圍取決於階碼的位數,在浮點數總位數不變的情況下,階碼位數越多,尾數位數就越少。即表示的範圍越大,精度就會越差。浮點數,是屬於有理數中某特定子集的數的數字表示,在計算機中用以近似表示任意某個實數。

浮點數中尾數的位數主要影響

浮點加減運算過程比定點運算過程複雜。如果判知兩個操作數x或y中有一個數爲0,即可得知運算結果,而沒有必要再進行後續的一系列操作以節省運算時間。0操作數檢查步驟則用來完成這一功能。

兩浮點數進行加減,首先要看兩數的階碼是否相同,即小數點位置是否對齊。若二數階碼相同,表示小數點是對齊的,就可以進行尾數的加減運算。反之,若二數階碼不同,表示小數點位置沒有對齊,此時必須使二數階碼相同,這個過程叫作對階。

對階結束後,即可進行尾數的求和運算。不論加法運算還是減法運算,都按加法進行操作,其方法與定點加減法運算完全一樣。



尾數r對浮點數特性的影響

浮點數的取值範圍取決於階碼的位數,浮點數的精度取決於尾數的位數。

r是浮點數階碼的底(隱含),與尾數的基數相同。表示十進制數R就是10,表示二進制數R就是2。

浮點數的尾數越長所表示的數的精度就越高???

浮點數的尾數越長所表示的數的精度就越高這句話是對的。

浮點數屬於有理數中某特定子集的數的數字表示,在計算機中用以近似表示任意某個實數。具體的說,這個實數由一個整數或定點數(即尾數)乘以某個基數(計算機中通常是2)的整數次冪得到,這種表示方法類似於基數爲10的科學計數法。

兩浮點數進行加減,首先要看兩數的階碼是否相同,即小數點位置是否對齊。若二數階碼相同,表示小數點是對齊的,就可以進行尾數的加減運算。反之,若二數階碼不同,表示小數點位置沒有對齊,此時必須使二數階碼相同,

擴展資料:

一個浮點數a由兩個數m和e來表示:a = m × b^e。在任意一個這樣的系統中,我們選擇一個基數b(記數系統的基)和精度p(即使用多少位來存儲)。m(即尾數)是形如±的p位數(每一位是一個介於0到b-1之間的整數,包括0和b-1)。

如果m的第一位是非0整數,m稱作規格化的。有一些描述使用一個單獨的符號位(s 代表+或者-)來表示正負,這樣m必須是正的。e是指數。

浮點數所能表示的數值範圍和精度取決於什麼

浮點數所能表示的數值範圍和精度取決於階碼和尾數。

階碼:採用指數的實際值加上固定的偏移值的辦法表示浮點數的指數,好處是可以用長度爲 {displaystyle e} 個比特的無符號整數來表示所有的指數取值,這使得兩個浮點數的指數大小的比較更爲容易,實際上可以按照字典序比較兩個浮點表示的大小。這種移碼錶示的指數部分,中文稱作階碼。

定點數(即尾數):定點數是指計算機中採用的一種數的表示方法。參與運算的數的小數點位置固定不變。

IEEE標準從邏輯上採用一個三元組{S, E, M}來表示一個數N,它規定基數爲2,符號位S用0和1分別表示正和負,尾數M用原碼錶示,階碼E用移碼錶示。

根據浮點數的規格化方法,尾數域的最高有效位總是1,由此,該標準約定這一位不予存儲,而是認爲隱藏在小數點的左邊,因此,尾數域所表示的值是1.M(實際存儲的是M),這樣可使尾數的表示範圍比實際存儲多一位。

擴展資料

爲了充分利用尾數的二進制編碼表示更多的有效數字,爲了使浮點保持更高的精度以及有統一的表示形式,對浮點數規格化,將尾數的絕對值限定在一個規定的數值範圍內。

規格化的浮點數尾數的絕對值應在1/2~1之間。

尾數M使用補碼錶示,當M>=0時,規格化尾數的形式必須爲:M=0.1XXXX...X(1+n位)

當M<0時,規格化尾數的形式必須爲:M=1.0XXXX...X(1+n位)

尾數的最小負值爲-1,最大負值爲-(1/2+2^-n)

尾數的最小正值爲+1/2,尾數的最大正值爲+(1-2^-n)

參考資料:百度百科 - 浮點數

什麼是浮點數的尾數符號位??

單精度浮點數在計算機中用32位二進制表示的。其中尾數用了低23位,而最高位就是這23位尾數的符號位。夾在符號位與尾數位中間的8位是階碼,是用來表示尾數乘以2的多少次方纔是要表達的真正的二進制值的那個次方數,用所謂的移碼錶示。尾數用原碼錶示,<0時它的符號位(最高那一位)爲1,反之爲0;尾數都被變爲大於1小於2的小數,小數點移動的位數決定了階碼的數值。雙精度是用64位二進制表示的,方法與單精度的表示法一樣,只是尾數是52位,階碼是11位而已。下面給出一個單精浮點數二進制表示法的圖片,以幫助直觀理解。希望有幫助!

熱門標籤