Binärzahlen im Zweier-Komplement addieren

Neue Frage »

Auf diesen Beitrag antworten »
Ingo Binärzahlen im Zweier-Komplement addieren

Guten Abend.

Was passiert wenn ich zwei 4-bit Zweier-Komplement Binärzahlen miteinander addiere, aber das Ergebnis größer als 4bit wird.

Also z.B.:

0101
+ 1100

Wäre doch 10001

Das kann aber doch nicht sein?
 
Auf diesen Beitrag antworten »
Karlito

Hallo,

doch, das ist korrekt. In dem Fall wird das forderste Bit verworfen. Beim Zweierkomplement muss man beachten wie sich der Übertrag fortpflanzt. S. http://de.wikipedia.org/wiki/Arithmetischer_%C3%9Cberlauf

VG,

Karlito
Auf diesen Beitrag antworten »
Ingo

Hallo Karlito smile

Danke für deine Hilfe, eine Sache verstehe ich da nicht:
de.wikipedia.org/wiki/Arithmetischer_%C3%9Cberlauf#4_Bit_im_Zweierkomplemen
t

Da sind 3 Beispiele:

Aber ich verstehe das noch immer nicht ganz.
Können wir die einzelnen Beispiele durchgehen?

1.Beispiel:
5+5 wäre 10, aber als Ergebnis kommt -6 raus.
Wie kann das sein?
Ich weiß, dass wenn man die ausgeklammerte 0 noch in Betracht zieht, dann wäre es 10. Aber woher soll ich wissen, wann ich eine 0 davor schreiben soll und wann nicht?
Auf diesen Beitrag antworten »
Karlito

Hallo,

ich glaube mich zu erinnern, dass Ein tatsächlicher Wertebereichsüberlauf immer dann eintritt, wenn sich das forderste Bit (das erste von links) und der vorherige Übertrag unterscheided.

Bei 5+5 = -6 Handelt es sich um einen Überlauf (da nur Zahlen von -8 bis 7 Darstellbar sind)
Bei -5 - 5 = 6 ebenso
Beim letzen Beispiel unterschreiden sich das erste Bit und das vorherige Übertragsbit nicht -> kein Überlauf...

VG,

Karlito
 
Auf diesen Beitrag antworten »
Ingo

Und was müsste ich dann als Lösung aufschreiben?
Also bei 5+5:
01010 oder 1010
Das zweite wäre ja falsch, aber ich kann ja auch nicht ein bit herzaubern?
Oder darf ich das? Hängt das von der Aufgabenstellung ab?

Danke
Auf diesen Beitrag antworten »
Karlito

Hallo,

du betrachtest doch nur 4 Bit zahlen. Also ist auch die Lösung 1010. Auf echter Hardware werden dann noch Flags gesetzt, welche anzeigen, welche Überläufe aufgetreten sind. So gibt es das Carry-Flag (CF), welches einfach anzeigt, ob es einen Übertrag auf das 5. Bit gibt und Overflow (OF), welches angibt, ob es eine Wertebereichsüberschreitung gab. http://de.wikipedia.org/wiki/%C3%9Cberlaufbit

VG,

Karlito
 
Neue Frage »
Antworten »


Verwandte Themen

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