Aprende › Tema 1
Compuertas lógicas: NOT, AND, OR, NAND, NOR, XOR y XNOR
Lectura de 7 min · Equipo bitGateLab
Toda la electrónica digital, desde un semáforo hasta un procesador, se construye con unos cuantos bloques que toman decisiones con ceros y unos: las compuertas lógicas. Aquí vas a conocer las siete compuertas básicas, cómo se dibujan, cómo se escriben en álgebra de Boole y cuál es su tabla de verdad. Al final verás por qué con un solo tipo de compuerta, NAND o NOR, puedes armar todas las demás.
Niveles lógicos: qué significan el 0 y el 1
En un circuito digital cada señal solo puede estar en uno de dos estados. Al voltaje bajo (cercano a 0 V) lo llamamos 0 lógico o falso, y al voltaje alto (cercano a la alimentación, por ejemplo 5 V o 3.3 V) lo llamamos 1 lógico o verdadero. Una compuerta recibe una o varias entradas y entrega una salida que depende únicamente del valor actual de sus entradas: no recuerda nada. Por eso se dice que las compuertas forman lógica combinacional.
La forma más completa de describir una compuerta es su tabla de verdad: una lista de todas las combinaciones posibles de entradas con la salida que corresponde a cada una. Con n entradas hay 2n combinaciones, así que una compuerta de dos entradas tiene 4 renglones y una de tres entradas tiene 8.
Las tres compuertas fundamentales
NOT (inversor)
Tiene una sola entrada y entrega lo contrario: si entra 0 sale 1 y si entra 1 sale 0. Se escribe Y = A (también verás A' o ¬A). Su símbolo es un triángulo con una burbuja en la punta; esa burbuja es la marca universal de "aquí se invierte".
| A | Y = A |
|---|---|
| 0 | 1 |
| 1 | 0 |
AND (Y)
La salida vale 1 solo cuando todas las entradas valen 1. Se escribe como un producto: Y = A·B o simplemente Y = AB. Piensa en dos interruptores en serie: la lámpara enciende únicamente si los dos están cerrados.
OR (O)
La salida vale 1 cuando al menos una entrada vale 1. Se escribe como una suma: Y = A + B. Equivale a dos interruptores en paralelo. Ojo: en álgebra de Boole 1 + 1 = 1, no 2.
Compuertas derivadas: NAND, NOR, XOR y XNOR
NAND es un AND seguido de un inversor: Y = AB. Su salida es 0 solo cuando todas las entradas son 1. NOR es un OR invertido: Y = A + B, y vale 1 solo cuando todas las entradas son 0. En el símbolo, ambas llevan la burbuja en la salida.
XOR (O exclusiva) vale 1 cuando las entradas son diferentes: Y = A ⊕ B = AB + AB. Con más de dos entradas, la XOR vale 1 cuando hay una cantidad impar de unos, por eso se usa para calcular bits de paridad. XNOR es su complemento, Y = A ⊕ B = AB + A B, y vale 1 cuando las entradas son iguales: es un comparador de igualdad de un bit.
Esta es la tabla de verdad conjunta de las seis compuertas de dos entradas:
| A | B | AND | OR | NAND | NOR | XOR | XNOR |
|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 |
Ejemplo: evaluar un circuito pequeño. Calcula Y = (A + B) · C para A = 0, B = 1, C = 1.
- OR: A + B = 0 + 1 = 1.
- Inversión: 1 = 0.
- AND con C: 0 · 1 = 0.
Resultado: Y = 0. Con A = 0, B = 0, C = 1 el OR da 0, el inversor da 1 y el AND da 1, así que Y = 1.
NAND y NOR: compuertas universales
Una compuerta es universal si con copias de ella sola puedes construir NOT, AND y OR, y por lo tanto cualquier función lógica. NAND y NOR cumplen esa propiedad. Esto tiene una consecuencia práctica: un fabricante puede producir un solo tipo de celda y armar con ella todo el diseño, y tú puedes resolver un circuito completo con un único chip de la familia 74HC (por ejemplo, el 74HC00 trae cuatro NAND de dos entradas).
Todo con NAND
- NOT: une las dos entradas de una NAND. Si A entra a ambas, A·A = A.
- AND: una NAND seguida de una NAND usada como inversor: AB = AB.
- OR: invierte cada entrada con una NAND y júntalas en una tercera NAND: A·B = A + B (por De Morgan).
Todo con NOR
- NOT: une las entradas de una NOR: A + A = A.
- OR: una NOR seguida de una NOR inversora.
- AND: invierte cada entrada con una NOR y júntalas en otra NOR: A + B = AB.
Ejemplo: XOR con cuatro NAND. Sea N1 = AB, N2 = A·N1, N3 = B·N1 y Y = N2·N3. Revisa los cuatro casos:
| A | B | N1 | N2 | N3 | Y |
|---|---|---|---|---|---|
| 0 | 0 | 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 | 1 | 0 |
La columna Y coincide con la de XOR. Cuatro compuertas, un solo chip.
Errores comunes
- Pensar que 1 + 1 = 2 en una OR. En lógica booleana la suma satura: 1 + 1 = 1.
- Confundir AB (NAND, una barra sobre todo) con A B (dos barras separadas, que equivale a NOR). La longitud de la barra cambia el resultado.
- Creer que XOR de tres entradas vale 1 "cuando una sola entrada es 1". En realidad vale 1 con una cantidad impar de unos, y eso incluye el caso 1, 1, 1.
- Dejar entradas sin conectar en un chip CMOS real. Una entrada flotante puede leerse como 0 o como 1 al azar; conéctala a tierra o a la alimentación.
Pruébalo en el simulador
La mejor forma de memorizar estas tablas es generarlas tú mismo. En el editor de circuitos puedes poner una compuerta, moverle las entradas y ver la salida al instante; luego compara con la tabla de verdad que calcula la herramienta.
- Coloca dos entradas, una compuerta NAND y una salida, y conéctalas.
- Cambia las entradas por las cuatro combinaciones y anota la salida en cada caso.
- Genera la tabla de verdad del circuito y compárala con la de este artículo.
- Arma el XOR con cuatro NAND del ejemplo y verifica que su tabla coincida con la de una XOR sola.
- Si quieres llevarlo al protoboard virtual, coloca un chip NAND de la familia 74HC, aliméntalo y observa el LED de salida.
Ejercicios
- Escribe la tabla de verdad de Y = A + B.
Respuesta
Para AB = 00, 01, 10, 11 la salida es 1, 0, 1, 1. Solo vale 0 cuando A = 0 y B = 1.
- ¿Cuántos renglones tiene la tabla de verdad de una AND de 4 entradas y en cuántos vale 1 la salida?
Respuesta
24 = 16 renglones; la salida vale 1 solo en uno (1111).
- Obtén la salida de una XOR de tres entradas con A = 1, B = 1, C = 1.
Respuesta
1 ⊕ 1 = 0 y 0 ⊕ 1 = 1. La salida es 1, porque hay tres unos (cantidad impar).
- ¿Cuántas compuertas NOR necesitas, como mínimo con este método, para formar una AND de dos entradas?
Respuesta
Tres: dos NOR usadas como inversores (una para A y otra para B) y una tercera NOR que recibe A y B, cuya salida es A + B = AB.
Para transformar y simplificar expresiones con estas compuertas, sigue con álgebra de Boole.