IEEE 754 Rechner

Dieser IEEE-754-Rechner wandelt eine Dezimalzahl in das Bitmuster von 16, 32 oder 64 Bit um und zeigt Vorzeichen, Exponent, Mantisse, den exakt gespeicherten Wert und den Rundungsfehler. Auch Hex und Bits lassen sich eingeben.

Quelle: Wikipedia – IEEE 754 (Formate, Bias, subnormale Zahlen, Sonderwerte). Stand: .

Meine ToolboxIhre Eingaben werden nur in diesem Browser gespeichert.

Ergebnis

Ergebnis
0x3DCCCCCD · 0 01111011 10011001100110011001101
Aufbau der Bits
TeilBitsBedeutung
Vorzeichen0+
Exponent (8 bit)01111011123 − 127 = -4
Mantisse (23 bit)100110011001100110011011.10011001100110011001101
Gespeicherter Wert
GrößeWert
Hex0x3DCCCCCD
Artnormale Zahl
Exakt gespeicherter Wert0.100000001490116119384765625
Abweichung zur Eingabe+1.490e-9
Vorgänger0.0999999940395355224609375
Nachfolger0.10000000894069671630859375
Gerundet wird zur nächsten darstellbaren Zahl, bei Gleichstand zur geraden Mantisse. Vorgänger und Nachfolger zeigen den Abstand zweier benachbarter Gleitkommazahlen. Bei 32 Bit gilt: Wert = (−1)^s · 2^(e − Bias) · (1 + m/2^p).

So wird gerechnet

Eine Gleitkommazahl besteht aus Vorzeichen s, Exponent e und Mantisse m: Wert = (−1)^s · 2^(e − Bias) · 1,m. Die Dezimalzahl 0,1 wird als float zu 0x3DCCCCCD und hat gespeichert den Wert 0,100000001490116119384765625.

Die drei Formate

Warum 0,1 nicht genau ist

Gleitkommazahlen speichern Zweierpotenzen, 0,1 ist im Binärsystem aber ein periodischer Bruch. Deshalb wird gerundet, und 0,1 + 0,2 ergibt 0,30000000000000004. Der Rechner zeigt den exakten gespeicherten Dezimalwert und den Rundungsfehler.

Sonderwerte

Sind alle Exponentenbits 1, ist die Zahl unendlich (Mantisse 0) oder NaN (Mantisse ungleich 0). Sind alle Exponentenbits 0, ist die Zahl null oder subnormal, also ohne führende Eins gespeichert.

Häufige Fragen

Wie wandelt man eine Dezimalzahl in IEEE 754 um?

Man zerlegt sie in Vorzeichen, einen Exponenten zur Basis 2 und eine Mantisse und speichert diese in 8 + 23 Bit (float) oder 11 + 52 Bit (double). Der Rechner erledigt das und zeigt Hex und Bits.

Warum ist 0,1 als float nicht genau 0,1?

0,1 ist im Binärsystem ein unendlicher Bruch und muss gerundet werden. Als float ergibt das 0,100000001490116…, als double 0,1000000000000000055….

Was bedeuten die Bits eines floats?

Das erste Bit ist das Vorzeichen, die nächsten 8 Bit der Exponent mit Bias 127 und die letzten 23 Bit die Mantisse ohne die führende Eins.

Quellen und Rechtsgrundlagen

Stand: · So prüfen wir

Passende Werkzeuge