|
INTRODUCCIÓN AL AVR IAR
ASSEMBLER |
|
Este apartado describe el formato del código fuente para el "AVR
IAR Assembler". También proporciona consejos para la programación en lenguaje
ensamblador y describe los símbolos y expresiones que se deben utilizar. |
|
|
Formato de
fuente |
|
El formato de una línea fuente en ensamblador es de la siguiente
forma: |
|
[etiqueta [:] ] [operación] [operandos] [; comentario] |
|
Etiqueta = Una etiqueta que se asigna el valor y tipo del
contador de posición de programa actual (PLC). Los dos puntos (:) son opcionales si la
etiqueta empieza en la primera columna.
Operación = Una instrucción o directiva en ensamblador. No
debe empezar en la primera columna.
Operando = Una instrucción en ensamblador puede tener cero, uno
o dos operandos.
|
Las directivas de definición de datos, DB y DC8 por
ejemplo, pueden tener cualquier número de operandos. Otras directivas de ensamblador
pueden tener uno, dos o tres operandos separados por comas. |
Comentario = Precedido por un ;
|
Los campos pueden separarse por espacios o por
tabulador. Una línea de código no debe pasar de 2047 caracteres. |
|
|
|
Expresiones en
ensamblador |
|
Las expresiones pueden consistir en operandos y operadores. El
ensamblador admite un amplio rango de expresiones, incluidas las operaciones aritméticas
y lógicas. Todos los operadores utilizan enteros en complemento a dos de 32 bit y la
verificación del rango sólo se realiza cuando un valor se utiliza para generar código. |
|
Los siguientes operandos son válidos en una expresión: |
|
- Etiquetas y símbolos definidos por el usuario. |
- Constantes, excluidas las constantes de punto flotante. |
- $, el símbolo del contador de posición de programa (PLC). |
|
TRUE y FALSE |
|
En las expresiones un cero es considerado como FALSE y un valor
diferente a cero es considerado como TRUE.
Las expresiones condicionales devuelven un valor 0 para FALSE y un 1
para TRUE. |
|
Símbolos |
|
Los símbolos definidos por el usuario pueden tener hasta 255
caracteres de longitud. Los símbolos deben empezar por letra, "a-z" o
"A-Z", "?" (interrogación) o "_" . Los símbolos pueden
incluir dígitos "0-9" y "$". |
|
Etiquetas |
|
A los símbolos usados para posiciones de memoria se les llama
etiquetas. |
|
Constantes enteras |
|
Como IAR utiliza una aritmética interna de complemento a dos de 32
bit, los enteros tienen un rango de 2147483648 a 2147483647.
Las constantes se escriben como una secuencia de dígitos con un signo
opcional para indicar que es un número negativo. No se permiten ni comas ni
decimales.
Se permiten las siguientes representaciones de tipos de números:
- Binario 1010b, b1010
- Octal 1234q, q1234
- Decimal 1234, -1, d1234
- Hexadecimal 0FFFFh, 0xFFFF, hFFFF
|
|
Constantes de caracteres ASCII |
|
Las constantes ASCII pueden consistir en cero o más caracteres
enmarcados por comillas simples o dobles. Sólo los caracteres imprimibles y el espacio
pueden usarse en las cadenas ASCII. Si se desea incluir el carácter comilla, deben
utilizarse dos comillas de forma consecutiva. |
|
Formato
Valor |
|
- ABCD
ABCD (4 caracteres)
- "ABCD"
ABCD\0 (5 caracteres, el último ASCII nulo)
- AB
AB
- A
A
-
-
Cadena vacía (ningún valor)
- ""
Cadena vacía (un caracter ASCII nulo)
- \
- \\
\
|
|