seegongsik
Estructura

Cómo funciona una dirección de memoria

En la lección anterior dijimos que, al juntar muchas celdas de memoria, se obtiene la memoria. Pero entre tantas celdas, ¿cómo se llega de una vez a la única celda que quieres?

01

Demasiadas celdas para encontrar una

Hay miles de millones de celdas de memoria.
Entonces, ¿cómo se encuentra en cuál de ellas está "ese valor que guardé antes"?
No tienen nombre y todas se ven exactamente iguales.

Todas las celdas se ven iguales, así que no hay forma de señalar solo una.

Imagina una biblioteca con decenas de miles de libros metidos en los estantes sin ningún número.
Encontrar el libro que buscas sería casi imposible.
La memoria tiene el mismo problema, así que necesita una solución.

02

Dar un número a cada celda

La solución funciona igual que los casilleros de una piscina.
Cada casillero, idéntico a los demás, lleva un número: 0, 1, 2, etcétera.
La memoria numera todas sus celdas en orden de la misma manera.

#0
72
#1
101
#2
108
#3
108
#4
111

Arriba, el número de la celda (dirección); abajo, el valor guardado en ella.

Este número se llama dirección.
Igual que la dirección de una casa permite que el correo llegue a la puerta correcta, una dirección en cada celda permite ir justo a la celda que se busca.

03

Si dices una dirección, vas a esa celda

Con direcciones, encontrar algo es instantáneo.
Si dices "trae el valor de la celda 3", la memoria va directo a la celda 3 y saca el valor que hay dentro.
Aunque haya miles de millones de celdas, con saber el número llegas de una vez.
Escribe una dirección abajo y pulsa leer: aparecerá el valor de esa celda.

#0
72
#1
101
#2
108
#3
108
#4
111
#5
0
#6
0
#7
0
Ingresa una dirección y pulsa Leer

Escribe una dirección y ve a esa celda.

Ir directo a una celda con un solo número es el secreto de que la memoria sea rápida.
No cuenta desde el principio; señala directamente la dirección.

04

Guardar un valor en la celda que quieras

No solo sirve para sacar cosas.
Si dices "guarda este valor en la celda 5", el valor queda guardado en esa celda.
Leer es sacar por dirección; escribir es guardar por dirección.
Esas dos acciones son todo lo que hace la memoria.

#0
72
#1
101
#2
108
#3
108
#4
111
#5
0
#6
0
#7
0
Ingresa una dirección y un valor, luego pulsa Escribir

Elige una dirección y guarda un valor.

Leer por dirección, escribir por dirección. Sencillo.
Pero estas dos acciones tan simples son la base de todo programa.
Variables, fotos, lo que sea: al final, todo entra y sale por dirección de esta forma.

05

La CPU pide las cosas por dirección

Ahora, el panorama completo.
Cuando la CPU, que es la que calcula, necesita un valor, se lo pide a la memoria por dirección.
Algo así: "Dame el valor de la 3 y guarda este resultado en la 7".
La CPU y la memoria sacan el trabajo adelante pasándose direcciones.

CPUcalcula
Dame la 3→←Aquí está
Memoria (celdas numeradas)

Se pasan las cosas por dirección.

Con esto hemos dado una vuelta completa a los cimientos del cuerpo de una computadora.
Empezando por el 0 y el 1, hemos llegado a calcular, recordar y encontrar cosas por dirección.
A partir de la próxima lección veremos cómo estas piezas siguen instrucciones de verdad.

En una líneaDar un número a cada una de las innumerables celdas idénticas, como a los casilleros, es lo que llamamos dirección. Las dos acciones simples de leer y escribir por dirección son la base de todo programa.
← Estructura
¿Te fue útil? Apoyar seegongsik