01 · Punto de partida
Como en primaria: llevo 1
1+1 = 10: suma 0, llevo 1. El medio suma 2 bits (S y Cout); el completo suma 3 (A, B y el que traigo, Cin). Encadenando completos se suma cualquier ancho.
- ¿Qué ecuaciones tiene cada uno?
- ¿Por qué el carry es una mayoría?
- ¿Cuántas puertas cuesta un completo?
- ¿Dónde se usa el medio?
02 · Medio sumador
Dos bits, sin traer nada
S = A⊕B, Cout = A·B: 1 XOR + 1 AND (medio 74HC86 + medio 74HC08). Tabla 0001/0111 cruzadas: S = 0110, Cout = 0001.
03 · Completo
Tres bits, con acarreo
| A B Cin | S | Cout | Suma |
|---|---|---|---|
| 0 0 0 | 0 | 0 | 0 |
| 0 0 1 | 1 | 0 | 1 |
| 0 1 1 | 0 | 1 | 2 |
| 1 0 1 | 0 | 1 | 2 |
| 1 1 0 | 0 | 1 | 2 |
| 1 1 1 | 1 | 1 | 3 |
S = 1 con cantidad impar (paridad-3, Tema 6); Cout = 1 con ≥ 2 unos: Σm(3,5,6,7) = mayoría (Temas 15–16). El curso se cita a sí mismo.
04 · Puertas
La cuenta del completo
- S: 2 XOR
- A⊕B⊕Cin en cascada (2 niveles de XOR): medio 74HC86 ×2.
- Cout: 3 AND + 1 OR
- Mayoría mínima AB+ACin+BCin (Tema 15): 1 HC11 (triple AND-3… de 2 entradas sobran) + OR.
- Total: 6 puertas
- Más 3 NOT si las entradas vienen directas. Por eso existen los MSI (7483, Tema 24).
05 · Suma en código
Medio, completo y mayoría
Tabla completa más la prueba de que Cout es mayoría.
Python en tu navegador. Sumá con puertas, no con +.
def medio(a, b):
return a ^ b, a and b
def completo(a, b, cin):
s = a ^ b ^ cin
cout = (a and b) or (a and cin) or (b and cin)
return s, cout
for a, b, cin in [(0, 0, 0), (0, 1, 1), (1, 1, 0), (1, 1, 1)]:
s, c = completo(a, b, cin)
print(f"{a}+{b}+{cin} = {c}{s} (suma {a+b+cin})")
0+1+1 = 10 (2). 1+1+1 = 11 (3). ¿Qué filas dan Cout=1?
Cout es mayoría
couts = [completo(a, b, c)[1] for a in (0,1) for b in (0,1) for c in (0,1)]
print("Cout:", couts)
print("mayoria Σm(3,5,6,7):", [i for i, v in enumerate(couts) if v])
06 · Analogía programador
Llevo 1, como siempre
- 1Cin = el que traía.
Sumar columnas con acarreo previo: el algoritmo de primaria en silicio.
- 2S = paridad, Cout = mayoría.
Dos funciones viejas con trabajo nuevo: reutilizar beats reinventar.
- 3Medio = caso base.
Como la recursión: el primero es simple (Cin=0), el resto completo.
07 · Exploración
Laboratorio: sumar con puertas
Sumador completo con A/B/Cin: el laboratorio da S, Cout y la suma en decimal.
Sumador 1 bit
1+1+0 = 10 (2)
1+1+0: S=0, Cout=1 (2).
Preguntas para explorar
- Poné 1+1+1. ¿S? ¿Cout? ¿Decimal?
- Con Cin=0 recorré A,B: ¿en qué se parece al medio sumador?
- ¿Qué filas dan Cout=1? Compará con la mayoría del Tema 6.
Ver respuestas sugeridas
- S=1, Cout=1: 11 = 3. Tres unos entran, “3” sale.
- Es idéntico: completo con Cin=0 = medio. El medio es un caso particular.
- 011, 101, 110, 111 = Σm(3,5,6,7): la misma tabla. Carry = mayoría.
08 · Comprensión
Confusiones frecuentes
«XOR suma todo»
XOR da S pero pierde el carry: 1+1 necesita AND aparte. Medio = XOR + AND, inseparables.
«Cout es un OR»
OR daría 1 con un solo 1: Cout pide ≥ 2 (mayoría AB+AC+BC). Un OR en su lugar suma mal.
«Medio en cascada»
Solo el bit 0 puede ser medio (sin Cin previo): del bit 1 en adelante, completos. Ripple = 1 medio + N completos.
«Sumar es pegar bits»
Concatenar 1 y 1 da “11” texto, no 2: sumar es S + carry, no juntar símbolos.
09 · Práctica guiada
Ejercicios de suma
Ejercicio 1: medio con NAND
Armá S (XOR-4NAND) y Cout (AND-2NAND) solo con 74HC00. ¿NAND totales? Verificá filas con código.
Ver solución razonada
4 + 2 = 6 NAND (XOR-4 del Tema 9 + AND-2). Un chip y medio: 2 HC00.
Ejercicio 2: 1+1+1 a mano
Con las ecuaciones: S = 1⊕1⊕1, Cout = mayoría(1,1,1). ¿Valores? ¿Coincide con 3 = 11?
Ver solución
S = 1 (tres impares), Cout = 1: 11₂ = 3 ✓. Paridad + mayoría de acuerdo.
Ejercicio 3: restar con sumar
5 − 3 con Ca2 de 4 bits (0101 + 1101). Sumá bit a bit con acarreo. ¿Resultado? ¿Acarreo final?
Ver solución
0010 = 2, carry final 1 (se descarta en sin signo de 4 bits). Restar es sumar complementado (Tema 5 + este).
10 · Síntesis
Ideas para recordar
- Medio: S = A⊕B, Cout = AB.
- Completo: S = A⊕B⊕Cin, Cout = mayoría.
- Cout = Σm(3,5,6,7) = AB+ACin+BCin.
- Completo = 2 XOR + mayoría (6 puertas).
- Medio = completo con Cin = 0.
Un bit dominado. Ahora N bits: en el próximo tema, sumador en cascada.