Einerkomplement
Eine weitere Variante zur Darstellung negativer Zahlen ist das Einerkomplement. Die negative Zahl entsteht dabei durch bitweises negieren der positiven Zahl.
Stellt die folgenden Dezimalzahlen im Einerkomplement mit einer Größe von 8 Bit dar!
+12-21
-45
+36
-27
-18
Hier könnt ihr euch das Einerkomplement am Beispiel einer Zahl eurer Wahl berechnen lassen:
Wie schon bei der Vorzeichen-Betrag-Darstellung existiert auch beim Einerkomplement der Nachteil, dass wir die Null auf zwei verschiedene Arten darstellen können.
Dafür müssen wir in dieser Darstellungsvariante unser Vorzeichen nicht extra behandeln. Wir können also ganz normale Rechenoperationen durchführen, ohne auf die besondere Vorzeichenstelle achten zu müssen.
Das Einerkomplement kann sowohl zum Bilden von negativen Zahlen und als auch zur Subtraktion verwendet werden!
Die Addition erfolgt beim Rechnen mit Einerkomplementen wie gewohnt. Zur Subtraktion bilden wir einfach das Komplement des Subtrahenden und führen anschließend ganz normal eine Addition durch. Wir müssen nur darauf achten, dass ein möglicher Übertrag an der rechten Seite wieder aufaddiert wird!
Führt die folgenden Rechenoperationen im Einerkomplement mit 8 Bit-Darstellung durch!
(+9)+(-6)(-8)+(+4)
(+3)-(-1)
(-5)-(+7)
Zuerst ermitteln wir den dualen Wert jeder Dezimalzahl.
9[10] = 00001001[2]6[10] = 00010110[2]
8[10] = 00001000[2]
4[10] = 00000100[2]
3[10] = 00000011[2]
1[10] = 00000001[2]
5[10] = 00000101[2]
7[10] = 00000111[2]
Nun versuchen wir zu ermitteln, von welchen Dualzahlen wir das Einerkomplement bilden müssen. Dazu untersuchen wir, wie wir die Rechenoperationen ausführen können.
(+9)+(-6)In diesem Beispiel addieren wir 9 und -6. Da wir die 6 als negative Zahl benötigen, bilden wir das Einerkomplement.
(-8)+(+4)Hier müssen wir das Einerkomplement der 8 bilden, um diese Addition durchzuführen.
(+3)-(-1)Um eine Subtraktion durchzuführen, benötigen wir zunächst das Einerkomplement des Subtrahenden. Außerdem müssten wir das Einerkomplement dieses Subtrahenden bilden, da wir ja eine negative Zahl darstellen wollen. Beide Komplemente würden sich hier aber gegenseitig wieder aufheben, sodass wir uns die Umwandlung sparen und ganz normal addieren können.
(-5)-(+7)Hier müssen wir das Einerkomplement des Minuenden bilden, um das Vorzeichen umzudrehen. Außerdem bilden wir das Einerkomplement des Subtrahenden, damit wir beide Zahlen einfach addieren können.
| +9 | 00001001 |
| -6 | +11101001 |
| +3 | 00000011 |
| -8 | 11110111 |
| +4 | +00000100 |
| -4 | 11111011 |
| +3 | 00000011 |
| +1 | +00000001 |
| +4 | 00000100 |
| -5 | 11111010 |
| -7 | +11111000 |
| 111100010 | |
| -12 | 11110011 |
Bei dem letzten Beispiel müssen wir den Einer-Rücklauf beachten. Hier muss der Übertrag 1 an der rechten Seite des Ergebnisses aufaddiert werden.