Cómo funciona una CPU
La ALU que se encarga del cálculo, la instrucción que decide qué hacer. ¿Cómo se mueven estas dos como un solo cuerpo? Sigamos el flujo de una CPU procesando instrucciones una por una.
Una CPU repite tres tiempos
Lo que hace una CPU
en realidad es simple.
Traer una instrucción,
descifrar qué instrucción es,
ejecutarla.
Luego traer la siguiente.
Repite estos tres tiempos
sin descanso.
Buscar → descifrar → ejecutar, y repetir.
Buscar, descifrar, ejecutar.
Llama a esto un tiempo,
y una CPU gira este tiempo
miles de millones de veces por segundo.
Cada uno es simple,
pero es tan rápido
que hace cosas complejas.
Un dedo que señala la siguiente instrucción
Pero ¿cómo sabe una CPU
qué instrucción
le toca hacer ahora?
En algún lugar de la memoria
las instrucciones están en fila,
y algo señala
la "siguiente a hacer."
Es el PC, el contador de programa.
El PC señala la siguiente instrucción.
Cada vez que trae una instrucción,
el PC crece en uno.
Hizo el 0, ahora el 1,
hizo el 1, ahora el 2.
Gracias a este dedo,
una CPU no pierde su lugar
y hace las instrucciones en orden.
Las partes se juntan y forman una CPU
Ahora las partes se juntan.
El PC que señala la siguiente,
el descifrador que abre la instrucción,
la ALU que calcula,
pequeñas casillas que sostienen valores un momento.
Pequeñas por separado,
pero juntas forman
una CPU que procesa instrucciones.
Un cuerpo de CPU.
El PC señala la siguiente,
el descifrador abre la instrucción,
la ALU calcula,
el registro sostiene el valor.
Cada uno hace su trabajo
y giran un tiempo juntos.
Así se ve una CPU trabajando.
Ejecuta tres líneas de instrucción tú mismo
Aquí va un programa corto.
"Guarda 3,"
"suma 4,"
"muestra el resultado."
Avanza de a un tiempo
y mira moverse el PC,
apilarse el valor,
juntos.
Pulsa para avanzar.
Ejecuta línea por línea, siguiendo el PC.
Mientras el PC crecía 0, 1, 2,
ejecutó cada instrucción, ¿verdad?
El valor se volvió 3,
luego 7,
y al final apareció en pantalla.
Así se ve un programa
en marcha.
Cuando el PC salta a otro lugar
El PC normalmente
avanza de a un paso,
pero a veces salta a otro lugar.
Al encontrar una instrucción como
"ve a la instrucción 5,"
el PC cambia a esa dirección.
Cuando este "salto"
se encuentra con el verdadero o falso de la comparación de la vez pasada,
se vuelve la bifurcación llamada "si."
El PC salta del 2 al 5.
En vez de ir de a un paso,
cambia el PC a otro valor
y el flujo del programa cambia.
Saltar adelante,
o volver atrás.
La próxima vez veremos
cómo este salto se vuelve
"si" y "repetir."