¿Qué es la calculadora NOR a nivel de bits?
Esta herramienta calcula la operación NOR bit a bit de dos enteros mediante la fórmula \(\text{result} = \sim(\text{A} \mathbin{|} \text{B})\). La NOR ("NOT OR") es una operación lógica fundamental: primero aplica un OR a cada par de bits correspondientes y después invierte el resultado. Un bit de salida vale 1 únicamente cuando ambos bits de entrada son 0. La NOR es funcionalmente completa: cualquier otra puerta lógica puede construirse solo con puertas NOR, motivo por el cual resulta tan importante en la electrónica digital.
Cómo usarla
Introduce dos números enteros (A y B) y elige la anchura de bits (8, 16, 32 o 64 bits). La calculadora devuelve el resultado NOR interpretado como un valor sin signo en esa anchura, junto con el valor intermedio del OR y su representación binaria. Elegir una anchura menor simplemente enmascara los bits superiores, algo muy útil cuando emulas registros de tamaño fijo.
La fórmula explicada
El OR de dos bits es 1 si al menos uno de ellos es 1. La NOR invierte ese resultado, de modo que cada bit sigue esta tabla de verdad: 0 NOR 0 = 1, 0 NOR 1 = 0, 1 NOR 0 = 0, 1 NOR 1 = 0. Como la inversión pura (~) activa todos los bits altos, aplicamos una máscara con \(2^{n}-1\) para mantener la respuesta dentro de la anchura sin signo seleccionada.
$$\text{NOR} = \sim\left(\text{A} \mathbin{|} \text{B}\right) \mathbin{\&} \left(2^{\text{Bits}} - 1\right)$$
Ejemplo resuelto
Tomemos A = 12 (en binario 1100) y B = 10 (en binario 1010) con anchura de 8 bits. \(\text{A} \mathbin{|} \text{B} = 1110 = 14\). Al invertir dentro de 8 bits obtenemos \(11110001 = 241\). Por lo tanto, \(12 \text{ NOR } 10 = \mathbf{241}\) con anchura de 8 bits.
Tabla de Verdad NOR y Máscaras de Ancho de Bits
La operación NOR a nivel de bits combina dos operandos bit por bit. Para cada par de bits, primero calcula la OR, luego invierte el resultado. En otras palabras, un bit de salida es 1 solo cuando ambos bits de entrada son 0; en todos los demás casos el bit de salida es 0. Esta es la negación de OR, de ahí el nombre NOR (NOT-OR).
| A | B | A | B | NOR = ~(A | B) |
|---|---|---|---|
| 0 | 0 | 0 | 1 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 |
Como el paso NOT invierte cada bit, el resultado depende del ancho de bits elegido. Después de aplicar OR a los operandos e invertir, el valor se enmasca al ancho \(n\) usando \(2^{n}-1\), de modo que solo permanezcan los \(n\) bits más bajos. La máscara para cada ancho compatible se muestra a continuación.
| Ancho de bits \(n\) | Máscara \(2^{n}-1\) (decimal) | Valor máximo sin signo |
|---|---|---|
| 8 | 255 | 255 |
| 16 | 65535 | 65535 |
| 32 | 4294967295 | 4294967295 |
| 64 | 18446744073709551615 | 18446744073709551615 |
Por ejemplo, con \(A = 12\) y \(B = 10\) a 8 bits de ancho: \(12 | 10 = 14\), y \(\sim 14\) enmascarado a 8 bits da 241. El resultado intermedio de OR \(12 | 10 = \) 14 se puede verificar de forma independiente.
Términos Clave
- NOR a nivel de bits
- Una operación que produce un resultado cuyo cada bit es 1 solo cuando los bits correspondientes de ambos operandos son 0. Se define como la inversión del resultado de OR: \(\text{NOR} = \sim(A | B)\).
- OR (a nivel de bits)
- Una operación que establece cada bit del resultado en 1 si al menos uno de los dos bits de entrada correspondientes es 1, y en 0 solo cuando ambos son 0.
- NOT / inversión (~)
- Una operación unaria que invierte cada bit: cada 0 se convierte en 1 y cada 1 se convierte en 0. En NOR se aplica al resultado de OR, y su efecto está limitado por el ancho de bits elegido.
- Ancho de bits
- El número de bits utilizados para representar un valor (8, 16, 32 o 64 aquí). Determina cuántos bits mantiene el resultado invertido y, por lo tanto, el rango numérico de la salida.
- Enmascaramiento
- Usar un AND a nivel de bits con un valor como \(2^{n}-1\) para mantener solo los \(n\) bits más bajos y descartar los bits más altos. Esto confina el resultado de NOR al ancho seleccionado.
- Entero sin signo
- Una representación de número entero sin bit de signo, por lo que todos los patrones de bits representan valores no negativos de 0 hasta \(2^{n}-1\). El resultado de NOR se reporta como un valor sin signo.
- Puerta funcionalmente completa (universal)
- Una puerta a partir de la cual se puede construir cualquier función booleana usando solo copias de sí misma. NOR es funcionalmente completa: AND, OR y NOT se pueden construir a partir de puertas NOR únicamente, razón por la cual se llama puerta universal.
Preguntas frecuentes
¿Por qué cambia el resultado según la anchura de bits? La inversión voltea todos los bits, así que los 1 iniciales dependen de cuántos bits representan el número. Una anchura mayor produce un resultado sin signo más grande.
¿Puedo usar números negativos? Las entradas se tratan como enteros; para obtener resultados limpios, utiliza números enteros no negativos dentro de la anchura elegida.
¿La NOR es lo mismo que la NAND? No. La NAND es \(\sim(\text{A} \mathbin{\&} \text{B})\) (NOT AND), mientras que la NOR es \(\sim(\text{A} \mathbin{|} \text{B})\) (NOT OR). Ambas son puertas universales, pero generan salidas distintas.