Qué es una instrucción de máquina
Hasta ahora hemos visto circuitos que calculan, circuitos que recuerdan y direcciones. Entonces, ¿cómo se le dice a estas piezas "haz esto"? Toca conocer el idioma que entiende la computadora: las instrucciones.
Una instrucción es "qué" más "dónde"
Las órdenes que se dan a una computadora son muy simples.
Bastan dos partes: "qué hacer" y "dónde" o "con qué".
Por ejemplo: "Suma: celdas 3 y 7".
Qué (suma) + dónde (celdas 3 y 7).
Dicho con palabras de todos los días: "suma la celda 3 y la celda 7".
Corto y claro.
La computadora recibe estas pequeñas órdenes una por una y las ejecuta, y cada una se llama instrucción.
Las instrucciones también se escriben con 0 y 1
Pero la computadora no sabe español ni inglés; solo entiende 0 y 1.
Por eso las instrucciones también se escriben con 0 y 1.
La parte de delante dice qué hacer y la de atrás dice dónde, cada una en una posición fija y con un formato fijo.
Los primeros 4 bits son el tipo de instrucción; el resto es la dirección de destino.
Para nosotros es solo una fila de 0 y 1, pero para la computadora es una frase perfecta: "Suma las celdas 3 y 7".
Si miras las posiciones fijas, el significado se lee con exactitud.
Solo conoce unas pocas palabras
Un dato sorprendente: la computadora conoce menos instrucciones de las que crees.
Traer un valor, guardar un valor, sumar, saltar a otro lugar: solo unas cuantas instrucciones básicas como estas.
Con este vocabulario diminuto lo hace todo.
Combinando estas instrucciones simples innumerables veces se hacen juegos y videos.
Que haya pocas palabras no importa.
Igual que con palabras cortas se escribe una historia larga, estas pocas instrucciones combinadas millones de veces pueden hacer casi cualquier cosa.
Cómo lee la computadora una instrucción
Entonces, ¿cómo lee la computadora estos 0 y 1?
Los corta en las posiciones fijas.
Al ver la parte de delante sabe "esto significa sumar", y al ver la de atrás sabe "las celdas 3 y 7".
Leer una instrucción partiéndola así se llama decodificar.
Pulsa el botón de decodificar de abajo y aparecerá el significado de cada parte.
Corta en las posiciones fijas y lee el significado.
Posiciones fijas, significados fijos.
Por eso la computadora sabe exactamente qué hacer y dónde con solo ver 0 y 1.
Funciona porque hay un acuerdo.
Si encadenas instrucciones, tienes un programa
Una instrucción es pequeña, pero encadenadas logran cosas.
"Trae el valor de la 5, trae el valor de la 6, súmalos y guarda el resultado en la 7": esas tres líneas forman un programa de suma.
Pulsa ejecutar y avanzará línea por línea.
Un miniprograma de tres líneas.
Lo que acabas de ver es la capa más profunda del trabajo de una computadora.
Todos los programas que usamos están hechos, al final, de millones de instrucciones como estas.
En la próxima lección veremos dónde se hacen la resta y la comparación, no solo la suma.