Forum: PC-Programmierung IEEE 754 Zahl nach Dezimalzahl umrechnen


von Hans W. (Gast)


Lesenswert?

Hi Leute!

Gegeben ist folgende IEEE 754 double-Zahl: AEEE0000000000. Ich will 
diese nun in eine Dezimalzahl umrechnen.
1
AEEE0000000000 = 1|01011101110|11100...0
2
                 |      |          |
3
             s=Minus  c=750       m=?


Wie meine Zeichnung oben zeigt bin ich soweit gekommen. Die 
Charakteristik steckt ja in der IEEE Zahl als biased-Wert drin. Und das 
ist jetzt mein Problem. Im weiteren Vorgehen hab ich mir gedacht, man 
muss dann eben die binäre Zahl einfach in eine Dezimalstelle umwandeln. 
Wenn ich nun die Zahl als Binärzahl darstelle sieht das dann ja so aus:
1
-1,11100...0 * 2^(750-1023)
2
|    |             |
3
s    m             c

Hier weiß ich eben jetzt nicht wie ich mit dem negativen Exponenten 
umgehen soll...


Könnt ihr mir weiterhelfen? Danke!

PS: s=sign (Vorzeichen), c=Charakteristik, m=Mantisse

von (prx) A. K. (prx)


Lesenswert?


von Klaus W. (mfgkw)


Lesenswert?

oder ein Kurs "Suche in diesem Forum" würde sowas liefern:
Beitrag "float-Rundungsfehler (INF) bei Verwendung der glibc sourcen"

von Hans W. (Gast)


Lesenswert?

Wird hier gezeigt wie man mit einem negativen Exponenten umzugehen hat? 
Nein!

Also bitte ich um weitere Antworten! Und ja; den Artikel hab ich 
gelesen!!!

von (prx) A. K. (prx)


Lesenswert?

Sind dir schon mal Zahlen wie 10e-6 begegnet? Fällt dir am Vorzeichen 
des Exponenten etwas auf?

von Hans W. (Gast)


Lesenswert?

Ja, die hab ich gesehen. Und in wie fern bringt mich das jetzt meiner 
Lösung näher?

von (prx) A. K. (prx)


Lesenswert?

Was bedeutet bei dieser Zahl der negative Exponent im Unterschied zu 
einem positiven Exponenten?

von Hans W. (Gast)


Lesenswert?

Wenn ich also nun das (Zwischen-)Ergebnis hab:

-1,1110...0 * 2^(-273) dann entspricht die Zweierpotenz der ungefähren 
Dezimalpotenz von ca.: 6,59 * 10^(-83).

Soweit ist das doch richtig, oder?

Antwort zu deiner Frage: Das Minus um Exponenten gibt die 
Nachkommastellen an...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.