Una macro es un nombre simbólico que reemplaza varios comandos del lenguaje ensamblador .
Las macros pueden incluir instrucciones, datos , etiquetas (incluidas las locales), directivas de ensamblador (incluidas las condicionales), contener llamadas a otras macros. La mayoría de los ensambladores modernos admiten pasar parámetros de entrada a macros.
Dependiendo del lenguaje ensamblador utilizado , la sintaxis para declarar, llamar macros y pasarles parámetros puede variar significativamente.
Las macros se "expanden" en una secuencia de código y datos durante el ensamblaje (traducción del programa).
Antes de poder utilizar una macro, debe declararse. A menudo, las macros estándar ya están listas para usar en archivos de inclusión estándar, en cuyo caso, para usarlas en el programa, solo necesita incluir el archivo deseado.
El uso de macros tiene una serie de ventajas:
Al mismo tiempo, el uso de macros puede tener algunas desventajas:
Una declaración de macro en el dialecto del ensamblador FASM puede verse así:
macro stos0 { xor al , al stosb }Al insertar más una macro en el texto de la línea
stos0el traductor lo reemplazará con la secuencia
xor al , al stosb