8.2.2.4.
Berechnungshinweis
Diese Berechnung lässt sich direkt auf binärer Ebene relativ einfach durch Bitmanipulation
realisieren: Dabei kann man in folgender Reihenfolge vorgehen:
Zunächst müssen wie oben beschrieben durch Umkopieren und Maskieren von Bits aus
den vier Bytes die drei Komponenten Vorzeichenbit, Exponent und Mantisse gebildet wer-
den.
Die Bytes 0x3F,0x40,0x00,0x00
Beispiel:
werden wie oben beschrieben zu
Sign=0, Exponent=0x7E(126dez), Mantisse=100 0000 0000 0000 0000 0000b bzw.
(0x400000)
Berechnung des Exponentenwertes
durch Subtraktion von 0x7F (127dez) vom Inhalt des Exponentenfeldes
Inhalt_Exponentenfeld – 127dez = Exponentenwert
Beispiel:
126dez – 127dez = -1
Addieren der 1,0, d. h. Einfügen einer 1 und eines Dezimalpunktes vor der
Mantisse
Mantisse war 100 0000 0000 0000 0000 0000b
Beispiel:
neue Mantisse ist 1.100 0000 0000 0000 0000 0000b
Verrechnen des Exponenten.
Ein negativer Exponent verschiebt den Dezimalpunkt nach links, ein positi-
ver nach rechts. Wenn also ein Exponent von –3 berechnet wurde, wird der
Dezimalpunkt um 3 Stellen nach links verschoben; Bei einem berechnetem
Exponenten von +1 um eine Stelle nach rechts.
Mantisse war: 1.100 0000 0000 0000 0000 0000b
Beispiel:
Exponent war:
neue Mantisse mit Exponenten ist: 0.1100 0000 0000 0000 0000 0000b
Berechnung der Vorkommastellen
Die Vorkommastellen stehen auf der linken Seite des Dezimalpunktes und
werden ähnlich wie oben beschrieben als positive Zweierpotenzen interpre-
tiert und dann aufsummiert.:
Vorkommastelle von : 0.1100 0000 0000 00000000 0000b
Beispiel:
Berechnung der Nachkommastellen
Wie auch bei den Vorkommastellen repräsentieren die Nachkomma-
stellen Zweierpotenzen, dieses Mal jedoch negative.
Beispiel:
Nachkommastelle von:
0000 0000 0000b
-1
-2
1*2
+ 1*2
-1
0
0*2
+ [0*2
ist 1100 0000 0000 0000 0000 0000b
-3
-4
+ 0*2
+ [0*2
+ 0*2
Seite 75 von 83
ist 0b
1
2
3
+0*2
+0*2
...] = 0
0.1100 0000 0000
-5
+ .. =1*0,5 + 1*0,25 + 0*0,125 [...] = 0,75
Stand: 27.01.06