Aufgabe A 3.10 (Lösung) Addition ganzer Zahlen in Zweierkomplementdarstellung mit n Bit, n = 8 • Das MSB wird als Vorzeichenbit verwendet (MSB=1 für negative Zahlen, sonst MSB=0). • Darstellbarer Bereich: − 2 n −1 bis 2 n −1 − 1 (also −128 bis 127) Die Beträge der auftretenden negativen Summanden sind im Folgenden jeweils oberhalb des Rechenschemas binär (8 Bit) dargestellt. a) Der Übertrag (im Bit links vom MSB) wird 0 001 0000 16 ignoriert. 0 010 0101 37 1 111 0000 −16 1 0 001 0101 21 b) 1 c) d) e) 1 f) 0 100 0000 0 100 0001 1 100 0000 1 011 1111 0 111 1111 64 65 −64 −65 Error Überlauf da MSB = 1 im Ergebnis erwartet wird. Ergebnis fehlerhaft. (Der Übertrag (im Bit links vom MSB) wird ignoriert, ist aber ohnehin bedeutungslos.) 0 011 0001 0 110 1001 1 001 1010 49 105 Error Überlauf da MSB = 0 im Ergebnis erwartet wird. Ergebnis fehlerhaft. (Die 8-stellige Binärzahl hat zwar den richtigen Wert 154, vereinbarungsgemäß ist aber das vordere Bit das Vorzeichenbit.) 0 110 1001 0 011 0001 1 001 0111 1 100 1000 0 011 1000 105 49 −105 −56 56 0 010 0001 1 101 1111 0 100 0000 0 001 1111 33 − 33 64 31 0 100 0000 0 010 0001 1 100 0000 1 110 0001 64 33 −64 −31 31 0 001 1111 Ergebnis negativ ( −a), Übergang zum Zweierkomplement liefert a = 56 (letzte Zeile), also Ergebnis −56. Andere Möglichkeit: Direkt in vorletzter Zeile 7 MSB mit Wertigkeit −2 zählen: 7 6 3 −2 + 2 + 2 = −56 . Der Übertrag (im Bit links vom MSB) wird ignoriert. Ergebnis negativ ( −a), Übergang zum Zweierkomplement liefert a = 31 (letzte Zeile), also Ergebnis −31. Andere Möglichkeit: Direkt in vorletzter Zeile 7 MSB mit Wertigkeit −2 zählen: 7 6 5 0 −2 + 2 + 2 + 2 = −31 .
© Copyright 2024 ExpyDoc