Matroids Matheplanet Forum Index
Moderiert von matroid
Informatik » Technische Informatik » Gleitkommadarstellung
Autor
Universität/Hochschule Gleitkommadarstellung
prs2001
Junior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 19.02.2021
Mitteilungen: 6
  Themenstart: 2021-02-19

Hallo! Ich habe eine Frage nach der Addition von Gleitkommazahlen - ich habe gesehen, das dieses Thema schon diskutiert, aber ich habe die Schritte nicht verstanden(und bald habe ich eine Prüfung). Die Aufgabe lautet: Berechnen Sie die Summe der folgenden 32-Bit-IEEE-Gleitkomma-Zahlen: 01000110001101011001100110010110 01000100100100100110011101010101 Danke im Voraus!


   Profil
rlk
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 16.03.2007
Mitteilungen: 11388
Wohnort: Wien
  Beitrag No.1, eingetragen 2021-02-19

Hallo prs2001, herzlich willkommen auf dem Matheplaneten! Was genau hast Du nicht verstanden? Weißt Du, welche Operationen Du ausführen musst, aber nicht wie? Oder willst Du verstehen, warum sie notwendig sind? Eine Gleitkommadarstellung enthält 3 Größen, aus denen der Zahlenwert ermittelt werden kann. Wie heißen sie und welche Werte haben sie in den beiden Zahlen aus Deinem Beispiel? Servus, Roland


   Profil
prs2001
Junior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 19.02.2021
Mitteilungen: 6
  Beitrag No.2, vom Themenstarter, eingetragen 2021-02-19

"Was genau hast Du nicht verstanden? Weißt Du, welche Operationen Du ausführen musst, aber nicht wie? Oder willst Du verstehen, warum sie notwendig sind? Eine Gleitkommadarstellung enthält 3 Größen, aus denen der Zahlenwert ermittelt werden kann. Wie heißen sie und welche Werte haben sie in den beiden Zahlen aus Deinem Beispiel?" Hallo! Ich weiß was eine Gleitkommazahl ist, aber in den Vorlesungen haben wir nie über Addition von solchen Zahlen gesprochen und ich habe wirklich keine Ahnung wie man damit rechnen soll.


   Profil
DerEinfaeltige
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 11.02.2015
Mitteilungen: 3111
  Beitrag No.3, eingetragen 2021-02-19

Der naive Algorithmus für die Addition funktioniert wie folgt: 1. Zerlege die Gleitkommazahlen in Mantisse und Exponent 2. Bringe die (betragsmäßig) Kleinere der beiden Zahlen auf den Exponenten der Größeren 3. Addiere die Mantissen 4. Normalisiere und runde das Ergebnis


   Profil
prs2001
Junior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 19.02.2021
Mitteilungen: 6
  Beitrag No.4, vom Themenstarter, eingetragen 2021-02-19

Okey, danke! Ich werde jetzt veruchen, die Aufgabe zu lösen.


   Profil
rlk
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 16.03.2007
Mitteilungen: 11388
Wohnort: Wien
  Beitrag No.5, eingetragen 2021-02-19

Hallo prs2001, Du kannst vorhergehende Beiträge zitieren, indem Du auf das Symbol "Qoute" klickst, das unterhalb des Beitrags angezeigt wird. Nich benötigte Teile kannst Du entfernen, das sieht dann so aus: \quoteon(2021-02-19 10:03 - prs2001 in Beitrag No. 2) Hallo! Ich weiß was eine Gleitkommazahl ist, aber in den Vorlesungen haben wir nie über Addition von solchen Zahlen gesprochen und ich habe wirklich keine Ahnung wie man damit rechnen soll. \quoteoff Die 3 Größen, nach denen ich gefragt habe sind Vorzeichen, Signifikand (oft auch Mantisse genannt) und Exponent. Welche Werte haben diese bei den Zahlen in Deinem Beispiel? Ich rechne $x + y$ in einer dezimalen Gleitkommadarstellung mit 3-stelligen Signifikanden mit den Zahlen $x = 0.314\cdot 10^1$ und $y = 0.98\cdot 10^2$ Zuerst verschieben wir den Signifikanden von $x$ um eine Stelle nach links und erhöhen den Exponenten um 1, damit $x$ und $y$ den gleichen Exponenten haben. Das entspricht dem untereinander Schreiben der Zahlen, wenn Du auf Paper rechnest, es müssen ja Ziffern mit gleichem Gewicht addiert werden. Weil wir nur 3 Stellen verwenden, geht die letzte Ziffer 4 verloren, wir machen einen Rundungsfehler: $x' = 0.031\cdot 10^2$ jetzt können wir die Signifikanden von $x'$ und $y$ addieren und erhalten $z=x+y\approx z' = x'+y = (0.031 + 0.98)\cdot 10^2 = 1.011\cdot 10^2$ Das Zwischenergebnis müssen wir noch normalisieren, damit der Signifikand $s_z$ die Ungleichungen $0.1\leq s_z<1$ erfüllt, dabei müssen wir nocheinmal runden: $z'\approx z''=0.101\cdot 10^3$. Willst Du das mit Deinen Zahlen versuchen? Vergiss dabei nicht auf das versteckte Bit in der IEEE-754 Darstellung. Servus, Roland [Die Antwort wurde nach Beitrag No.2 begonnen.]


   Profil
prs2001
Junior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 19.02.2021
Mitteilungen: 6
  Beitrag No.6, vom Themenstarter, eingetragen 2021-02-19

\quoteon(2021-02-19 11:21 - rlk in [Die Antwort wurde nach Beitrag No.2 begonnen.] \quoteoff Danke für die Lösung(und Hinweis). Das Problem ist das diese Aufgabe nur 4 Punkte gibt, was bedeutet, dass ich nicht mehr als 4 Min. dafür brauche. Wenn ich die beiden Zahlen zuerst in Dezimalzahlen umwandele, dann werde ich mehr als 4 Min, aber das ist eine alternative Lösung zu der obigen.


   Profil
prs2001
Junior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 19.02.2021
Mitteilungen: 6
  Beitrag No.7, vom Themenstarter, eingetragen 2021-02-19

Danke noch einmal für die Hilfe, ich habe die richtige Antwort bekommen! Mit freundlichen Grüßen, prs2001


   Profil
StrgAltEntf
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 19.01.2013
Mitteilungen: 7735
Wohnort: Milchstraße
  Beitrag No.8, eingetragen 2021-02-19

\quoteon(2021-02-19 11:27 - prs2001 in Beitrag No. 6) Wenn ich die beiden Zahlen zuerst in Dezimalzahlen umwandele, dann werde ich mehr als 4 Min, aber das ist eine alternative Lösung zu der obigen. \quoteoff rlk hat dir gezeigt, wie man im Dezimalsystem rechnen würde, wie man es aus der Schule kennt. Hier brauchst du die Zahlen nicht ins Dezimalsystem zu verwandeln, sondern du kannst direkt im Binärsystem rechnen. Mit etwas Übung gelingt das dann auch in vier Minuten 😃 [Die Antwort wurde nach Beitrag No.6 begonnen.]


   Profil
prs2001
Junior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 19.02.2021
Mitteilungen: 6
  Beitrag No.9, vom Themenstarter, eingetragen 2021-02-19

\quoteon(2021-02-19 11:39 - StrgAltEntf in Beitrag No. 8) \quoteon(2021-02-19 11:27 - prs2001 in Beitrag No. 6) Wenn ich die beiden Zahlen zuerst in Dezimalzahlen umwandele, dann werde ich mehr als 4 Min, aber das ist eine alternative Lösung zu der obigen. \quoteoff rlk hat dir gezeigt, wie man im Dezimalsystem rechnen würde, wie man es aus der Schule kennt. Hier brauchst du die Zahlen nicht ins Dezimalsystem zu verwandeln, sondern du kannst direkt im Binärsystem rechnen. Mit etwas Übung gelingt das dann auch in vier Minuten 😃 [Die Antwort wurde nach Beitrag No.6 begonnen.] \quoteoff Ohh, okey, ich habe ihm falsch verstanden 😁


   Profil
prs2001 hat die Antworten auf ihre/seine Frage gesehen.
prs2001 hatte hier bereits selbst das Ok-Häkchen gesetzt.
prs2001 wird per Mail über neue Antworten informiert.

Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2022 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]