Digital Signal Processing Reference
In-Depth Information
31
30
23
22
0
Single Precision
s
e
7
…
e
0
f
22
…
f
0
63
62
52
51
0
Double Precision
s
e
10
…
e
0
f
51
f
50
…
f
1
f
0
Vorzeichen
s
1 Bit
Exponent
E
8 bzw. 11 Bits
Mantisse
M
f
23 bzw. 52 Bits
Bild 16-3
Gleitkommadarstellung nach IEEE 754-1985 für Single Precision und Double Precision
Wir machen uns die Anwendung an Beispielen deutlich.
Beispiel 16-1
Gleitkomma-Format einer natürlichen Zahl
Im Beispiel der Zahl 100 ergibt sich zu (16.4) zunächst die Zerlegung
06
(16.7)
100
( 1)
2
(1
0.5625)
und daraus das zugehörige Bitmuster
100
0 100 ' 0000 ' 01011001' 0000...0000
f
d
O
(16.8)
s
e
6 1023
M
0.5625
Beispiel 16-2
Gleitkomma-Format einer negativen Dezimalzahl
Im Beispiel der Zahl -0.40625 führt die Zerlegung (16.4) auf
12
(16.9)
0.40625
( 1)
2
(1
0.625)
und das zugehörige Bitmuster ist
0.40625
1 011'1111'1101 1010 ' 0000...0000
f
(16.10)
O
d
s
e
2 1023
M
0.625
MATLAB am PC verwendet das Format IEEE 754-1985, das bestimmte Bitmuster für Aus-
nahmen reserviert, wie zum Beispiel
Inf
(positiver Überlauf, f),
-Inf
(negativer Überlauf,
f) und
NaN
für Not a Number. Letzteres resultiert als Ergebnis für undefinierte Ausdrücke,
wie z. B. bei Division von
0/0
.
Um die Ausnahmen anzuzeigen, ist der maximal mögliche Exponent
e
max
= 2
8
1 = 255 bzw.
2
11
1 = 2047 reserviert, siehe Tabelle 16-1.
Man beachte auch den Unterschied zwischen den normalisierten und denormalisierten Zahlen.
Die kleinste von null verschiedene positive Zahl in normalisierter Form ist 2
E
min
. Durch denor-
malisieren kann diese Zahl auf 2
23
2
E
min
bzw. 2
52
2
E
min
verkleinert werden. So wird das
Problem des Zahlenunterlaufs wirksam reduziert.