2016-05-27 22 views
0

Ich frage mich, ob mir jemand erklären kann, was passiert, wenn wir Binärzahlen addieren.Hinzufügen zu vorzeichenlosen binären Ganzzahlen

Sagen wir haben 4 Bits, 0b1111 und wir fügen 1 zu 0b1111 hinzu. Ich denke, die binäre Codierung sollte 0b10000 sein; Da es jedoch nur 4 Bits gibt, werden die Bits zu 0b0000 geändert.

Ich habe mich gefragt, warum das passiert, ist es, weil es nicht genug Platz ist? Wie würden wir 1 hinzufügen, wenn 0b1111 eine vorzeichenbehaftete Ganzzahl wäre?

+0

Dies ist Ursache Überlauf, Sie können die Nummer 8 mit 3 Bits/4 Bit-Zeichen – Alon

+0

zeigen Diese Frage kann ein Kapitel zur Ausarbeitung benötigen. Wenn Sie die Details kennenlernen möchten, überprüfen Sie [Unsigned and Signed Integers] (http://kias.dyndns.org/comath/13.html) für weitere Erläuterungen. – anonymous

Antwort

1

Wenn 0b1111 ein vorzeichenloser 4-Bit-Wert mit 4-Bit-Speicher ist, hat es den Wert 15. Wenn Sie 1 hinzufügen, erhalten Sie 16, die nicht in 4 Bits gespeichert werden können. Die Bits rollen über und 0b0000 wird gespeichert, was ein Ergebnis von 0 ergibt.

Jetzt, wenn 0b1111 ist ein vorzeichenbehafteter 4-Bit-Wert, mit 4-Bit-Speicher. es wird im Allgemeinen in der Zweierkomplementdarstellung gespeichert. Es hat einen Bereich von -8 bis +7. 0b1111 gibt Ihnen -1. (Siehe here zum Konvertieren.) Hinzufügen von eins zu dem gibt Ihnen 0.