01 · Punto de partida
AND/OR con bolita mandan
En CMOS, NAND y NOR son las puertas naturales (4 transistores); AND y OR agregan un NOT atrás. Por eso el catálogo las adora y son universales: con un puñado de 74HC00 armás cualquier cosa.
- ¿Qué tablas tienen?
- ¿Cómo se hace NOT/AND/OR/XOR solo con NAND?
- ¿74HC00 y 74HC02 comparten pines?
- ¿Cuándo conviene y cuándo no?
02 · NAND
Solo el 11 da 0
Y = ~(A·B): Σm(0,1,2). Símbolo AND con bolita; 74HC00 ×4. Recetas: NOT = entradas unidas; AND = NAND + NOT (2 puertas); OR = negar cada entrada y NAND (3 puertas, De Morgan).
03 · NOR
Solo el 00 da 1
Y = ~(A+B): Σm(0). Símbolo OR con bolita; 74HC02 ×4. Igual de universal (dual de NAND). Ojo pines: el HC02 NO comparte el pinout del HC00 (entradas y salidas en otro orden): leer la hoja, no asumir.
74HC00 (NAND)
Pines 1A-1B/1Y…
Salidas en pines 3, 6, 8, 11. El estándar para construir todo.
74HC02 (NOR)
Pines distintos
Salidas en pines 1, 4, 10, 13. Misma función dual, otro mapa.
04 · Taller
Solo-NAND en mesa
- NOT con 1 NAND
- Unir A con B: Y = ~(A·A) = ~A. Medir las 2 filas.
- AND con 2 NAND
- NAND seguida de NOT: 1110 → 0001. Verificar la fila 11.
- OR con 3 NAND
- Dos NOT de entrada + NAND: De Morgan en silicio. 8 patas usadas de 14.
- XOR con 4 NAND
- El clásico de 4 puertas (ver código): un 74HC00 entero = un XOR. Comparar con el 74HC86.
05 · Universalidad en código
Todo con NAND
Básicas más el XOR de 4 NAND verificado fila por fila.
Python en tu navegador. Rompé el XOR de 4 NAND si podés.
def nand_(a, b):
return 1 - (a and b)
def nor_(a, b):
return 1 - (a or b)
print("NAND:", [nand_(a, b) for a in (0, 1) for b in (0, 1)])
print("NOR: ", [nor_(a, b) for a in (0, 1) for b in (0, 1)])
NAND: [1, 1, 1, 0]. NOR: [1, 0, 0, 0]. ¿Qué fila las distingue de AND/OR?
XOR con 4 NAND
def xor_nand(a, b):
n1 = nand_(a, b)
n2 = nand_(a, n1)
n3 = nand_(b, n1)
return nand_(n2, n3)
print("XOR-4NAND:", [xor_nand(a, b) for a in (0, 1) for b in (0, 1)])
06 · Analogía programador
Primitiva RISC
- 1NAND = NAND lógico.
Tu
!(a && b)arma el resto:!a = !(a && a), igual que en silicio. - 2Universal = Turing-completo.
Una sola pieza que arma todo: como un lenguaje con un solo operador (y mucha paciencia).
- 3Pinout ≠ función.
Misma lógica, distinto mapa: como APIs con firmas reordenadas. Leer docs, no asumir.
07 · Taller
Laboratorio: constructor NAND
Elegí qué construir con NAND y mové A/B: el laboratorio simula puerta por puerta y verifica.
Constructor NAND
XOR-4NAND · A=1 B=0 → 1
XOR-4NAND 1,0: Y=1.
Preguntas para explorar
- Recorré las 4 filas en XOR-4. ¿Alguna falla? ¿Qué prueba?
- Pasá a OR-3 con A=0, B=0. ¿Y? ¿Cuántas NAND trabajan?
- ¿Por qué el laboratorio cuenta puertas? ¿Qué enseña el número?
Ver respuestas sugeridas
- Ninguna: 0-1-1-0 clavado. Prueba que 4 NAND = 1 XOR.
- 0 con 3 NAND en juego. Universalidad verificada en mesa.
- Costo: 1/2/3/4 puertas. Lo universal sale caro; el chip dedicado (86) existe por eso.
08 · Comprensión
Confusiones frecuentes
«NAND es AND»
La bolita invierte: 1110 vs 0001. Leer la bolita antes que la letra, siempre.
«HC02 = mismos pines»
No: salidas en 1/4/10/13 vs 3/6/8/11. Intercambiarlos sin mirar quema la tarde (no el chip, por suerte).
«Todo con NAND siempre»
Universal ≠ óptimo: XOR con 4 NAND gasta un chip; un 74HC86 da 4 XOR. Elegir por costo, no por purismo.
«De Morgan es teoría»
Es el plano del OR-con-NAND: A+B = ~(~A·~B) se cablea con 3 puertas. Teorema que se suelda.
09 · Práctica guiada
Ejercicios universales
Ejercicio 1: OR con 3 NAND
Dibujá A→NOT, B→NOT, NAND final. Escribí la función y verificá las 4 filas con nand_().
Ver solución razonada
Y = ~(~A·~B) = A+B: 00→~(1·1)=0; 01→~(1·0)=1; 10→1; 11→~(0·0)=1. 0111 ✓.
Ejercicio 2: XNOR con NAND
Al XOR-4NAND agregá un NOT (5.ª NAND). ¿Tabla? ¿Puerta resultante?
Ver solución
1001 = XNOR (igualdad). 5 NAND o un 74HC266/XNOR dedicado.
Ejercicio 3: stock mínimo
Con solo 74HC00 armar: 2 NOT, 1 AND, 1 OR, 1 XOR. ¿Cuántos chips? (NOT=1, AND=2, OR=3, XOR=4 NAND; chip=4.)
Ver solución
2+2+3+4 = 11 NAND → 3 chips (sobra 1). Con dedicados serían 3 chips igual pero legibles: decidir por claridad.
10 · Síntesis
Ideas para recordar
- NAND = 1110 (HC00); NOR = 1000 (HC02, otros pines).
- NOT=1, AND=2, OR=3, XOR=4 NAND.
- OR = ~(~A·~B): De Morgan que se cablea.
- Universal ≠ óptimo: contar puertas.
- CMOS nace NAND/NOR: por eso abundan.
Universalidad dominada. Ahora la diferencia: en el próximo tema, XOR y XNOR.