Bitweise Rechner

Führen Sie bitweise AND-, OR-, XOR-, NOT- und Schiebeoperationen auf Ganzzahlen durch. Zeigen Sie Ergebnisse in binären, hexadezimalen und dezimalen Formaten nebeneinander an.

0x0000003C · 0b111100

0x0000000D · 0b1101

60 & 13 = 12

A0000 0000 0000 0000 0000 0000 0011 1100
B0000 0000 0000 0000 0000 0000 0000 1101
=0000 0000 0000 0000 0000 0000 0000 1100

Decimal

12

Hexadecimal

0x0000000C

Binary (short)

0b1100

Bitwise Operation Truth Table
ABA & BA | BA ^ B~A
000001
010111
100110
111100

So verwenden Sie Bitweise Rechner

  1. 1Geben Sie zwei Ganzzahlen (A und B) in Dezimal-, Binär- (0b-Präfix) oder Hexadezimal-Format (0x-Präfix) ein.
  2. 2Wählen Sie eine bitweise Operation aus: AND, OR, XOR, NOT, Linksschieben oder Rechtsschieben.
  3. 3Zeigen Sie das Ergebnis in binären, hexadezimalen und dezimalen Darstellungen an.
ZenovayAnalytics

Analytics, für Gründer gebaut.

  • Besucher-Tracking in Echtzeit
  • Datenschutz zuerst, kein Cookie-Banner
  • In zwei Minuten eingerichtet
Zenovay entdecken

Häufig gestellte Fragen

Was sind bitweise Operatoren?
Bitweise Operatoren arbeiten auf ganzzahligem Niveau (Bit-Ebene). AND (&): Das Ausgabe-Bit ist 1 nur, wenn beide Eingabe-Bits 1 sind. OR (|): Das Ausgabe-Bit ist 1, wenn eines der beiden Eingabe-Bits 1 ist. XOR (^): Das Ausgabe-Bit ist 1, wenn genau eines der Eingabe-Bits 1 ist (exklusives OR). NOT (~): dreht jedes Bit um (1er-Komplement); in JavaScript verwendet NOT 32-Bit-Ganzzahlen mit Vorzeichen, also ~5 = -6. Linksverschiebung (<<): verschiebt alle Bits um N Stellen nach links, äquivalent zur Multiplikation mit 2^N. Rechtsverschiebung (>>): verschiebt mit Vorzeichenerweiterung nach rechts; vorzeichenlose Rechtsverschiebung (>>>): verschiebt nach rechts und füllt mit 0en.
Was ist eine Bitmaske und wie wird sie verwendet?
Eine Bitmaske ist eine Ganzzahl, die mit bitweisen Operatoren verwendet wird, um spezifische Bits zu setzen, zu löschen oder zu testen. Ein Bit setzen: value | (1 << n) setzt Bit n auf 1. Ein Bit löschen: value & ~(1 << n) löscht Bit n auf 0. Ein Bit umschalten: value ^ (1 << n) dreht Bit n um. Ein Bit testen: (value >> n) & 1 gibt 1 zurück, wenn Bit n gesetzt ist. Praktische Anwendungen: Unix-Dateiberechtigungen (chmod 755 = 111 101 101 binär), IP-Subnetzmasken, Feature-Flags in einer einzelnen Ganzzahl gepackt, RGB-Farbkanäle, Spielzustands-Bitmaps, Netzwerk-Protokoll-Header.
Wie funktioniert XOR und wofür wird es verwendet?
XOR (exklusives OR) gibt 1 aus, wenn sich Bits unterscheiden. Wichtige Eigenschaften: A ^ A = 0, A ^ 0 = A, kommutativ und assoziativ. Praktische Anwendungen: einfache Verschlüsselung (mit einem Schlüssel XOR zur Verschlüsselung, erneut XOR zur Entschlüsselung — gleiche Operation). Finden Sie die Ausnahme: XOR alle Zahlen, um die eindeutige zu finden, wenn alles andere zweimal vorkommt. Tauschen ohne eine temporäre Variable: a ^= b; b ^= a; a ^= b. CRC (cyclic redundancy check) Prüfsummen zur Fehlererkennung. Paritätsbit-Berechnung.
Warum verwendet JavaScript 32-Bit-Ganzzahlen für bitweise Operationen?
JavaScript-Zahlen sind 64-Bit IEEE 754-Floats, aber bitweise Operatoren konvertieren Operanden vor dem Betrieb zu 32-Bit-Ganzzahlen mit Vorzeichen. Dies bedeutet: Der maximale sichere Wert für bitweise Operationen ist 2^31 − 1 = 2.147.483.647. Zahlen oberhalb davon laufen über oder produzieren unerwartete Ergebnisse. NOT (~) gibt immer ein 32-Bit-Ergebnis mit Vorzeichen zurück — ~0 = -1, ~1 = -2. Die vorzeichenlose Rechtsverschiebung (>>>) gibt eine vorzeichenlose 32-Bit-Ganzzahl zurück. Für 64-Bit-bitweise Operationen verwenden Sie BigInt: 100n & 255n.
Was sind häufige Bit-Manipulationstricks?
Überprüfen Sie, ob eine Zahl gerade ist: n & 1 === 0. Überprüfen Sie, ob Potenz von 2: n > 0 && (n & (n-1)) === 0. Holen Sie sich das niedrigste gesetzte Bit: n & -n. Löschen Sie das niedrigste gesetzte Bit: n & (n-1). Zählen Sie gesetzte Bits (popcount): while(n) { count += n & 1; n >>= 1; }. Tauschen Sie Nibbles in einem Byte: ((b & 0xF0) >> 4) | ((b & 0x0F) << 4). Schnelle Bodenteiling durch Potenz von 2: n >> k entspricht Math.floor(n / 2^k). Multiplikation mit Potenz von 2: n << k entspricht n * 2^k.