IEEE754-Gleitkommazahlen < Sonstige < Schule < Informatik < Vorhilfe
|
Hallo,
ich stehe gerade auf dem Schlauch was die Darstellung von reellen Zahlen als IEEE754-Gleitpunktzahl betrifft. Eigentlich müsste sich die Zahl 18,4 ja problemlos (= verlustfrei) als float darstellen lassen. Laut Wikipedia bietet ein Float auch eine ausreichende Genauigkeit für 7 Dezimalstellen. Allerdings wird ebenfalls im Wikipediaartikel über IEEE754 die Zahl 18,4 umgerechnet, was scheinbar nicht exakt möglich ist. Wie passen aber nun die 7-Dezimalstellen-Genauigkeit mit der unexakten Konvertierung von 18,4 zusammen? Wo liegt mein Denkfehler?
Vielen Dank im Voraus.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:52 Di 16.10.2012 | Autor: | felixf |
Moin!
> ich stehe gerade auf dem Schlauch was die Darstellung von
> reellen Zahlen als IEEE754-Gleitpunktzahl betrifft.
> Eigentlich müsste sich die Zahl 18,4 ja problemlos (=
> verlustfrei) als float darstellen lassen. Laut Wikipedia
> bietet ein Float auch eine ausreichende Genauigkeit für 7
> Dezimalstellen. Allerdings wird ebenfalls im
> Wikipediaartikel über IEEE754 die Zahl 18,4 umgerechnet,
> was scheinbar nicht exakt möglich ist. Wie passen aber nun
> die 7-Dezimalstellen-Genauigkeit mit der unexakten
> Konvertierung von 18,4 zusammen? Wo liegt mein Denkfehler?
Das Problem liegt in der Definition von "Genauigkeit von 7 Dezimalstellen". Dies bedeutet, dass wenn [mm] $\hat{x}$ [/mm] eine Fliesskommazahldarstellung der reellen Zahl $x [mm] \in \IR$ [/mm] ist (die natuerlich nicht zu gross oder klein sein sollte), das die ersten (signifikanten) sieben Dezimalstellen von $x$ und [mm] $\hat{x}$ [/mm] uebereinstimmen. Wenn du die 18,4 als Fliesskommazahl darstellst und 7 Dezimalstellen gerundet ausgibst, so bekommst du 18,40000. Gibst du jedoch mehr Dezimalstellen aus, so sieht das ganze gleich anders aus: 18,39999961853. Rundest du das wieder auf 7 Dezimalstellen, also 5 Nachkommastellen, kommt wieder 18,40000 heraus. (Hier koenntest du sogar auf 8 Dezimalstellen runden und immer noch 18,4 bekommen.)
LG Felix
|
|
|
|
|
Vielen Dank, jetzt ist es mir klar.
|
|
|
|