DIRECTIVAS DE CONTROL DE ENSAMBLADOR |
Estas directiva proporcionan control sobre las operaciones de ensamblador. |
Estas directivas son las siguientes: $, /*comment*/, //, CASEOFF, CASEON y RADIX. |
Sintaxis |
$ filename |
/*comment*/ |
// comment |
CASEOFF |
CASEON |
RADIX expr |
Parámetros |
Descripción |
Utilice $ para insertar el contenido de un archivo en el archivo fuente en un punto específico. |
Utilice /* ... */ para comentar secciones del listado de ensamblador. |
Utilice // para marcar el resto de la línea como comentario. |
Utilice RADIX para poner a set la base por defecto para el uso en conversiones de constantes de fuente ASCII al formato binario interno. |
Utilice CASEON o CASEOFF para activar o desactivar la sensibilidad para los símbolos definidos por el usuario. Por defecto está desactivado. |
Ejemplos |
Inclusión de un archivo fuente El siguiente ejemplo uitliza $ para incluir un archivo que define macros en un archivo fuente. Por ejemplo, las siguientes macros pueden definirse en "mymacros.s90". |
xch MACRO a, b |
PUSH a |
MOV a, b |
POP b |
ENDM |
Las definiciones de las macros pueden ser incluidas utilizando la directiva $, como en el siguiente ejemplo. |
NAME include |
; standard macro definitions |
$mymacros.s90 |
; program |
main: |
xch R16, R17 |
RET |
END main |
Definición de comentarios El siguiente ejemplo muestra como /* ... */ puede utilizarse como un comentario multi-línea. |
/* |
Program to read serial imput |
Version 2: 19.9.99 |
Author: mjp |
*/ |
Cambio de base Para poner la base por defecto a 16: |
RADIX D16 |
LDI R16, 12 |
El siguiente argumento que se interpretará será H12. |
Control de sensibilidad Cuando CASEOFF está a set, label y LABEL son idénticos en el siguiente ejemplo: |
label NOP ; guardado como "LABEL" |
JMP LABEL |
Si se pone como se muestra a continuación se generará un error de duplicado de etiqueta. |
label NOP |
LABEL NOP ; Error, "LABEL" ya está definido |
END |