Stack o Pila

Este tipo de estructura de datos es fácil de desarrollar por los sistemas microprocesadores y resulta de gran utilidad para trabajar con listas de datos y es imprescindible para el trabajo interno del microprocesador en las subrutinas e interrupciones.
Algunos microprocesadores pueden tener el Stack en su interior, representando un sistema muy rápido pero de tamaño limitado, la mayoría de microprocesadores disponen el stack en la memoria externa, hecho que proporciona una gran capacidad de almacenamiento y el control de su ubicación, aunque el acceso sea más lento.
Funcionamiento de la pila
- Todo μP cuenta con una memoria de almacenamiento temporal denominada Pila.
- Es una estructura de datos de tipo secuencial (LIFO).
- Existen dos operaciones básicas posibles: apilar y desapilar.
- Solo se tiene acceso a la parte superior de la pila (último objeto apilado).
- Es necesaria para el funcionamiento de las instrucciones de llamado y vuelta de subrutinas (CALL y RET), las instrucciones PUSH y POP, entre otras.
- En algunos μP la pila esta formada por un conjunto de registros internos (Ej. PICs).
- En otros casos (Intel 80XX, Z80) la pila utiliza memoria de datos (RAM) para la pila junto a un registro específico en el μP llamado stack pointer (puntero de pila).