Reprezentacja 32 bitowa
z | cccccccc |
mmmmmmmmmmmmmmmmmmmmmmm |
z - znak, 1 bit
c - cecha, 8 bitów
m - mantysa,1 bit domyślny o wartości 1 + 23 bity (po przecinku) 1.mmmmmmmmmmmmmmmmmmmmmmm
Znormalizowana
Transformacja na reprezentację dziesiętną
L
10 = (-1)
zM2
C-127
gdzie:
C jest zamienioną na postać dziesiętną cechą cccccccc,
M zamienioną na postać dziesiętną mantysą.
przykład:
liczbę 0 01101011 11001110000000000000000
C = 107,
M = 1.1100111
2 = 11100111
2⋅2
-7 = 231
10⋅2
-7
L
10 = (-1)
0⋅231⋅2
-7⋅2
107-127=231⋅2
-27 ≈
1.721⋅10
-6
Największa dopuszczalna cecha dla liczb skończonych to 11111110
2.
Największa liczba to:
0 11111110 11111111111111111111111
co w zapisie dziesiętnym odpowiada:
L
max = 2
254-127⋅1.11111111111111111111111
2 = 2
127⋅2
-23⋅(2
24-1) ≈ 3.4028⋅10
38
Cecha 11111111
2 zarezerwowana jest dla specjalnych liczb:
0 11111111 00000000000000000000000
2 to +∞
1 11111111 00000000000000000000000
2 to -∞
1 11111111 (mantysa różne od zera)
2 to NaN (Not a Number)
Zdenormalizowana
Cecha zapisana jest samymi zera i jest równa -126,
mantysa to 0.mmmmmmmmmmmmmmmmmmmmmmm.
przykład:
0 00000000 10110000000000000000000
L
10=0.1011
2⋅2
-126 = 1011
2⋅2
-4⋅2
-126 ≈ 8.08⋅10
-39
Minimalna liczba większa od zera w tym standardzie to:
0 00000000 00000000000000000000001
co w zapisie dziesiętnym odpowiada:
L
min = 2
-126⋅2
-23 ≈ 1.4013⋅10
-45
cdn.
Literatura
IEEE 754
Waldemar Tokarz; ostatnia modyfikacja 24.04.2008