VU Technische Grundlagen der Informatik Übung 1: Zahlendarstellungen, Numerik 183.579, WS2012 Übungsgruppen: Mo.,15.10. & Mi., 17.10.2012 Allgemeine Hinweise: Verwenden Sie für Ihre Lösungen keinen Taschenrechner und geben Sie die einzelnen Lösungsschritte an, sodass ersichtlich ist, wie Sie zu Ihren Lösungen gekommen sind. Bei den Tests dürfen keine elektronischen Hilfsmittel (Taschenrechner, Handy etc.) verwendet werden – nutzen Sie die Übung als Vorbereitung und verzichten Sie bereits jetzt darauf! Aufgabe 1: Zahlenumwandlungen Gegeben sind die folgenden Dezimalzahlen: A = (117.6)10 B = (587.3525)10 Wandeln Sie die Zahlen A und B direkt in die nachfolgend angegebenen Zahlensysteme um. Runden Sie Ihr Ergebnis auf n Nachkommastellen, indem Sie abhängig von der (n + 1)-ten Kommastelle auf die nächstliegende Zahl auf- oder abrunden. Falls es zwei nächstliegende Zahlen gibt, runden Sie auf. a) Binärsystem, n = 6 b) Hexadezimalsystem, n = 2 c) Senäres Zahlensystem (Basis b = 6), n = 4 Geben Sie Ihre Berechnungen an! Aufgabe 2: Zahlenumwandlungen Führen Sie die folgenden Umwandlungen ohne Umweg über das Dezimalsystem durch! a) Wandeln Sie die Hexadezimalzahl (8B5C3F.72DC)16 in eine Binärzahl um. b) Wandeln Sie die Binärzahl (1010110000111011.00110010111)2 in eine Oktalzahl um. c) Wandeln Sie die Quaternärzahl (31201.31022)4 in eine Hexadezimalzahl um. Aufgabe 3: Rechnen im Binärsystem Es sind die folgenden Binärzahlen gegeben: A = (10110010.101)2 B = (1100011.1)2 C = (101)2 D = (1000)2 Führen Sie mit diesen Zahlen die folgenden Berechnungen binär(!) durch. Geben Sie Ihre Berechnungen an! a) Addition: A + B b) Subtraktion: A − B c) Division: B/C d) Multiplikation: A ∗ D Aufgabe 4: Zahlendarstellungen Es sind folgende Zahlen gegeben: A = (5C8)16 B = (−348)10 C = (0)8 Geben Sie die Zahlen A, B und C als 12 Bit lange Maschinenwörter in binärer und hexadezimaler Notation in den folgenden Zahlendarstellungen an: a) Vorzeichen und Betrag b) Zweierkomplementdarstellung c) Exzessdarstellung (Exzess = 211 − 1) Falls es in einer Zahlendarstellung für dieselbe Zahl unterschiedliche Darstellungen gibt, geben Sie alle an! Aufgabe 5: Rechnen in unterschiedlichen Zahlendarstellungen Folgende Bitmuster sind gegeben: Z1 = (001001)2 und Z2 = (101101)2 . Interpretieren Sie Z1 und Z2 als Binärzahlen, die beide jeweils in einer der nachfolgend angegebenen Darstellungen a) bis c) codiert sind. a) Zweierkomplementdarstellung b) Darstellung durch Vorzeichen und Betrag c) Exzessdarstellung mit Exzess = (100111)2 Führen Sie damit die Berechnung −(Z1 + Z2 ) (Addition von Z1 und Z2 und anschließende arithmetische Negation des Ergebnisses) mit einer Maschinenwortlänge von 6 Bit binär(!) durch. Geben Sie alle dazu notwendigen Rechenschritte an. Aufgabe 6: Bitmuster-Interpretation Interpretieren Sie das Bitmuster 10010110 als Zahl in den angegebenen Darstellungen und geben Sie jeweils den dezimalen Wert an: Interpretation in Darstellung Vorzeichen und Betrag Zweierkomplement Exzessdarstellung mit Exzess = (127)10 Festpunktzahl mit 4 Vorkomma und 3 Nachkommastellen Dezimaler Wert Aufgabe 7: Genauigkeit von Zahlenumwandlungen Wandeln Sie die Zahl (0.7)10 in eine Binärzahl mit 3 Nachkommastellen um – alle weiteren Nachkommastellen werden abgeschnitten. a) Berechnen Sie den relativen Rundungsfehler, der bei der Umrechnung ins Binärsystem entstanden ist (siehe Informatik, Grundlagen, 5. Auflage, Kapitel 8.6.2). b) Durch die verwendete Rundungsmethode werden alle reellen Zahlen aus einem Intervall [a, b[ ∈ R auf dieselbe Binärzahl abgebildet. Geben Sie die dezimalen Werte a, b für das Intervall an, in dem (0.7)10 liegt! Aufgabe 8: IEEE754 Gleitpunktzahlen Stellen Sie die folgenden Zahlen A und B im Single Precision-Format (mit implizitem ersten Bit) der IEEE 754 Gleitpunkt-Zahlensysteme dar (vgl. Informatik Grundlagen, 5. Auflage, Kapitel 8.5). A = (−1025.6875)10 B = (+515.5625)10 Aufgabe 9: Codierung von Gleitpunktzahlen Gegeben ist ein Gleitpunkt-Zahlensystem F(2, 5, −2, 3, true), die Codierung erfolgt analog zum IEEE 754 Single Precision-Format. Hinweis: Durch diese Vorgabe folgt unter anderem, dass obiges Format eine implizite Darstellung des ersten Bits verwendet und somit eine Wortlänge von 8 Bit (1 Bit Vorzeichen, 3 Bit Exponent und 4 Bit Mantisse) besitzt. Weiters ergibt sich (011)2 für den Exzess des Exponenten. In diesem Gleitpunkt-Zahlensystem sind die nachfolgenden Codewörter gegeben. Geben Sie zu jedem Codewort die entsprechende Dezimalzahl oder dessen symbolische Bedeutung an. a) 1 101 1011 b) 0 000 0100 c) 0 111 0000 d) 0 010 1010 e) 1 000 0000 Aufgabe 10: Gleitpunktrechnung und Rundung Gegeben ist das folgende Gleitpunktformat: b = 10 p = 5 emin = −48 emax = Exzess = +49 49 denorm = f alse Führen Sie in diesem Gleitpunktformat für die Zahlen A = 3.2583 × 10−15 B = 7.5025 × 10−19 C = 2.75 × 10−22 die folgenden Berechnungen durch: a) A + B b) A − (B + C) Benutzen Sie einen Additions-/Subtraktionsalgorithmus analog zu IEEE 754 (vgl. Informatik Grundlagen, 5. Auflage, Kapitel 8.6.4) und runden Sie mittels round to nearest in Kombination mit round to even. Stellen Sie für ausgewählte Rechenschritte Vorzeichen, Mantisse und Exponent inklusive der Werte von Guard-Digit, Round-Digit und Sticky-Bit dar. Hinweis: Achten Sie auf die durch die Klammer vorgegebene Reihenfolge der Berechnung. Zwischenergebnisse werden ebenfalls gerundet! (vgl. Foliensatz Numerik, Folien 29f)