Was ist damit gemeint, dass beim IEEE 754-Standard der Exponent beim float von -126 bis 127 geht? Ich kann doch auch als Exponent 130 haben?
Jetzt will ich z. B. die Zahl -12.375 in float iee 754 umrechnen:
Das ist das Ergebnis.
Hier habe ich jedoch als Exponent(blau markeirt) 130 genommen, aber dort steht, dass der Exponent Max 127 sein kann, also von -126 bis 127?
Außerdem eine weitere Frage, gibt es eine schnelle Variante um von -12.375 die Gleitkommazahl in diesem Standard anzulegen? Ich brauchte jetzt z. B. dafür ca. 5 Minuten, ist das eine normale Geschwindigkeit oder zu langsam?
3 Antworten
Um Exponenten mit Vorzeichen zu ermöglichen, wird ein Offset (Bias) von 127 verwendet. Wenn da binär kodiert also 130 steht, entspricht das dem Exponenten 3.
So ergibt sich auch der Bereich von -126 bis 127. Mit 8 Bits lassen sich die Zahlen 0 bis 255 darstellen. Wenn man davon 127 abzieht, erhält man -127 bis 128. Der niedrigste und höchste Exponent sind aber für Sonderfälle (0, PositiveInfinity, NegativeInfinity, NaN) reserviert.
Der Exponent steht im 2er Komplement somit ist die Zahl dort oben nicht 130
ja mein Fehler habe ich auch grad bemerkt :) hab das mit dem BIAS nicht richtig verstanden
130 kannst du nicht haben, weil du nur 7 Bit hast.
Ein Bit brauchst du für das Vorzeichen.
Es sind 8 Bits und der IEEE 754 Standard verwendet einen Offset von 127. Also wenn da 130 steht, ist der Exponent 3.
Aber mit 8 Bit kannst du 256 Werte darstellen.
Wenn das vorzeichenbehaftet sien soll, ist es nur noch
die Hälfte.
Stimmt nicht: https://en.wikipedia.org/wiki/Exponent_bias