Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Warum werden binäre Gleitkommazahlen so kompliziert gespeichert? » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Warum werden binäre Gleitkommazahlen so kompliziert gespeichert?
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Willibergi
Grünschnabel


Dabei seit: 28.02.2016
Beiträge: 2

Warum werden binäre Gleitkommazahlen so kompliziert gespeichert? Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Moin,
ich beschäftige mich momentan ein bisschen damit, wie Rechner rechnen.
Ich weiß, dass beispielsweise bei Java bei 10.5 - 0.5 = 9.9999999998 herauskommt, weil die binären Zahlen dann periodisch werden und gerundet werden.
Wenn ich die Zahl 12,45 habe, ist diese in binär
1100,011100 (das unterstrichene soll eine Periode darstellen)
12 ist aber 1100 und 45 ist 101101.
Warum ist dann aber 12,45 nicht 1100,101101?
Man erweitert dann die Zahl solange, bis es kein Komma mehr gibt und speichert die Stelle des Kommas in einem Extrabit (so wie das Vorzeichen auch gespeichert wird)
Ich weiß, wie man eine Gleitkommazahl binär umrechnet, aber warum macht man das so und nicht so, wie ich es gerade vorgestellt habe?
LG Willibergi
28.02.2016 13:44 Willibergi ist offline Beiträge von Willibergi suchen Nehmen Sie Willibergi in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Damit hättest du ein Overflow Problem, wie bei Integern auch.
Da nehme ich lieber die mangelnde Präzision hin, als komplett falsche Ergebnisse zu bekommen.

__________________
Syntax Highlighting fürs Board (Link)
28.02.2016 16:38 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
ed209
Routinier


Dabei seit: 07.09.2006
Beiträge: 324

RE: Warum werden binäre Gleitkommazahlen so kompliziert gespeichert? Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von Willibergi
Warum ist dann aber 12,45 nicht 1100,101101?
Man erweitert dann die Zahl solange, bis es kein Komma mehr gibt und speichert die Stelle des Kommas in einem Extrabit (so wie das Vorzeichen auch gespeichert wird)


Gute Frage!
Man kann das Vorzeichen in einem einzelnen Bit speichern, weil es nur zwei Möglichkeiten gibt: Plus und Minus.
Wieviel Bit brauchst Du um die Stelle des Vorzeichen zu speichern? (Die Frage ist ein wenig tricky)

Gruß,
ED
28.02.2016 17:28 ed209 ist offline E-Mail an ed209 senden Beiträge von ed209 suchen Nehmen Sie ed209 in Ihre Freundesliste auf
Willibergi
Grünschnabel


Dabei seit: 28.02.2016
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Wieviel Bit brauchst Du um die Stelle des Vorzeichen zu speichern? (Die Frage ist ein wenig tricky)


Ich weiß nicht, ob du das meinst, was du schreibst, aber für die Stelle des Vorzeichens brauche ich gar keinen Bit - das ist nämlich immer vorne. großes Grinsen

Wenn du die Stelle des Kommas meinst, wäre dieser Wert unendlich groß, weil es unendlich viele Stellen nach dem Komma geben kann.

Aber ein Double, also der größtmögliche Datentyp für Kommazahlen, ist auf 15 signifikante Stellen genau.
Ich hätte dann maximal einen Wert von 15, wenn ich das Komma speichere.
Ich schätze, das wären 4 Bit, oder? (1111 = 15)
LG Willibergi

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Willibergi: 28.02.2016 18:16.

28.02.2016 18:11 Willibergi ist offline Beiträge von Willibergi suchen Nehmen Sie Willibergi in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Theoretische Informatik » Warum werden binäre Gleitkommazahlen so kompliziert gespeichert?