Binärrechner
Geben Sie zwei Binärzahlen ein und erhalten Sie Summe, Differenz, Produkt oder Quotienten — mit Überträgen, Borgen, Teilprodukten und den Schritten der schriftlichen Division, Spalte für Spalte. Wechseln Sie in den bitweisen Modus, um UND, ODER, XOR, NICHT, Verschiebungen und Rotationen bei 4 bis 128 Bit anzuwenden. Kostenlos, ohne Anmeldung, und nichts verlässt Ihren Browser.
Nur Binärziffern, optional mit einem führenden Minus. Leerzeichen und Unterstriche werden ignoriert, sodass 1011 0110 funktioniert.
Ergebnis
1 0010
Binär
18
Dezimal
12
Hexadezimal
22
Oktal
5 Bits
Länge
Rechenweg
| Zeile | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|
| Übertrag | 1 | 1 | 0 | 1 | 0 |
| A | 0 | 1 | 1 | 0 | 1 |
| B | 0 | 0 | 1 | 0 | 1 |
| Summe | 1 | 0 | 0 | 1 | 0 |
So verwenden Sie den Binärrechner
- 1. Wählen Sie die Art der Operation. Arithmetik addiert, subtrahiert, multipliziert oder dividiert. Bitweise arbeitet mit den einzelnen Bits von Mustern fester Breite.
- 2. Geben Sie Ihre Zahlen ein. Verwenden Sie nur 0 und 1. Ein führendes Minus, ein Präfix
0b, Leerzeichen und Unterstriche sind alle zulässig, sodass1011 0110als eine Zahl gelesen wird. - 3. Wählen Sie eine Breite (nur bitweise). NICHT, Verschiebungen und Rotationen ergeben ohne Breite keinen Sinn, daher fragt der Rechner danach: 4, 8, 16, 32, 64 oder 128 Bit.
- 4. Lesen Sie das Ergebnis und den Rechenweg. Die Antwort erscheint binär, dezimal, hexadezimal und oktal, mit der Spaltenrechnung darunter.
Wie die binäre Addition funktioniert
Die binäre Addition folgt denselben Spaltenregeln wie die dezimale, aber eine Spalte läuft bei 2 statt bei 10 über. Addieren Sie die beiden Bits einer Spalte plus den Übertrag aus der Spalte rechts. Ist die Summe 0 oder 1, schreiben Sie sie hin. Ist sie 2 oder 3, schreiben Sie das niedrige Bit (0 oder 1) und tragen 1 in die nächste Spalte.
| Spaltensumme | Geschriebenes Bit | Übertrag |
|---|---|---|
| 0 + 0 + 0 = 0 | 0 | 0 |
| 1 + 0 + 0 = 1 | 1 | 0 |
| 1 + 1 + 0 = 10 (2) | 0 | 1 |
| 1 + 1 + 1 = 11 (3) | 1 | 1 |
Nehmen Sie 1101 (13) plus 101 (5). Der Rechner füllt beide auf fünf Spalten auf und zeigt den Übertrag, der in jede Spalte eintritt — von links nach rechts 11010 — und ergibt 10010, also 18. Die Zeile der Überträge ist der Teil, den man beim Rechnen von Hand am ehesten verliert.
Subtraktion, Multiplikation und Division
Subtraktion läuft umgekehrt: Braucht eine Spalte 1 − 1 − 1 oder 0 − 1, borgt sie 1 von der Spalte links, die hier 2 wert ist. 1000 − 0011 zeigt ein Borgen, das durch drei Spalten läuft, und endet bei 0101 (8 − 3 = 5). Ist A kleiner als B, subtrahiert der Rechner die kleinere von der größeren Zahl und gibt dem Ergebnis ein Minuszeichen.
Multiplikation ist Verschieben und Addieren. Jede 1 im Multiplikator liefert eine Kopie des Multiplikanden, nach links um die Stellenposition dieses Bits verschoben; eine 0 liefert nichts. Für 1011 × 101 (11 × 5) stehen die Einsen an den Positionen 0 und 2, daher sind die Teilprodukte 1011 und 101100, und ihre Summe ist 110111 — 55.
Division ist schriftliche Division mit einem sehr einfachen Schätzschritt. Holen Sie jeweils ein Bit des Dividenden herunter; passt der Divisor in das, was Sie haben, subtrahieren Sie ihn und schreiben eine 1 in den Quotienten, sonst eine 0. 1100100 ÷ 111 (100 ÷ 7) ergibt den Quotienten 1110 (14) und den Rest 10 (2). Bei negativen Operanden wird der Quotient zur Null hin abgerundet, und der Rest hat das Vorzeichen von A — wie in C, Java und JavaScript.
Bitweise Operationen bei gewählter Breite
| A | B | UND | ODER | XOR | NAND | NOR | XNOR |
|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
| 0 | 1 | 0 | 1 | 1 | 1 | 0 | 0 |
| 1 | 0 | 0 | 1 | 1 | 1 | 0 | 0 |
| 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 |
Mit 1100 und 1010 bei 4 Bit ergibt UND 1000, ODER 1110 und XOR 0110. NICHT kehrt jedes Bit innerhalb der Breite um, also wird dasselbe 1100 bei 4 Bit zu 0011, bei 8 Bit aber zu 11110011 — deshalb ist die Breite wichtig.
Eine Linksverschiebung um n schiebt jedes Bit n Stellen nach oben und füllt mit Nullen auf; die Bits, die oben herausfallen, gehen verloren, und der Rechner listet sie auf. Eine logische Rechtsverschiebung füllt mit Nullen. Eine arithmetische Rechtsverschiebung kopiert das oberste Bit, sodass eine negative Zahl negativ bleibt: 10110110 um 2 nach rechts verschoben ist logisch 00101101, arithmetisch aber 11101101 (−19). Rotationen führen die Bits, die an einem Ende herausfallen, am anderen wieder ein, sodass nichts verloren geht.
Kein Überlauf bei der Arithmetik
Die Arithmetik ist hier bei beliebiger Länge exakt, daher ist 11111111 + 1 gleich 100000000, nicht 0. Echte Hardware behält eine feste Anzahl Bits und läuft über. Um dieses Verhalten und die dazu passenden Zahlenbereiche zu sehen, verwenden Sie den Zweierkomplement-Rechner.
Häufige Fehler
- Den Übertrag in die linkeste Spalte vergessen. Die Addition zweier 8-Bit-Zahlen kann eine 9-Bit-Antwort ergeben. Der Rechner behält die zusätzliche Spalte bei.
- Logische und arithmetische Rechtsverschiebung verwechseln. Sie stimmen für positive Zahlen überein und unterscheiden sich bei jedem Muster, dessen oberstes Bit 1 ist. Sprachen unterscheiden sich: Javas
>>ist arithmetisch und>>>logisch, während C das>>bei einem negativen vorzeichenbehafteten Wert dem Compiler überlässt (bei gängigen Compilern arithmetisch). - Ein Bitmuster versehentlich als vorzeichenbehaftete Zahl lesen.
11110011ist 243 vorzeichenlos und −13 im Zweierkomplement. Die bitweisen Ergebnisse zeigen beides, damit Sie erkennen, was Sie meinen. - Annehmen, NICHT sei breitenunabhängig. In einer unbegrenzten ganzen Zahl ist NICHT von 12 gleich −13. Innerhalb einer festen Breite ist es das Komplementmuster, das dieser Rechner zurückgibt.
Häufig gestellte Fragen
- Wie addiert man Binärzahlen?
- Arbeiten Sie von der rechten Spalte nach links und addieren Sie die beiden Bits und den Übertrag. Eine Spaltensumme von 0 oder 1 wird unverändert geschrieben; eine Summe von 2 wird als 0 mit Übertrag 1 geschrieben, eine Summe von 3 als 1 mit Übertrag 1. Zum Beispiel ergibt 1101 + 101 = 10010. Der Rechner zeigt den Übertrag in jede Spalte.
- Wie subtrahiert man Binärzahlen?
- Subtrahieren Sie Spalte für Spalte von rechts. Wäre eine Spalte unter null, borgen Sie 1 von der nächsten Spalte links, was der aktuellen Spalte 2 hinzufügt. Ist die zweite Zahl größer, subtrahieren Sie in der anderen Reihenfolge und setzen ein Minuszeichen vor das Ergebnis. 1000 − 11 = 101 (8 − 3 = 5).
- Was ist der Unterschied zwischen einer logischen und einer arithmetischen Rechtsverschiebung?
- Eine logische Rechtsverschiebung füllt die frei werdenden obersten Bits mit Nullen und behandelt das Muster daher als vorzeichenlose Zahl. Eine arithmetische Rechtsverschiebung kopiert das ursprüngliche oberste Bit, sodass eine negative Zweierkomplementzahl negativ bleibt. Beide halbieren den Wert, aber nur die arithmetische Verschiebung rundet negative Werte korrekt.
- Was bewirken UND, ODER und XOR?
- Sie vergleichen zwei Bitmuster Spalte für Spalte. UND ergibt 1 nur, wenn beide Bits 1 sind, ODER ergibt 1, wenn mindestens eines 1 ist, und XOR ergibt 1, wenn genau eines 1 ist. UND dient dazu, Bits auszublenden, ODER, um Bits zu setzen, und XOR, um sie umzukehren oder Unterschiede zu finden.
- Kann dieser Rechner negative Binärzahlen verarbeiten?
- Im arithmetischen Modus ja: Setzen Sie ein Minuszeichen davor, dann werden die Vorzeichenregeln auf das exakte Ergebnis angewendet. Der bitweise Modus nimmt stattdessen reine Bitmuster, weil das Muster einer negativen Zahl von der Breite abhängt. Verwenden Sie den Zweierkomplement-Rechner, um das Muster für einen negativen Wert zu finden.
- Wie groß darf eine Binärzahl sein?
- Es gibt keine feste Grenze, weil die Arithmetik mit Ganzzahlen beliebiger Genauigkeit rechnet. Die Spaltenrechnung wird für Operanden bis 64 Bit gezeigt; darüber erhalten Sie weiterhin das exakte Ergebnis, aber ohne Schritttabelle. Bitweise Operationen sind auf die gewählte Breite begrenzt, bis zu 128 Bit.