¿Qué es la calculadora de XOR bit a bit?
La calculadora de XOR bit a bit (O exclusivo) toma dos números enteros y los combina bit a bit. En cada posición, el bit de salida vale 1 cuando los dos bits de entrada son distintos, y 0 cuando son iguales. Es una de las operaciones fundamentales en programación, lógica digital, criptografía y detección de errores.
Cómo usarla
Introduce tu primer entero (A) y el segundo entero (B), y pulsa calcular. La herramienta devuelve el resultado del XOR en decimal, junto con sus representaciones en binario y hexadecimal, para que puedas comprobarlo bit a bit. Se admiten tanto números positivos como negativos.
La fórmula explicada
El XOR se escribe A ^ B en la mayoría de los lenguajes de programación y \(\text{A} \oplus \text{B}\) en notación matemática.
La tabla de verdad para un solo bit es: \(0 \oplus 0 = 0\), \(0 \oplus 1 = 1\), \(1 \oplus 0 = 1\), \(1 \oplus 1 = 0\). La operación se aplica de forma independiente a cada par de bits. Una propiedad muy útil: \(\text{A} \oplus \text{A} = 0\) y \(\text{A} \oplus 0 = \text{A}\), razón por la cual el XOR se emplea para intercambiar valores y activar o desactivar banderas (flags).
Ejemplo resuelto
Tomemos A = 12 y B = 10. En binario, \(12 = 1100\) y \(10 = 1010\). Comparando cada columna: \(1 \oplus 1 = 0\), \(1 \oplus 0 = 1\), \(0 \oplus 1 = 1\), \(0 \oplus 0 = 0\), lo que da \(0110 = 6\). Por tanto,
$$12 \oplus 10 = 6$$
Comparación de Operaciones Bit a Bit
Cada operación bit a bit funciona un bit a la vez. Para cada par de bits de entrada \(A\) y \(B\), la operación produce un único bit de salida. La tabla a continuación muestra la tabla de verdad completa de un solo bit para las seis operaciones más comunes. XOR (OR exclusivo, escrito \(A \oplus B\)) produce 1 solo cuando los dos bits de entrada son diferentes.
| A | B | AND (A&B) | OR (A|B) | XOR (A^B) | NAND ~(A&B) | NOR ~(A|B) | XNOR ~(A^B) |
|---|---|---|---|---|---|---|---|
| 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 |
Obsérvese que XOR es el complemento exacto de XNOR, y que XOR es igual a 1 en precisamente las dos filas donde las entradas no coinciden. Esta propiedad de "detector de diferencias" es lo que hace que XOR sea útil para verificaciones de paridad, cifrado simple y cambio de bits.
XOR en Pares de Entrada Comunes
La siguiente tabla calcula varios pares representativos a través de la operación XOR bit a bit, mostrando cada operando en binario, luego el resultado en decimal, binario y hexadecimal. XOR se realiza bit a bit: alineamos los dos números binarios y producimos 1 dondequiera que los bits difieran.
| A | B | A (binario) | B (binario) | A ^ B (dec) | A ^ B (binario) | A ^ B (hex) |
|---|---|---|---|---|---|---|
| 5 | 3 | 0101 | 0011 | 6 | 0110 | 0x6 |
| 255 | 15 | 11111111 | 00001111 | 240 | 11110000 | 0xF0 |
| 12 | 12 | 1100 | 1100 | 0 | 0000 | 0x0 |
| 7 | 0 | 0111 | 0000 | 7 | 0111 | 0x7 |
| 10 | 6 | 1010 | 0110 | 12 | 1100 | 0xC |
| -1 | 1 | …11111111 | …00000001 | -2 | …11111110 | 0x…FE |
Dos patrones se destacan. Cuando un operando es 0, XOR devuelve el otro operando sin cambios (\(7 \oplus 0 = 7\)). Cuando ambos operandos son idénticos, XOR devuelve 0 (\(12 \oplus 12 = 0\)). El ejemplo negativo utiliza representación en complemento a dos: \(-1\) está compuesto por todos los bits a 1, por lo que hacer XOR con cualquier valor invierte cada bit (esto es equivalente a NOT bit a bit), dando \(-1 \oplus 1 = -2\).
Preguntas frecuentes
¿Qué significa XOR? O exclusivo (del inglés exclusive OR): es verdadero solo cuando exactamente una de las dos entradas es verdadera (1).
¿Por qué se usa el XOR en criptografía? Porque aplicar XOR a unos datos con una clave es reversible: volver a aplicar la misma clave recupera los datos originales (\(\text{A} \oplus \text{K} \oplus \text{K} = \text{A}\)).
¿Funciona con números negativos? Sí. Los valores negativos se representan en complemento a dos, por lo que la vista en binario puede mostrar muchos bits para los negativos.