Ejercicios de diseño solo con NAND o solo con NOR
Diez funciones que hay que reconstruir con un único tipo de compuerta, NAND o NOR, según diga el enunciado. Escribe la fórmula en la forma de función del motor, NAND(…, …) o NOR(…, …) con exactamente dos operandos por compuerta, y cuenta las compuertas. Cada respuesta se verifica equivalente a la función; la solución da un diseño a mano y su recuento de compuertas.
Tres identidades hacen todo el trabajo con NAND: NOT A es NAND(A, A); A AND B es NAND(NAND(A, B), NAND(A, B)), un NAND seguido de un inversor; A OR B es NAND(NAND(A, A), NAND(B, B)), por De Morgan. Las versiones con NOR son las duales: NOT A es NOR(A, A), A OR B es NOR(NOR(A, B), NOR(A, B)), y A AND B es NOR(NOR(A, A), NOR(B, B)). Construye de dentro hacia fuera y busca inversores que se cancelen por pares.
Los recuentos de compuertas de las soluciones corresponden al diseño mostrado, y un diseño más ingenioso puede usar menos: A XOR B lleva cuatro NAND cuando se reutiliza el NAND(A, B) compartido, pero cinco si se construye dos veces. La tabla de verdad bajo cada problema es la de la propia función; lo que hay que comprobar es la equivalencia de tu fórmula, y cualquier fórmula con la misma tabla pasa, sea cual sea su recuento.
1. Construye NOT A solo con compuertas NAND. NOT A
| # | A | f |
|---|---|---|
| 0 | FALSO | VERDADERO |
| 1 | VERDADERO | FALSO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
NOT A Clasificación: contingente
NAND(A, A): un NAND con las dos entradas unidas es un inversor. Una compuerta.
2. Construye A AND B solo con compuertas NAND. A AND B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | FALSO |
| 1 | FALSO | VERDADERO | FALSO |
| 2 | VERDADERO | FALSO | FALSO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
A AND B Clasificación: contingente
NAND(NAND(A, B), NAND(A, B)): el NAND de A y B seguido de un inversor hecho con un segundo NAND. Dos compuertas.
3. Construye A OR B solo con compuertas NAND. A OR B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | FALSO |
| 1 | FALSO | VERDADERO | VERDADERO |
| 2 | VERDADERO | FALSO | VERDADERO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
A OR B Clasificación: contingente
Por De Morgan, A OR B es NOT (NOT A AND NOT B), es decir, un NAND de las dos entradas invertidas: NAND(NAND(A, A), NAND(B, B)). Tres compuertas.
4. Construye A XOR B solo con compuertas NAND. A XOR B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | FALSO |
| 1 | FALSO | VERDADERO | VERDADERO |
| 2 | VERDADERO | FALSO | VERDADERO |
| 3 | VERDADERO | VERDADERO | FALSO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
A XOR B Clasificación: contingente
Sea n = NAND(A, B), compartido por las dos ramas: NAND(A, n) es NOT A OR B y NAND(B, n) es A OR NOT B; su NAND niega el bicondicional, que es XOR. Cuatro compuertas: NAND(NAND(A, NAND(A, B)), NAND(B, NAND(A, B))).
5. Construye A AND B solo con compuertas NOR. A AND B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | FALSO |
| 1 | FALSO | VERDADERO | FALSO |
| 2 | VERDADERO | FALSO | FALSO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
A AND B Clasificación: contingente
Por De Morgan, A AND B es NOT (NOT A OR NOT B), un NOR de las dos entradas invertidas: NOR(NOR(A, A), NOR(B, B)). Tres compuertas.
6. Construye A OR B solo con compuertas NOR. A OR B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | FALSO |
| 1 | FALSO | VERDADERO | VERDADERO |
| 2 | VERDADERO | FALSO | VERDADERO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
A OR B Clasificación: contingente
Un NOR seguido de un inversor NOR: NOR(NOR(A, B), NOR(A, B)). Dos compuertas, el dual de la construcción de AND con NAND.
7. Construye A -> B solo con compuertas NAND. A -> B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | VERDADERO |
| 1 | FALSO | VERDADERO | VERDADERO |
| 2 | VERDADERO | FALSO | FALSO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
A -> B Clasificación: contingente
A -> B es NOT A OR B, que es NOT (A AND NOT B), un NAND de A y de B invertida: NAND(A, NAND(B, B)). Dos compuertas.
8. Construye (A AND B) OR C solo con compuertas NAND. (A AND B) OR C
| # | A | B | C | f |
|---|---|---|---|---|
| 0 | FALSO | FALSO | FALSO | FALSO |
| 1 | FALSO | FALSO | VERDADERO | VERDADERO |
| 2 | FALSO | VERDADERO | FALSO | FALSO |
| 3 | FALSO | VERDADERO | VERDADERO | VERDADERO |
| 4 | VERDADERO | FALSO | FALSO | FALSO |
| 5 | VERDADERO | FALSO | VERDADERO | VERDADERO |
| 6 | VERDADERO | VERDADERO | FALSO | VERDADERO |
| 7 | VERDADERO | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
(A AND B) OR C Clasificación: contingente
Una suma de productos se traduce en dos niveles de NAND: (A AND B) OR C es NOT (NOT (A AND B) AND NOT C), así que NAND(NAND(A, B), NAND(C, C)), donde el inversor de C es un NAND con las entradas unidas. Tres compuertas.
9. Construye el multiplexor (A AND B) OR (NOT A AND C) solo con compuertas NAND. (A AND B) OR (NOT A AND C)
| # | A | B | C | f |
|---|---|---|---|---|
| 0 | FALSO | FALSO | FALSO | FALSO |
| 1 | FALSO | FALSO | VERDADERO | VERDADERO |
| 2 | FALSO | VERDADERO | FALSO | FALSO |
| 3 | FALSO | VERDADERO | VERDADERO | VERDADERO |
| 4 | VERDADERO | FALSO | FALSO | FALSO |
| 5 | VERDADERO | FALSO | VERDADERO | FALSO |
| 6 | VERDADERO | VERDADERO | FALSO | VERDADERO |
| 7 | VERDADERO | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
(A AND B) OR (NOT A AND C) Clasificación: contingente
Dos términos producto en un NAND de NAND: NAND(NAND(A, B), NAND(NAND(A, A), C)), donde NAND(A, A) es el inversor de la entrada de selección. Cuatro compuertas.
10. Construye A <-> B solo con compuertas NOR. A <-> B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | VERDADERO |
| 1 | FALSO | VERDADERO | FALSO |
| 2 | VERDADERO | FALSO | FALSO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
El motor no encontró ninguna ley que acorte esta expresión; ya es tan corta como sus leyes de reescritura permiten.
A <-> B Clasificación: contingente
Sea n = NOR(A, B): NOR(A, n) es NOT A AND B y NOR(B, n) es A AND NOT B; su NOR niega el XOR, que es el bicondicional. Cuatro compuertas: NOR(NOR(A, NOR(A, B)), NOR(B, NOR(A, B))), el dual del diseño de XOR con NAND.
Preguntas
¿Por qué el motor acepta una fórmula con más compuertas que la mía?
Porque la comprobación trata de la función, no del coste: una respuesta pasa cuando es equivalente en todas las filas. El recuento de compuertas es una cualidad de diseño que juzgas a mano, y las soluciones dan un recuento para comparar, sin afirmar que no pueda mejorarse.
Relacionado
Leyes
- AND con compuertas NAND: A·B = NAND(NAND(A, B), NAND(A, B))
- NOT con NOR: A' = NOR(A, A)
- OR con compuertas NOR: A + B = NOR(NOR(A, B), NOR(A, B))
Operadores y compuertas
- Compuerta NAND: tabla de verdad de 2, 3 y 4 entradas, compuerta universal
- Compuerta NOR: tabla de verdad de 2, 3 y 4 entradas, compuerta universal
Ejemplos resueltos
- XOR con cuatro compuertas NAND, equivalencia verificada
- AND solo con compuertas NOR
- Mayoría de tres solo con compuertas NAND
Comparar
Véase también
- NOT con NAND: A' = NAND(A, A)
- OR con compuertas NAND: A + B = NAND(NAND(A, A), NAND(B, B))
- AND con compuertas NOR: A·B = NOR(NOR(A, A), NOR(B, B))
- Compuerta universal: definición, ejemplo y equivalente en inglés
- Conversor a solo NAND o solo NOR con demostración de equivalencia
Ejercicios
Generado a partir del motor de Tangibool, semántica tangibool-semantics/1, motor 1.0.0, compilación . Cada tabla, mapa, simplificación y veredicto de estas páginas lo calculó el motor de Tangibool al compilar el sitio, y cada afirmación la volvió a comprobar el mismo verificador exacto que usa la app. Los límites se indican donde aplican. © 2026 Foreranger LTD.