UTILS.
100 % im Browser
🔢

Zweierkomplement-Umrechner

Wandle vorzeichenbehaftete Ganzzahlen in/aus Zweierkomplement-Binär und -Hex bei 4, 8, 16, 32 oder 64 Bit Breite um, mit Einerkomplement und vorzeichenloser Interpretation.

Gib oben eine Zahl oder ein Bitmuster ein.

Über dieses Tool

Der Zweierkomplement-Umrechner kodiert eine vorzeichenbehaftete Ganzzahl in ihre Zweierkomplement-Binär- und -Hexadezimaldarstellung bei einer von dir gewählten Bitbreite (4, 8, 16, 32 oder 64 Bit) und dekodiert ein Binär- oder Hex-Muster zurück in den vorzeichenbehafteten Wert, den es darstellt. Er verwendet durchgehend BigInt, sodass 64-Bit-Werte exakt ohne Präzisionsverlust behandelt werden.

Bei einer Breite von N Bit ist der vorzeichenbehaftete Bereich −2^(N−1) bis 2^(N−1)−1. Um eine Dezimalzahl d zu kodieren: Ist d nicht negativ, ist das Muster einfach d; ist d negativ, ist das Muster 2^N + d (gleichbedeutend: invertiere alle Bits von |d| und addiere 1). Das Tool gibt das N-Bit-nullaufgefüllte Binär, das N/4-stellige Hex, das Einerkomplement (bitweises NOT) und die vorzeichenlose Interpretation derselben Bits aus und kennzeichnet einen Overflow-Fehler, wenn ein Wert nicht in die gewählte Breite passt.

Zum Dekodieren fügst du ein Binär- oder Hex-Muster ein, und das Tool liest sein oberstes Bit: Ist das höchstwertige Bit gesetzt, ist der Wert Muster − 2^N (negativ), andernfalls ist es das Muster selbst. Es zeigt immer sowohl die vorzeichenbehaftete als auch die vorzeichenlose Lesart nebeneinander, was genau die Mehrdeutigkeit ist, die das Zweierkomplement auf Hardware-Ebene auflöst. Die gesamte Berechnung ist lokal in deinem Browser.

Häufig gestellte Fragen

Was ist der Bereich für jede Bitbreite?
Eine Breite von N Bit stellt vorzeichenbehaftete Werte von −2^(N−1) bis 2^(N−1)−1 dar. Also umfasst 8-Bit −128 bis 127, 16-Bit −32768 bis 32767 und 32-Bit etwa ±2,1 Milliarden. Werte außerhalb des Bereichs lösen eine Overflow-Warnung aus.
Wie wird eine negative Zahl kodiert?
Nimm den Betrag, invertiere jedes Bit (Einerkomplement) und addiere 1. Gleichbedeutend entspricht das Muster 2^N plus der negativen Zahl. Zum Beispiel ist −1 in 8 Bit 11111111 und −42 ist 11010110.
Warum auch den vorzeichenlosen Wert anzeigen?
Dasselbe Bitmuster hat zwei Lesarten: vorzeichenbehaftet (Zweierkomplement) und vorzeichenlos. Beide anzuzeigen macht deutlich, dass etwa das 8-Bit-Muster 11111111 vorzeichenbehaftet −1, aber vorzeichenlos 255 ist — die Interpretation hängt davon ab, wie die Hardware es behandelt.
Kann es 64-Bit-Werte exakt behandeln?
Ja. Der Umrechner verwendet BigInt-Arithmetik mit beliebiger Präzision, sodass 64-Bit-Muster und ihre vorzeichenbehafteten Werte exakt berechnet werden, ohne die Rundung, die gewöhnliche JavaScript-Zahlen jenseits von 2^53 einführen würden.

Weitere Tools