50. AND, OR y NOT en circuitos

AND, OR y NOT son las operaciones básicas que permiten construir circuitos digitales capaces de combinar, seleccionar e invertir señales binarias.

50.1 Introducción

Las puertas AND, OR y NOT son suficientes para construir una gran variedad de circuitos lógicos. Cada una representa una operación booleana fundamental.

Comprender cómo se usan en circuitos ayuda a conectar la lógica formal con el funcionamiento real de los sistemas digitales.

50.2 Señales de entrada y salida

Un circuito lógico recibe señales de entrada y produce una señal de salida. Cada señal puede interpretarse como 0 o 1.

Por ejemplo, una entrada puede representar si un sensor está activado, si un botón fue presionado o si una condición interna del sistema se cumple.

50.3 La puerta AND en circuitos

La puerta AND se utiliza cuando la salida debe activarse solamente si todas las entradas están activas.

salida = A ∧ B

Si A representa "llave colocada" y B representa "botón presionado", la salida puede representar "motor encendido". El motor se activa solo cuando ambas condiciones se cumplen.

50.4 Tabla de verdad de AND

A B A ∧ B
0 0 0
0 1 0
1 0 0
1 1 1

La última fila es la única que produce una salida verdadera.

50.5 La puerta OR en circuitos

La puerta OR se utiliza cuando la salida debe activarse si al menos una entrada está activa.

salida = A ∨ B

Si A representa "sensor de puerta" y B representa "sensor de ventana", una alarma puede activarse cuando cualquiera de los dos sensores detecta apertura.

50.6 Tabla de verdad de OR

A B A ∨ B
0 0 0
0 1 1
1 0 1
1 1 1

Solo cuando ambas entradas son 0 la salida también es 0.

50.7 La puerta NOT en circuitos

La puerta NOT invierte el valor de una señal. Si la entrada es 1, la salida es 0; si la entrada es 0, la salida es 1.

salida = ¬A

Esta puerta es útil cuando necesitamos trabajar con la condición contraria a una señal disponible.

50.8 Tabla de verdad de NOT

A ¬A
0 1
1 0

NOT cambia el sentido lógico de la señal.

50.9 Combinación de AND y NOT

Podemos combinar una puerta AND con una puerta NOT para obtener condiciones como "A está activa y B no está activa".

salida = A ∧ ¬B

Esto puede representar un sistema que permite avanzar si hay señal de habilitación y no hay señal de bloqueo.

50.10 Combinación de OR y NOT

También podemos invertir entradas antes de combinarlas con OR.

salida = ¬A ∨ B

Esta expresión produce salida verdadera si A no está activa o si B sí lo está. En circuitos, cada negación requiere una puerta NOT antes de la puerta OR.

50.11 Circuito para una condición compuesta

Consideremos la expresión:

salida = (A ∧ B) ∨ ¬C

Para construir el circuito:

  1. A y B entran a una puerta AND.
  2. C entra a una puerta NOT.
  3. Las dos salidas anteriores entran a una puerta OR.

El resultado final es la salida del circuito.

50.12 Relación con programación

La misma expresión puede escribirse como condición en un programa:

const salida = (a && b) || !c;

La sintaxis cambia, pero la estructura lógica es la misma que en el circuito: AND, NOT y OR combinados.

50.13 Precedencia en circuitos

En un circuito no se habla de precedencia de la misma forma que en una expresión escrita. El orden queda determinado por las conexiones.

Si la salida de una puerta AND entra luego a una puerta OR, el circuito está indicando que la operación AND se calcula antes de esa OR.

50.14 Errores comunes

  • Confundir una entrada negada con una salida negada.
  • Suponer que OR significa "una sola entrada verdadera", cuando eso corresponde a XOR.
  • Olvidar que una puerta AND exige que todas las entradas sean 1.
  • No respetar la estructura de conexiones al traducir una expresión a circuito.

50.15 Qué debes recordar de este tema

  • AND activa la salida solo si todas las entradas están activas.
  • OR activa la salida si al menos una entrada está activa.
  • NOT invierte una señal.
  • Las puertas pueden combinarse para representar expresiones booleanas compuestas.
  • Una condición de programación puede tener una estructura equivalente a un circuito lógico.

50.16 Conclusión

AND, OR y NOT son las piezas básicas para construir circuitos lógicos. Al combinarlas podemos representar condiciones simples y compuestas, tanto en hardware como en programas.

En el próximo tema estudiaremos NAND, NOR, XOR y XNOR.