Subtraktion von Binärzahlen OHNE Komplement

Neue Frage »

Das eilige Nashorn Auf diesen Beitrag antworten »
Subtraktion von Binärzahlen OHNE Komplement
Meine Frage:
Ich möchte zwei Binärzahlen voneinander subtrahieren. Der Minuend ist dabei kleiner als der Subtrahend.

110111[55] - 1001100[76] = -21

Meine Ideen:
Als absolute Zahl sollte: 10101[21] rauskommen mit einem MSB müsste es 110101[-21] sein.

Wenn ich alle Regeln befolge kommt bei mir:
[..111]1101011 heraus. Egal, wie ich es mache, ich bekomms nicht hin.
HAL 9000 Auf diesen Beitrag antworten »

In Computern verwendet man zur Speicherung negativer ganzer Zahlen meist die Zweierkomplementdarstellung. Der Vorteil ist, dass man für Addition und Subtraktion praktisch gleich rechnet, wobei die Subtraktion via durchgeführt wird, und das Zweierkomplement von ist. (Die Fragen von Bereichsüberlauf sind natürlich extra zu klären.)

Bei insgesamt 8 Binärziffern wäre dann z.B. 11101011 diese Zweierkomplementdarstellung von -21, also fast dein Ergebnis (nur noch eine 1 vorn dran). Mit diesen 8 Bit in Zweierkomplementdarstellung lassen sich alle ganzen Zahlen von -128...127 darstellen.


Dein 110101 deute ich mal so, dass du die 10101 für 21 genommen hast, und dann einfach eine 1 davorgesetzt hast? Das läuft so nicht: Wie willst du diese Zahl dann von 53 unterscheiden?

Denkbar wäre, dass du ein Zahlenformat hast "1 Bit Vorzeichen + 7 Bit Absolutzahl" (was weder Einer- noch Zweierkomplement ist). Aber dann lautet das Ergebnis für -21 nicht 110101, sondern 10010101, d.h., die vollen 8 Bit sind zu belegen, wenn ein solches negatives Vorzeichen auftritt.
Das eilige Nashorn Auf diesen Beitrag antworten »

Zitat:
Original von HAL 9000
Dein 110101 deute ich mal so, dass du die 10101 für 21 genommen hast, und dann einfach eine 1 davorgesetzt hast? Das läuft so nicht: Wie willst du diese Zahl dann von 53 unterscheiden?


Ja genauso habe ich mir das eigentlich gedacht verwirrt

Zitat:
Original von HAL 9000
Denkbar wäre, dass du ein Zahlenformat hast "1 Bit Vorzeichen + 7 Bit Absolutzahl" (was weder Einer- noch Zweierkomplement ist). Aber dann lautet das Ergebnis für -21 nicht 110101, sondern 10010101, d.h., die vollen 8 Bit sind zu belegen, wenn ein solches negatives Vorzeichen auftritt.


Ok, das versteh ich.

Was ich nicht verstehe ist die schriftliche Subtraktion. Auch wenn ich das in den Taschenrechner eintippe, gibt er mir ...11101011 zurück. Das entspricht auch meiner schriftlichen Subtraktion auf dem Papier. Am Ende sollte ja aber eigentlich 21 rauskommen. Der Punkt ist wir sollen diese Aufgabe noch ohne Komplement rechnen, die nächste ist dann mit Umwandeln in Zweierkomplement usw.
Also auch wenn ich das mit "1 Bit Vorzeichen + 7 Bit Absolutzahl" rechne, würde bei der schriftlichen Subtraktion nicht die -21 rauskommen. Verstehst du was ich meine?
Das eilige Nashorn Auf diesen Beitrag antworten »

Zitat:
Original von HAL 9000
Bei insgesamt 8 Binärziffern wäre dann z.B. 11101011 diese Zweierkomplementdarstellung von -21, also fast dein Ergebnis (nur noch eine 1 vorn dran). Mit diesen 8 Bit in Zweierkomplementdarstellung lassen sich alle ganzen Zahlen von -128...127 darstellen.


Ach sorry, das sehe ich erst jetzt. Vielleicht zielt die Aufgabe ja auch einfach genau auf das Problem ab verwirrt .

Danke für Deine Hilfe Freude
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »