2.3: Directivas de ensamblador
- Page ID
- 80642
Las directivas de ensamblador son instrucciones al ensamblador para tomar alguna acción o cambiar una configuración. Las directivas de ensamblador no representan instrucciones y no se traducen al código de máquina.
Para este ensamblador, todas las directivas comienzan con un “.” o “#” (el comentario es un #), y la directiva debe existir en una línea separada de cualquier otra directiva de ensamblador o instrucción de ensamblador. Hay 4 directivas de ensamblador y la etiqueta de comentario.
- .text — La directiva.text le dice al ensamblador que la información que sigue es el texto del programa (instrucciones de montaje), y el código de máquina traducido debe escribirse en el segmento de texto de la memoria.
- .data — La directiva.data le dice al ensamblador que la información que sigue son datos del programa. La información que sigue a una instrucción .data será valores de datos, y se almacenará en el segmento de datos.
- .label — Una etiqueta es una dirección en memoria que corresponde a una instrucción o un valor de datos. Es solo una comodidad para que el programador pueda hacer referencia a una dirección por un nombre. Se utilizará de la siguiente manera:
.nombre de la etiqueta
La etiqueta es una etiqueta a la que se puede hacer referencia en lugar de una dirección en cualquier instrucción de ensamblaje que pueda tomar una etiqueta/dirección. Las etiquetas y direcciones se pueden usar indistintamente.
- .number — La directiva number le dice al ensamblador que reserve 2 bytes de memoria para un valor de datos e inicialice la memoria al valor dado. A menudo se utilizará con la directiva.label para establecer una etiqueta en un valor de memoria de 2 bytes, e inicializar el valor, como se muestra en el siguiente fragmento de código.
.label var1 .number 5
Esta sentencia asigna espacio para la variable
var1
, y asigna a ese espacio en la memoria el valor 5. Los datos para esta CPU solo funcionarán con números enteros de 2 bytes (16 bits) por lo que se pueden usar valores discretos de -32768.. 32767 (inclusive). Todos los valores de datos están en decimales; el ensamblador no reconocerá los valores hexagonales. - # - el # (hashtag) se utiliza para especificar un comentario. Cualquier cosa en una línea que comience con un “#” es una línea de comentario e ignorada por el ensamblador.