Also:
Die Zweierkomplementdarstellung ist dazu da, auch negative Zahlen darstellen zu können. Im Prinzip funktioniert das so:
die erste Stelle (MSB) hat ein negatives Vorzeichen, die anderen ein posetives.
So was heißt das: Wenn du eine n= 7 Zahl hast (wie oben), dann hätte die erste Stelle den Stellenwert 2^6 = 64, klar.
Da diese Zahl aber in 2K - Darstellung vorliert (das muss man dazuschreiben, denn nur anhand der Bits kann man das nicht erkennen, es könnte ja auch eine Zahl im 1K sein oder ein coodiertes ASCII - Zeichen) hat die höchstwertige Stelle einen Stellenwert von (-64). Alle anderen sind posetiv (also stelle 5 hat stellenwert + 32 usw.)
somit folgt:
1111111 = (-1) und 1000000 = (-64)
Klar warum?
(-64)
+ 32
+ 16
+ 8
+ 4
+ 2
+ 1
____
(-1)
Das da -37 raus gekommen ist, stimmt ganz genau, denn wenn du von 22 das 2K bildest, dann hast du (-22), und wenn du von 15 das 2k bildest, dann hast du (-15). Wenn man also von einer posetiven Zahl eine andere posetive Zahl abziehen will, dann müsste man diese subtrahieren und das ist aufwendig. Also kann man von der Zahl, die man subtrahieren will, das 2K bilden, und sie einfach dazu addieren!
Darum gehts. Man kann eine Subtraktion durch eine Addition ausführen, was maschinell (im Rechenwerk) leicher zu realisieren ist.
Ein Beispiel:
10
-5 'Fünf wird von Zehn subtrahiert
_____
5
10
+(-5) 'zu Zehn wird minus 5 dazuaddiert, was zum gleichen Ergebnis führt
______
5
Klar?
Mfg Thegon
Lesezeichen