Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Informatik in der Schule (http://www.informatikerboard.de/board/board.php?boardid=21)
--- Binärzahlen im Zweier-Komplement addieren (http://www.informatikerboard.de/board/thread.php?threadid=1325)
Geschrieben von Ingo am 21.11.2012 um 18:35:
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?
Geschrieben von Ingo am 21.11.2012 um 19:11:
Hallo Karlito
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?
Geschrieben von Karlito am 21.11.2012 um 19:36:
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
Geschrieben von Ingo am 21.11.2012 um 19:52:
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
Geschrieben von Karlito am 21.11.2012 um 20:17:
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
Forensoftware: Burning Board, entwickelt von WoltLab GmbH