Binär-Addition & Subtraktionsrechner

Binär-Addition & Subtraktionsrechner

Berechnen Sie binäre Addition und Subtraktion in Echtzeit mit schrittweiser Übertragslogik, vorzeichenbehaftetem Zweierkomplement, Bit-Gattern und Hex-Konvertierung.

Beispiel laden
Zwei-Operanden-Eingabe & Logiksteuerung
Register-Wortbreite8Bit
ALU-Architekturmodell:
Überlauf-Verhalten (Overflow Policy):
Endianness (Byte-Reihenfolge):
Normalisierter Binärwert:1111 1111
Dezimalwert: 255Hexadezimalwert: 0xFF
Interaktive Bit-Manipulation Operand A:Klicken Sie auf ein Bit zum Umschalten (0 ↔ 1)
+Binäre Addition (A + B)
Normalisierter Binärwert:0000 0001
Dezimalwert: 1Hexadezimalwert: 0x01
Interaktive Bit-Manipulation Operand B:Klicken Sie auf ein Bit zum Umschalten (0 ↔ 1)
Berechnetes Arithmetikergebnis8Bit
Binärdatenstrom (4-Bit-Gruppen)
0000 0000
Hexadezimaldarstellung (0x)
0x00
Vorzeichenloser Dezimalwert
0
Dezimal mit Vorzeichen (Zweierkomplement)
0
ALU-Gatterlaufzeit & Hardware-ArchitekturRipple-Carry Adder (RCA - Linear O(N))
Gatterlaufzeit: 192 ps
Schaltungskomplexität (Transistoren): ~224 Gatter
CPU-ALU-Hardwarestatus-FlagsEFLAGS / CCR
Zero-Flag (Z)HIGH (1)

Aktiviert, wenn das arithmetische Rechenergebnis exakt 0 ist

Negative-Flag (N)LOW (0)

Direktes Spiegelbild des höchstwertigen Bits (MSB) als Vorzeichen

Carry-Flag (C)HIGH (1)

Vorzeichenloser Übertrag über das MSB der aktiven Wortbreite hinaus

Signed-Overflow-Flag (V)LOW (0)

Zweierkomplement-Überlauf: Zwei Operanden gleichen Vorzeichens ergaben ein gegenteiliges Vorzeichen

Echtzeit-Simulation des Ripple-Carry-Volladdierers
Übertragseingang (C_in)Summenausgang (S)
Stufe 7MSBPGA=1B=0C=1S=0Stufe 6Bit 6PGA=1B=0C=1S=0Stufe 5Bit 5PGA=1B=0C=1S=0Stufe 4Bit 4PGA=1B=0C=1S=0Stufe 3Bit 3PGA=1B=0C=1S=0Stufe 2Bit 2PGA=1B=0C=1S=0Stufe 1Bit 1PGA=1B=0C=1S=0Stufe 0LSBPGA=1B=1C=0S=0C_out=1
Aktive Wortbreite8-Bit-Architektur
Aktive ALU-Flags2 aktiv / 4 Flags gesamt
ALU-Latenz192 ps (RCA)
Technische Referenz & Architektur-Leitfaden

Binärrechner Addition & Subtraktion — Referenzhandbuch

Berechnen Sie binäre Addition und Subtraktion in Echtzeit mit schrittweiser Übertragsanzeige (Carry-Bits), Zweierkomplement-Vorzeichenwerten, Bit-Logikgattern und Hex-Konvertierung.

Binärrechner Addition & Subtraktion — Referenzhandbuch — Client-seitige In-Memory-Architektur und Datenfluss
Binärrechner Addition & Subtraktion — Referenzhandbuch — Client-seitige In-Memory-Architektur und Datenfluss

Wichtige Parameter & Einstellungen

Operand A (Addend / Minuend)Binärer Bitstream [0–1]

Die primäre binäre Bitfolge als Eingabe. Unterstützt beliebige Bitlängen, 0b-Präfixe und Nibble-Trennzeichen. Dient im Additionsmodus als erster Summand (Addend), im Subtraktionsmodus als Minuend, von dem Operand B subtrahiert wird.

Standard: 10110100
Operand B (Augend / Subtrahend)Binärer Bitstream [0–1]

Die sekundäre binäre Bitfolge als Eingabe. Wird im Additionsmodus zu Operand A addiert (Augend); im Subtraktionsmodus fungiert sie als Subtrahend, der über Zweierkomplement-Arithmetik invertiert und inkrementiert wird.

Standard: 01001101
Register-Wortbreite (Bit-Tiefe)Hardware-Registerkapazität (4, 8, 16, 32, 64-Bit, Unbegrenzt)

Hardware-Registergrenze zur Festlegung von Bitbreiten-Kappung, Position des höchstwertigen Vorzeichen-Bits (MSB) und Wertebereich: vorzeichenlos [0, 2^N - 1] gegenüber vorzeichenbehaftet [-2^(N-1), 2^(N-1) - 1]. Ein 8-Bit-Register umfasst vorzeichenlos 0 bis 255 und vorzeichenbehaftet -128 bis +127.

Standard: 8-bit
Arithmetischer RechenmodusALU-Operationswähler (Addieren / Subtrahieren)

Konfiguriert die Operation der Recheneinheit (ALU): standardmäßige vorzeichenlose/vorzeichenbehaftete Binäraddition (A + B + C_in) oder hardwarebasierte Zweierkomplement-Subtraktion (A + (~B) + 1).

Standard: add
Initialer Übertrag (C_in)1-Bit-Übertragsstatus (0 oder 1)

Initiales Carry-In-Bit an Bit-Position 0 (niederwertigstes Bit / LSB). Standardwert ist 0 für einfache Additionen; wird auf 1 gesetzt, wenn Mehrwort-Additionen verkettet werden (ADC) oder die Zweierkomplement-Negation vollendet wird.

Standard: 0
Zahlendarstellungs-StandardGanzzahl-Vorzeichenkodierung (Unsigned / Signed Zweierkomplement)

Bestimmt, ob das höchstwertige Bit (MSB) eine positive Zweierpotenz (2^(N-1)) oder im vorzeichenbehafteten Zweierkomplement eine negative Wertigkeit (-2^(N-1)) darstellt.

Standard: unsigned

Profi-Tipps & Best Practices

Vorzeichen-Überlauf sofort per XOR der obersten Überträge erkennen

In der Zweierkomplement-Arithmetik tritt ein CPU-Hardware-Überlauf genau dann auf, wenn sich das Übertragsbit in das höchstwertige Bit (MSB) vom Übertragsbit aus dem MSB unterscheidet: V = C_msb ^ C_msb_minus_1. Diese einfache Gatterprüfung deckt sofort auf, wenn die Addition zweier positiver Zahlen ein fehlerhaftes negatives Ergebnis liefert oder zwei negative Summanden ein positives Resultat erzeugen.

Zweierkomplement-Subtraktion verwirft das finale Übertragsbit

Wird eine binäre Subtraktion über das Zweierkomplement A - B = A + (~B + 1) berechnet, entsteht bei positivem Ergebnis oder Null ein abschließender Übertrag (C_out = 1), was bedeutet, dass kein vorzeichenloses Borgen (Borrow) erforderlich war. Moderne Mikroprozessoren (wie x86 und ARM) invertieren oder interpretieren diesen Übertrag als invertiertes Borrow-Flag (B = ~C). Verwechseln Sie diesen Endübertrag keinesfalls mit einem arithmetischen Überlauf.

Gatterlaufzeiten: Carry-Lookahead vs. Ripple-Carry-Addierer

In einfachen Ripple-Carry-Addierern (RCA) wandern Übertragsbits sequenziell durch N Volladdierer, was zu einer O(N)-Gatterverzögerung führt und Hochgeschwindigkeits-ALUs ausbremst. Industrielle Prozessoren setzen daher auf Carry-Lookahead-Addierer (CLA): Diese berechnen Generate- (G_i = A_i & B_i) und Propagate-Signale (P_i = A_i ^ B_i) parallel über 4-Bit-Blöcke und senken die Übertragslaufzeit auf O(log N).

Asymmetrischen negativen Wertebereich im Zweierkomplement beachten

In einem vorzeichenbehafteten N-Bit-Zweierkomplementsystem reicht der negative Wertebereich bis -2^(N-1), während der positive Bereich nur +2^(N-1) - 1 erreicht. In einem 8-Bit-Register reicht die Skala von -128 bis +127. Der Versuch, -128 zu negieren (Berechnung von 0 - (-128)), ergibt erneut -128, da +128 in 8 Bits nicht darstellbar ist – dies löst einen unbehandelten Hardware-Überlauf aus.

Häufige Fehlerquellen & Fehlerbehebung

⚠️Addition zweier positiver vorzeichenbehafteter Binärzahlen ergibt einen negativen Wert

Dies geschieht, wenn die Summe den maximal darstellbaren positiven Wert der gewählten Wortbreite überschreitet (z. B. +120 + +15 = +135, was das 8-Bit-Vorzeichenmaximum von +127 übersteigt). Das 8. Bit kippt von 0 auf 1, sodass die CPU den Wert im Zweierkomplement als negative Zahl interpretiert (-121). Dies ist ein klassischer vorzeichenbehafteter Ganzzahlüberlauf (Signed Integer Overflow). Prüfen Sie das Overflow-Flag (V=1) oder erweitern Sie das Register von 8-Bit auf 16-Bit.

⚠️Eingegebene Binärstrings enthalten ungültige Zeichen, Leerzeichen oder Präfixe

Zahlenbasis-Präfixe wie '0b1011', Hexadezimal-Fragmente ('0x1A'), Kommas oder unregelmäßige Leerzeichen stören die bitweise Verarbeitung. Die Eingabebereinigung filtert '0b'-/'0B'-Präfixe und Whitespace automatisch heraus. Werden andere Zeichen als 0 und 1 eingegeben, markiert die Engine die fehlerhaften Positionen mit einem roten Validierungs-Badge und pausiert die Berechnung, bis gültige Binärziffern vorliegen.

⚠️Ergebnis-Bitlänge übersteigt die gewählte Registergröße (Unsigned Wraparound)

Wenn die Summe zweier vorzeichenloser N-Bit-Zahlen den Wert 2^N erreicht oder überschreitet (z. B. 255 + 1 = 256 in einem 8-Bit-Byte), entsteht ein zusätzliches (N+1)-tes Carry-Out-Bit. In einem Register mit fester Bitbreite passt dieses Bit nicht hinein: Es wird im Carry-Flag (C=1) der CPU abgelegt, während der Registerwert auf 0 umbricht (Wraparound). Um die vollständige 9-Bit-Summe zu erhalten, stellen Sie die Registerbreite auf 16-Bit oder 'Unbegrenzt'.

⚠️Schriftliche Addition mit Überträgen stimmt nicht mit manueller Dezimalrechnung überein

Prüfen Sie, ob Übertragsbits korrekt in die jeweils links benachbarte Spalte (Index i+1) übertragen wurden. Bei der Binäraddition gilt: 1 + 1 = 10 (Summe 0, Übertrag 1) sowie 1 + 1 + 1 (inklusive eingehendem Übertrag) = 11 (Summe 1, Übertrag 1). Nutzen Sie die Registerkarte 'Schriftliche Übertragsmatrix', in der die aktive Übertragszeile (C_in) exakt über jeder Bit-Spalte visualisiert wird, um Abweichungen sofort zu lokalisieren.

Häufig gestellte Fragen (FAQ)

Wie addiert man zwei Binärzahlen Schritt für Schritt?▼

Zur schrittweisen Addition zweier Binärzahlen werden beide Werte rechtsbündig untereinander ausgerichtet und von rechts nach links spaltenweise nach vier Grundregeln addiert: 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1 sowie 1 + 1 = 0 mit einem Übertrag von 1 in die nächste Spalte. Liegt in einer Spalte bereits ein Übertragsbit von 1 vor, ergibt 1 + 1 + 1 den Wert 1 mit Übertrag 1. Notieren Sie das Summenbit unter der Spalte und den Übertrag direkt über der nächsten linken Spalte, bis alle Bits und Endüberträge aufgelöst sind.

Wie funktioniert die binäre Subtraktion über das Zweierkomplement?▼

Die Zweierkomplement-Subtraktion wandelt eine Subtraktion nach der algebraischen Identität A - B = A + (~B + 1) in eine Addition um. Zuerst werden alle Bits des Subtrahenden B invertiert (aus 0 wird 1 und aus 1 wird 0 zum Einerkomplement). Anschließend wird 1 zum niederwertigsten Bit addiert, um das Zweierkomplement zu bilden. Dieses Resultat wird per Standard-Binäraddition zu A addiert und das abschließende Carry-Out-Bit verworfen. Beispiel: 7 (0111) - 3 (0011) wird zu 0111 + 1101 = 10100; nach Verwerfen des 5. Bits verbleibt 0100 (dezimal 4).

Was ist der Unterschied zwischen dem Carry-Flag (C) und dem Overflow-Flag (V)?▼

Das Carry-Flag (C) signalisiert einen arithmetischen Überlauf bei vorzeichenlosen Zahlen, wenn eine Berechnung die maximale Kapazität (2^N - 1) überschreitet. Das Overflow-Flag (V) hingegen erkennt Vorzeichenfehler in der Zweierkomplement-Arithmetik. In einem 8-Bit-Register (Bereich 0 bis 255 vorzeichenlos, -128 bis +127 vorzeichenbehaftet) erzeugt beispielsweise 255 + 1 einen Übertrag (C=1, vorzeichenloser Überlauf), aber keinen Vorzeichen-Überlauf. Umgekehrt setzt +64 + +65 = +129 das Overflow-Flag (V=1), da das Ergebnis +127 übersteigt und zu -127 umbricht, während das Carry-Flag 0 bleibt.

Warum ergibt 127 + 1 in vorzeichenbehafteter 8-Bit-Binärarithmetik -128?▼

Im vorzeichenbehafteten 8-Bit-Zweierkomplement besitzt das höchstwertige Bit (Bit 7) ein negatives Gewicht von -128 (-2^7). Der Dezimalwert +127 lautet binär 01111111. Addiert man 1, entsteht 10000000: Das Vorzeichen-Bit wird 1, während alle niederwertigen Betragsbits zu 0 werden. Die vorzeichenbehaftete Auswertung ergibt (-128 * 1) + 0 = -128. Wegen des asymmetrischen Wertebereichs von -128 bis +127 führt das Inkrementieren des maximalen positiven Werts zum direkten Umbruch auf den kleinsten negativen Wert.

Was unterscheidet eine Halbaddierer- von einer Volladdierer-Schaltung?▼

Ein Halbaddierer (Half Adder) berechnet die Summe zweier einzelner 1-Bit-Eingänge (A und B) über einen Summenausgang (S = A XOR B) und einen Übertragsausgang (C = A AND B), kann jedoch keinen Übertrag aus einer vorherigen Spalte verarbeiten. Ein Volladdierer (Full Adder) verarbeitet drei 1-Bit-Eingänge: A, B und ein eingehendes Übertragsbit (C_in). Er liefert die Summe (S = A XOR B XOR C_in) und den Übertrag (C_out = (A AND B) OR (C_in AND (A XOR B))), wodurch Volladdierer zur Berechnung mehrstelliger Binärzahlen kaskadiert werden können.

Wie berechnet man das Zweierkomplement einer negativen Binärzahl?▼

Um das Zweierkomplement einer Binärzahl zu ermitteln, invertiert man alle Bits von 0 zu 1 und 1 zu 0 (Einerkomplement) und addiert anschließend 1 zum niederwertigsten Bit (LSB). Ein praktischer Trick: Man scannt die Binärzahl von rechts nach links durch, lässt alle nachfolgenden Nullen und die erste 1 unverändert und invertiert danach alle verbleibenden Bits links von dieser ersten 1. Um beispielsweise +6 (00000110) zu negieren, bleiben die letzten Ziffern '10' erhalten und die oberen Bits werden zu '111110' geflippt, was 11111010 (-6 in 8-Bit-Zweierkomplementform) ergibt.

Verwandte Tools & Hilfsprogramme

Alle Tools →