Zweierkomplement Rechner: Binärzahlen mit Vorzeichen umrechnen
Zweierkomplement Rechner
Dezimal → Zweierkomplement: —
Zweierkomplement → Dezimal: —
Beide Umrechnungsrichtungen funktionieren unabhängig voneinander. Zahlen außerhalb des gewählten Wertebereichs können nicht dargestellt werden.
Die Bitfolge 11111111 kann für 255 oder für −1 stehen. Entscheidend ist, ob sie als vorzeichenlose Zahl oder als Zweierkomplement interpretiert wird. Unser Zweierkomplement Rechner hilft dabei, solche Binärzahlen einzuordnen und negative Dezimalzahlen in ihre binäre Darstellung umzuwandeln.
Im Folgenden erkläre ich die Berechnung anhand von 8-Bit-Zahlen. Dieselben Regeln gelten auch für andere Bitbreiten, beispielsweise 16 oder 32 Bit.
Warum die Bitbreite entscheidend ist
Das Zweierkomplement stellt positive und negative ganze Zahlen mit einer festen Anzahl an Bits dar. Bei n Bits reicht der Wertebereich von −2n−1 bis 2n−1 − 1. Mit 8 Bit lassen sich somit die Zahlen −128 bis +127 darstellen.
Das höchstwertige, links stehende Bit hat dabei eine negative Gewichtung. Bei 8 Bit beträgt sie −128. Die übrigen Stellen besitzen die üblichen positiven Gewichte von 64 bis 1. Deshalb kennzeichnet eine führende 1 eine negative Zahl, eine führende 0 eine nichtnegative Zahl.
Mein wichtigster Hinweis: Notiere bei jeder Rechnung die Bitbreite. 1111 bedeutet im 4-Bit-Zweierkomplement −1, 00001111 im 8-Bit-Zweierkomplement dagegen +15.
Eine negative Zahl ins Zweierkomplement umrechnen
Für die Darstellung von −18 mit 8 Bit wird zunächst der positive Betrag binär geschrieben. Danach werden alle Bits umgekehrt und anschließend 1 addiert:
- +18 darstellen: 00010010
- Bits invertieren: 11101101
- 1 addieren: 11101110
Damit entspricht 11101110 im 8-Bit-Zweierkomplement der Dezimalzahl −18. Das bloße Invertieren wäre dagegen nur das Einerkomplement.
Beispiele für das 8-Bit-Zweierkomplement
Vom Bitmuster zurück zur Dezimalzahl
Beginnt die Binärzahl mit 0, genügt die gewöhnliche Binär-Dezimal-Umrechnung. Beginnt sie mit 1, lässt sich der Zweierkomplementwert besonders einfach berechnen:
Dezimalwert = vorzeichenloser Wert − 2n
Für 11101010 mit 8 Bit ergibt sich zunächst der vorzeichenlose Wert 234. Anschließend gilt: 234 − 256 = −22. Zur Kontrolle über die Stellenwerte: −128 + 64 + 32 + 8 + 2 = −22.
Addition und Überlauf richtig unterscheiden
Bei der Addition funktioniert die gewöhnliche Binärrechnung. Ein Übertrag außerhalb der festgelegten Bitbreite wird verworfen. Beispielsweise ergibt 00000101 + 11111101 = 1 00000010. Mit 8 Bit bleibt 00000010: also 5 + (−3) = 2.
Ein vorzeichenbehafteter Überlauf ist etwas anderes: 01111111 + 00000001 ergibt 10000000. Mathematisch wäre das 128, doch im 8-Bit-Zweierkomplement steht das Ergebnis für −128. Für +128 sind mindestens 9 Bit erforderlich. Prüfe beim Berechnen deshalb immer, ob Eingabe und Ergebnis in den gewählten Wertebereich passen.