La pila es una parte de la memoria que se usa como una pila de platos. Crece desde el último casillero (el 31) hacia abajo, y el registro SP apunta al plato de arriba.
PUSHpone A encima de la pila.POPsaca el número de arriba y lo pone en A.
Mira cómo los números salen al revés de como entraron:
Subrutinas: ir y volver
Una subrutina es un pedazo de programa que se puede usar muchas veces. CALL doble salta a la subrutina, pero antes guarda en la pila la dirección de regreso: por dónde iba. RET saca esa dirección de la pila y vuelve.
Por eso a esta pila se le llama pila de llamadas. Cuando en Scheme o en Java una función llama a otra, por dentro pasa exactamente esto.
Para pensar
- ¿Qué fue fácil?
- ¿Qué fue difícil?
- ¿Otro paradigma lo habría resuelto mejor? ¿Cuál y por qué?