Está en la página 1de 5

Sesión 6:

Explorando la Memoria de Arduino Zero

1
Memoria
Mapa de memoria de Arduino Zero:

2
La pila
Memoria dinámica tipo LIFO (Last In First Out).
Ocupa una zona de la memoria SRAM del Arduino Zero.
Doble función: almacenamiento de variables automáticas y paso de argumentos en
llamadas a procedimientos.
Se gestiona con la ayuda del puntero de pila (Stack Pointer, SP).
En el procesador Cortex M0+ la pila crece hacia direcciones inferiores de memoria
a partir del final de la memoria SRAM (0x20007FFF) y emplea predecremento.

3
ABI: Application Binary Interface
Consiste en una colección de reglas que deben seguir los compiladores
encargados de generar código objeto o binario para una arquitectura concreta.
Detallan algunos temas relacionados con la memoria como:
• Endianness: manera en que se guardan los bytes de una palabra.
• El alineamiento de variables.
• La llamada a procedimientos (paso de argumentos y resultado).
En el caso del Arduino Zero se empleará el ABI para ARM y C/C++: Embedded
ABI o EABI.

4
Sesión 6
En esta sesión de prácticas seguiremos las Sesión 3 del Manual de Prácticas de
Estructura de Computadores (pág. 63), en la que se analiza:
• La ubicación de la pila en Arduino Zero.
• El alineamiento de variables según el EABI.

También podría gustarte