2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f (X ). Beispiele: • Berechnungen: Y aus X berechnen; z.B. X = zwei Vektoren, Y = Skalarprodukt • Dokument drucken: X = Dokument; Y = Befehle/Daten, die den Drucker dazu bringen, ein Dokument zu drucken • Rastern von Grafiken: X = Repräsentation eines Objekts; Y = Farbintensitätswerte von Pixeln Die Art und Weise, wie diese Transformationen durchgeführt werden, ist durch die Programme festgelegt, die vom Prozessor ausgeführt werden: Eingabe X Programm Ausgabe Y Prozessor X und Y sind Datenstrukturen (Skalare, Vektoren, Matrizen oder sonstige Zusammenfassungen), d.h. Ansammlungen von Daten. Als Datentypen werden ‘‘Zahlen’’ oder ‘‘Zeichen’’ verwendet. 2.1 Analoge und digitale Darstellung von Werten Digitale Darstellung ) Verwendung von Binärzahlen 80 2 Darstellung von Zahlen und Zeichen 2.2 Festkommazahlen Festkommazahlen sind Zahlen, bei denen das Komma an einer zuvor festgelegten/vereinbarten Stelle steht. Vorzeichenlose Festkommazahlen Vorzeichenlose Festkommazahlen haben kein Vorzeichen, d.h. sie sind stets positiv. Der Wert v (v = value) einer vorzeichenlosen Festkommazahl ergibt sich zu: v = (an 1 · bn 1 + · · · + a1 · b 1 + a0 · b 0 ) · b i • n ist die Stellenzahl, d.h. die maximale Menge an Ziffern, mit denen die Zahl dargestellt werden kann. • b ist die Basis des Zahlensystems, z.B. 10 für das Dezimalsystem (Ziffern 0 ... 9) oder 2 für Binärzahlen. Ziffern an der Stelle j haben die Wertigkeit b j . • Die Koffizienten aj sind die Ziffern an den Stellen j. Die Ziffern liegen jeweils im Bereich 0...(b 1) und geben an, wie oft die Wertigkeit der jeweiligen Stelle zum Wert der Zahl beiträgt. • Der Wert von i legt die Position des Kommas fest: • i = 0: Dieser Fall ist der Normalfall: Durch Multiplikation mit b i = b 0 = 1 bleibt v = an 1 · b n 1 + · · · + a1 · b 1 + a0 · b 0 . Das Komma steht hinter der Einer-Stelle und wird weggelassen. Es werden ganze Zahlen mit den Werten 0, 1, ... , b n 1 dargestellt. • i > 0: Durch Multiplikation mit b i können größere Zahlen dargestellt werden, jedoch auf Kosten geringerer Genauigkeit. Die Ziffern der Zahl werden um i Stellen nach links geschoben, die frei werdenden Positionen werden mit Nullen aufgefüllt. Das Komma wird weggelassen. Darstellungsbeispiel einer Festkommazahl für n = 8 und i = 3: xxxxxxxx000. Die Zeichen ‘‘x’’ stehen dabei jeweils für eine der Ziffern an 1 ... a0 . • i < 0: Da i < 0, entspricht die Multiplikation mit b i einer Division durch b |i| , d.h. das (nach der Einer-Stelle implizit stehende) Komma wird um i Stellen nach links geschoben. Die Genauigkeit erhöht sich auf Kosten der größtmöglich darstellbaren Zahl. Darstellungsbeispiel für n = 8 und i = 3: xxxxx,xxx. Im folgenden werden nur noch Dezimalzahlen (b = 10) und Binärzahlen (b = 2) betrachtet. 2.2 Festkommazahlen 81 Nachfolgender Zahlenring zeigt die Zuordnung von Binär- zu Dezimalzahlen für diese Kodierung: 1111 0000 1110 0001 15 1101 0 14 1 13 1100 1011 0010 2 12 3 11 4 10 0100 Richtung steigender Werte 5 9 1010 0011 6 8 0101 7 1001 0110 1000 0111 Die Darstellung zeigt: • Bei Binärwerten tritt ein Überlauf auf, wenn sich der Wert des höherwertigsten Bitn, auch ‘‘MSB’’ (most significant bit) genannt, ändert • Die Richtung steigender Werte ist bei beiden Kodierungen gleich; Beispiel: • 210 + 110 = 310 • 00102 + 00012 = 00112 82 2 Darstellung von Zahlen und Zeichen Aufgaben Die folgenden Aufgaben betrachten Binärzahlen, d.h. b = 2. a) Welches ist die kleinste darstellbare vorzeichenlose Festkommazahl? 0 b) Wieviele unterschiedliche vorzeichenlose Festkommazahlen können mit n Bit dargestellt werden? 2n c) Geben Sie für i = 0 den Wert der größten vorzeichenlosen Festkommazahl in Abhängigkeit von n an. 2n 1 d) Geben Sie für n = 8 und i = 2 den Wert der größten vorzeichenlosen Festkommazahl an. (2n 1) · 2i = 2n+i 2i = 28+2 (Binär: 1111 1111 00) e) 4 = 1020 Betrachten Sie den Zahlenring. Wie kann man einen Überlauf von vorzeichenlosen Zahlen feststellen? Das Carry-Out-Bit, d.h. das Bit an der Stelle MSB + 1 ist gesetzt. f) Sind alle Abstände vorzeichenloser Binärzahlen zum nächst kleineren und nächst größeren Nachbarn gleich weit entfernt? Skizzieren Sie für i = 2 und n = 3 die entsprechenden Werte auf dem Zahlenstrahl. Ja, die Abstände sind äquidistant. 0 0,25 0,5 0,75 1,0 1,25 1,5 1,75 2.2 Festkommazahlen 83 g) Wandeln Sie für n = 8 und i = 0 folgende Dezimalzahlen in vorzeichenlose Binärzahlen um. Dezimal h) Binär vorzeichenlos 0 0000 0000 75 0100 1011 127 0111 1111 128 1000 0000 255 1111 1111 256 - Berechnen Sie 24 + 17 = 3 im Binärsystem, n = 8. 24 = 16 + 8 ) 0001 10002 17 = 16 + 1 ) 0001 00012 0001 1000 + 0001 0001 0010 1001 i) Berechnen Sie 37 + 53 in vorzeicher Binärkodierung, n = 8. 37 = 32 + 4 + 1 ) 0010 01012 53 = 32 + 16 + 4 + 1 ) 0011 01012 + 0010 0101 0011 0101 0101 1010 84 T j) 2 Darstellung von Zahlen und Zeichen Berechnen Sie 17 + 23 in vorzeichenloser Binärkodierung, n = 8. 17 = 1 + 1 ) 0001 0001 23 = 16 + 7 ) 0001 0111 + 0001 0001 0001 0111 0010 1000 k) Wandeln Sie für n = 6 und i = 3 folgende Dezimalzahlen in vorzeichenlose Binärzahlen um. Dezimal T l) Binär vorzeichenlos 0 000 000 0,125 000 001 1,75 001 110 3,375 011 011 5 101 000 Geben Sie für n = 6 und i = 3 den Wert der größten vorzeichenlosen Festkommazahl an. (2n 1) · 2i = 2n+i 2i = 26+3 Binär: 1 1111 1000 8 = 504 2.2 Festkommazahlen T 85 m) Wandeln Sie für n = 8 und i = 0 folgende Dezimalzahlen in vorzeichenlose Binärzahlen um. Dezimal T n) Binär vorzeichenlos 0 0000 0000 5 0000 0101 67 0100 0011 126 0111 1110 253 1111 1101 Wandeln Sie für n = 6 und i = 3 folgende Dezimalzahlen in vorzeichenlose Binärzahlen um. Dezimal Binär vorzeichenlos 0 00000 000 0,375 00000 011 7,25 00111 010 10 01010 000 12,5 01100 100 17,625 10001 101 86 2 Darstellung von Zahlen und Zeichen Vorzeichenbehaftete Festkommazahlen Es gibt verschiedene Möglichkeiten, binäre vorzeichenbehaftete Festkommazahlen darzustellen: • Vorzeichen und Betrag • Einer-Komplement • Zweier-Komplement Vorzeichen und Betrag Bei dieser Darstellung werden Vorzeichen und Betrag der Zahl separat abgespeichert: • Das Vorzeichen wird repräsentiert durch das höherwertigste Bit: Hat das Bit den Wert 0, ist die Zahl positiv, hat das Bit den Wert 1, ist die Zahl negativ. • Der Betrag der Zahl wird durch die restlichen Bits dargestellt. Ob eine Zahl positiv oder negativ ist, kann direkt am MSB abgelesen werden. Zur Negation einer Zahl muss nur das höherwertigste Bit geändert werden. Ein Problem bei dieser Darstellung ist die doppelte Null: • 00 ... 0002 ) +0 • 10 ... 0002 ) 0 Nachfolgende Abbildung zeigt für n = 4 die Zuodnung von Binär- zu Dezimalzahlen. • Für positive Zahlen ist die Richtung steigender Werte für Binär- und Dezimalzahlen die selbe. • Für negative Zahlen ist die Richtung jedoch unterschiedlich; Beispiel: • 10102 + 00012 = 10112 : Bewegung im Uhrzeigersinn • 210 + 110 = 110 : Bewegung gegen den Uhrzeigersinn 2.2 Festkommazahlen 87 1111 0000 1110 0001 -7 1101 0 -6 1 -5 1100 2 -4 3 negativ 1011 0010 positiv -3 4 -2 1010 0011 0100 5 -1 -0 7 6 1001 0101 0110 1000 0111 Aufgaben a) Welche Auswirkungen hat es, dass für negative Zahlen die Richtung steigender Werte nicht übereinstimmt? Da beide Bewegungsrichtungen nicht übereinstimmen, können Zahlen in der Kodierung ‘‘Vorzeichen und Betrag’’ nicht in der gleichen Weise addiert werden, wie im Dezimalsystem. b) Ist der Wertebereich symmetrisch? Begründung! Ja, da sowohl für positive als auch für negative Zahlen der Betrag mit denselben Bits codiert wird, muss der Wertebereich symmetrisch sein. 88 c) 2 Darstellung von Zahlen und Zeichen Geben Sie den Wertebereich für i = 0 in Abhängigkeit von n an. 2n 1 1··· 0, +0, ... 2n 1 1 d) Kodieren Sie für n = 8 und i = 0 die folgenden Zahlen binär in der Darstellung ‘‘Vorzeichen und Betrag’’. Dezimal e) -10 1000 1010 0 0000 0000 20 0001 0000 Kodieren Sie für n = 6 und i = ‘‘Vorzeichen und Betrag’’. Dezimal T f) Binär Vorzeichen/Betrag 2 die folgenden Zahlen in der Darstellung Binär Vorzeichen/Betrag -2,25 1010 01 0 0000 00 5,5 0101 10 Kodieren Sie für n = 8 und i = 0 die folgenden Zahlen binär in der Darstellung ‘‘Vorzeichen und Betrag’’. Dezimal Binär Vorzeichen/Betrag -17 1001 0001 -5 1000 0101 17 0001 0001 2.2 Festkommazahlen T 89 g) Kodieren Sie für n = 6 und i = ‘‘Vorzeichen und Betrag’’. Dezimal 2 die folgenden Zahlen in der Darstellung Binär Vorzeichen/Betrag -3,75 1011 11 -0,5 1000 10 7,25 0111 01 90 2 Darstellung von Zahlen und Zeichen Einer-Komplement Bei dieser Darstellung werden zur Negierung einer Zahl alle Bits invertiert. Um eine eindeutige Unterscheidung zwischen positiven und negativen Zahlen zu gewährleisten, ist der Betrag der Zahlen auf 2n 1 1 beschränkt. Dadurch kann das Vorzeichen der Zahl wieder direkt am MSB abgelesen werden (0 ) positiv; 1 ) negativ). Der Vorteil dieser Darstellung im Vergleich der Darstellung ‘‘Vorzeichen und Betrag’’ liegt darin, dass die Kodierung der negativen Zahlen in derselben Richtung erfolgt wie die Kodierung der positiven Zahlen, so dass positive und negative Zahlen auf die gleiche Art und Weise addiert (bzw. subtrahiert) werden können. 1111 0000 1110 0001 -0 1101 0 -1 1 -2 1100 2 -3 3 negativ 1011 0010 positiv -4 4 -5 1010 0011 0100 5 -6 -7 7 1001 6 0101 0110 1000 0111 2.2 Festkommazahlen 91 Aufgaben a) Geben Sie den Wertebereich der Einer-Komplement-Darstellung für i = Abhängigkeit von n an. 2n+i 1 1··· 0, +0, ... 2n+i 1 2 in 1 b) Ist der Wertebereich asymmetrisch? Nein. Der Wertebereich ist symmetrisch. c) Kodieren Sie für n = 8 und i = 0 die folgenden Zahlen binär im Einer-Komplement. Dezimal Binär Vorzeichen/Betrag -10 1000 1010 0 0000 0000 20 0001 0100 d) Kodieren Sie für n = 6 und i = Dezimal 2 die folgenden Zahlen im Einer-Komplement. Binär Vorzeichen/Betrag -2,25 1010 01 0 0000 00 5,5 0101 10 T 92 2 Darstellung von Zahlen und Zeichen e) Kodieren Sie für n = 8 und i = 0 die folgenden Zahlen binär im Einer-Komplement. Dezimal T f) Binär Einer-Kompl. -17 1110 1110 -5 1111 1010 17 0001 0001 Kodieren Sie für n = 6 und i = 2 die folgenden Zahlen binär im Einer-Komplement. Dezimal Binär Einer-Kompl. -3,75 1100 00 -0,5 1111 01 7,25 0111 01 g) Zeigen Sie an einem Beispiel, wie sich bei dieser Kodierung zur Addition von Binärzahlen derselbe Algorithmus verwendet lässt wie zur Addition von Dezimalzahlen – sowohl bei positiven als auch bei negativen Werten. • Positive Bereich: 210 + 310 = 510 , 00102 + 00112 = 01012 • Negativer Bereich: h) 610 + 210 = 410 , 10012 + 00102 = 10112 Wann gibt es bei Verwendung der Einer-Komplement-Kodierung Probleme bei der Addition? Die doppelte Null macht Probleme: 210 + 310 = 110 6, 11012 + 00112 = 00002 2.2 Festkommazahlen i) 93 Wie könnte man das Problem lösen? Andere Kodierung wählen, so dass die doppelte Null verschwindet: • 11112 , 110 • 11102 , 210 • ... • 10002 , 810 ) Nach dem invertieren noch 00 ... 012 addieren. Das ist dann das sog. ZweierKomplement. 94 2 Darstellung von Zahlen und Zeichen Zweier-Komplement Beim Zweier-Komplement wird zunächst das Einer-Komplement gebildet und dann noch binär der Wert 1 addiert. Auf diese Weise wird die doppelte Null vermieden. Der Wertebereich wird asymmetrisch, was jedoch kein Problem darstellt. Berechnungen können in dieser Kodierung mit demselben Algorithmus durchgeführt werden wie im Dezimalsystem. Aus diesem Grund werden vorzeichenbehaftete Festkomma-Zahlen in der Regel im Zweier-Komplement kodiert. 1111 0000 1110 0001 -1 1101 0 -2 1 -3 1100 2 -4 3 negativ 1011 -5 4 1010 0011 positiv -6 0100 5 -7 -8 6 7 1001 0101 0110 1000 a) 0010 0111 Kodieren Sie für n = 8 und i = 0 die folgenden Zahlen binär im Zweier-Komplement. Dezimal Binär Vorzeichen/Betrag -10 1000 1011 0 0000 0000 20 0001 0100 2.2 Festkommazahlen 95 b) Kodieren Sie für n = 6 und i = Dezimal T c) 2 die folgenden Zahlen im Zweier-Komplement. Binär Vorzeichen/Betrag -2,25 1010 10 0 0000 00 5,5 0101 10 Kodieren Sie für n = 8 und i = 0 die folgenden Zahlen binär im Zweier-Komplement. Dezimal T Binär Einer-Kompl. -17 1110 1111 -5 1111 1011 17 0001 0001 d) Kodieren Sie für n = 6 und i = Komplement. Dezimal 2 die folgenden Zahlen binär im Zweier- Binär Einer-Kompl. -3,75 1100 01 -0,5 1111 10 7,25 0111 01 96 e) 2 Darstellung von Zahlen und Zeichen Wie lässt sich ein Überlauf von vorzeichenbehafteten Zahlen feststellen? Bei vorzeichenbehafteten Zahlen tritt ein Überlauf auf, wenn man • zwei positive Zahlen addiert und eine negative Zahl als Ergebnis erhält, oder wenn man • zwei negative Zahlen addiert und eine positive Zahl als Ergebnis bekommt. f) Berechnen Sie 37 - 53 im Zweier-Komplement. 37 = 32 + 4 + 1 ) 0010 0101 53 = 32 + 16 + 4 + 1 ) 0011 0101 53ones’ comp. = 1100 1010 53twos’ comp. = 1100 1011 + 0010 0101 1100 1011 1111 0000 Wert: Einer Komplement: 0000 1111 Zweier Komplement: 0001 0000 ) 16 2.2 Festkommazahlen T g) Berechnen Sie 17 - 23 im Zweier-Komplement. 17 = 1 + 1 ) 0001 0001 23 = 16 + 7 ) 0001 0111 231er = 1110 1000 232er = 1110 1001 + 0001 0001 1110 1001 1111 1010 Wert: Einer Komplement: 0000 0101 Zweier Komplement: 0000 0110 ) 6 97 98 2 Darstellung von Zahlen und Zeichen 2.3 Gleitkommazahlen nach IEEE 754 Durch die fest definierte Kommastelle sind bei Festkommazahlen die Abstände zwischen den einzelnen Zahlenwerten äquidistant. Aus diesem Grund (und aufgrund der endlichen Anzahl an Stellen n) können mit Festkommazahlen nicht gleichzeitig sehr große Zahlen und sehr kleine Zahlen darstellen. Bei Gleitkommazahlen ist diese Einschränkung aufgehoben. Die Abstände zwischen den einzelnen Zahlenwerten sind um den Wert 0 herum sehr klein. Für große Zahlen werden die Abstände sehr groß, wie in nachstehender Grafik skizziert. 0 Erreicht wird diese Eigenschaft dadurch, dass die Position des Kommas nicht festgelegt ist, sondern in der Zahl durch Angabe eines Exponenten e definiert. Dieser Exponent legt fest, um wieviel die Kommastelle nach links oder rechts verschoben werden soll. Gleitkommazahlen werden wie folgt kodiert: s e f Bei 32 Bit breiten Gleitkommazahlen (einfache Genauigkeit) gilt die Aufteilung • s = 1 Bit • e = 8 Bit • f = 23 Bit, bei 64 Bit breiten Gleitkommazahlen (doppelte Genauigkeit) gilt die Aufteilung • s = 1 Bit • e = 11 Bit • f = 52 Bit. Als Wert ergibt sich für • für normalisierte Gleitkommazahlen (Normalfall) zu v = ( 1)s · 1,f · 2e K, • für de-normalisierte Gleitkommazahlen (Spezialfall) zu v = ( 1)s · 0,f · 21 K. 2.3 Gleitkommazahlen nach IEEE 754 99 Die Konstante K hat • bei einfacher Genauigkeit (32 Bit) den Wert K = 127, • bei doppelter Genauigkeit (64 Bit) den Wert K = 1023. Eine Gleitkommazahl gilt als normalisiert, wenn beim Exponenten e weder alle Bits gesetzt noch alle Bits gelöscht sind, d.h. • 0 < e < 255 bei 32 Bit • 0 < e < 2047 bei 64 Bit. Eine denormalisierte Gleitkommazahl liegt vor, wenn e = 0 und gleichzeitig f > 0. Spezialfälle: • 0: • e=0 • f =0 • ±1: • s: +1 ) 0; 1)1 • e: alle Bits gesetzt ) 255 bei 32 Bit, 2047 bei 64 Bit • f: alle Bits 0 • NaN (Not a Number) • e: alle Bits gesetzt ) 255 bei 32 Bit, 2047 bei 64 Bit • f: > 0 100 Diese Seite ist absichtlich leer. 2 Darstellung von Zahlen und Zeichen 2.3 Gleitkommazahlen nach IEEE 754 Diese Seite ist absichtlich leer. 101 102 2 Darstellung von Zahlen und Zeichen Aufgaben Format von Gleitkommazahlen a) Geben Sie das Format von 32 Bit und 64 Bit Gleitkommazahlen an. • 32 Bit: 1 Bit Vorzeichen, 8 Bit Exponent, 23 Bit Bruchteil/Fraction • 64 Bit: 1 Bit Vorzeichen, 11 Bit Exponent, 52 Bit Bruchteil/Fraction b) Wie berechnet sich der Wert einer 32 bzw. 64 Bit breiten normalisierten Gleitkommazahl aus ihrem Bitmuster? Geben Sie den Wert der Konstanten K an! v = ( 1)s · 2e K · 1.f • 32 Bit: s = sign = Vorzeichen; e = Exponent (8 bit); K = 127; f = fraction = Bruchteil (23 bit) • 64 Bit: s = sign = Vorzeichen; e = Exponent (11 bit); K = 1023; f = fraction = Bruchteil (52 bit) c) In welchem Bereich liegt e bei normalisierter Zahldarstellung? • 32 Bit: 0 < e < 255 • 64 Bit: 0 < e < 2047 d) Wie wird die Zahl 0.0 dargestellt in Bezug auf s, e and f? s = 0; e = 0; f = 0 2.3 Gleitkommazahlen nach IEEE 754 e) 103 Was ist eine denormalisierte Gleitkommazahl, wie wird sie kodiert und wie berechnet sich ihr Wert? Bei normalisierten Gleitkommazahlen wird eine ‘‘1,’’ direkt vor den Bruchteil f hinzugefügt. Bei denormalisierten Gleitkommazahlen ist es eine ‘‘0,’’. Kodierung: e = 0; f > 0; Wert: v = ( 1)s · 21 K · 0.f f) Welchen Nutzen haben denormalisierte Gleitkommazahlen? Mit denormalisierten Gleitkommazahlen können – um den Wert 0 herum – betragsmäßig viel kleinere Zahlen dargestellt werden als bei normalisierten Gleitkommazahlen. g) Wie kodiert man die Gleitkommazahl ‘‘unendlich’’? • 32 Bit: e = 255; f = 0 • 64 Bit: e = 2047; f = 0 • Das Bit s gibt jeweils das Vorzeichen an (+1 oder h) 1). Mit welchen Werten von e und f wird ausgesagt, dass es sich um ‘‘keine Zahl’’ (NaN = not a number) handelt? • 32 Bit: e = 255; f > 0 • 64 Bit: e = 255; f > 0 i) Geben Sie ein Beispiel an, wie es zu einem Ergebnis kommen kann, das ‘‘keine Zahl’’ ist. Wurzel einer negativen Zahl. (Auch möglich: Division 0/0) 104 2 Darstellung von Zahlen und Zeichen Rechnen mit Gleitkommazahlen a) Kodieren Sie 3,625 und 13,5 als 32 Bit breite Gleitkommazahlen und tragen Sie das Bitmuster in die angegebene Tabelle ein. 3.625: 11.101 = 1.1101 · 21 s=0 e K =1 e = K + 1 = 127 + 1 = 128 f = 11010...0 13.5: 1101.1 = 1.1011 · 23 s=0 e K =3 e = K + 3 = 127 + 3 = 130 f = 10110...0 3,625: 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 … 0 13,5: 0 1 0 0 0 0 0 1 0 1 0 1 1 0 0 0 0 … 0 2.3 Gleitkommazahlen nach IEEE 754 105 b) Berechnen Sie 3,625 + 13,5 im Binärsystem bei Verwendung einer 32 Bit Gleitkommakodierung. Exponent 3.625: 10000000 Exponent 13.5: 10000010 Exponent von 3.625 dem von 13.5 anpassen (Exponenten müssen gleich sein, bevor die Mantissen addiert werden können). 13.5: Exponent Bruchteil/Mantisse 1000 0010 1011000...0 3.625: Exponent Bruchteil/Mantisse 1000 0000 1000 0001 1000 0010 1101000...0 11101000...0 (führende 1,) 011101000...0 Mantissen addieren: + 1.101100000...0 0.011101000...0 10.001001000...0 Normalisieren: Mantisse normalisieren: 10.001001000...0 ! 1.0001001000...0 Exponent normalisieren: 1000 0010 ! 1000 0011 Bitmuster des Ergebnisses: 0 1 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 … 0 106 c) 2 Darstellung von Zahlen und Zeichen Bestimmen Sie aus dem Ergebnis-Bitmuster das Ergebnis der Addition 3,625 + 13,5 ( 1)0 · 1,0001001 · 2131 T 127 = 10001,001 · 20 = 17,12510 d) Kodieren Sie 1,75 und 5,125 als 64 Bit breite Gleitkommazahlen und tragen Sie das Bitmuster in die angegebene Tabelle ein. 1,75: 1.11 = 1.11 · 20 s=0 e K =0 e = K = 1023 f = 110...0 5,125: 101.001 = 1.01001 · 22 s=0 e K =2 e = K + 2 = 1023 + 2 = 1025 f = 010010...0 1,75 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 5,125 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0 … 0 0 0 0 … 0 2.3 Gleitkommazahlen nach IEEE 754 T e) 107 Berechnen Sie 1,75 + 5,125 im Binärsystem bei Verwendung einer 64 Bit Gleitkommakodierung. Exponent 1,75: 01111111111 Exponent 5,125: 10000000001 Exponent von 5,125 dem von 1,75 anpassen (Exponenten müssen gleich sein, bevor die Mantissen addiert werden können). 1,75: Exponent Bruchteil/Mantisse 01111111111 1,110...0 5,125: Exponent Bruchteil/Mantisse 10000000001 10000000000 01111111111 1,010010....0 10,10010....0 101,0010....0 Mantissen addieren: + 001,110 101,001 110,111 Renormalisieren: Mantisse: 110,111 ! 1,10111 Exponent: 01111111111 ! 10000000001 Bitmuster des Ergebnisses: 0 1 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0 … 0 108 T f) 2 Darstellung von Zahlen und Zeichen Bestimmen Sie aus dem Ergebnis-Bitmuster das Ergebnis der Addition 1,75 + 5,125 ( 1)0 · 1,10111 · 21025 1023 = 110,111 = 6,87510