LE_APENDICE_D
Páginas: 19 (4574 palabras)
Publicado: 26 de octubre de 2015
________________________________________________________________________________________
APÉNDICE D
Directivas, Operadores e Instrucciones del Lenguaje
Ensamblador
DIRECTIVAS (PSEUDO-OPERACIONES)
•
Las directivas son comandos que afectan al ensamblador, y no al
microprocesador, por lo que no generan código objeto. Se utilizan para definir
segmentos, símbolos,procedimientos o subrutinas, reservar memoria, etc.
Directiva EQU (EQUivalence)
Sintaxis:
•
nombre
EQU
expresión
La directiva EQU asigna un nombre simbólico al valor de una expresión. El
compilador, cuando encuentre en el código dicho nombre simbólico, lo
sustituirá por el valor de la expresión. La expresión indicada puede ser:
1. Una constante numérica.
2. Una referencia de dirección(cualquier modo de
direccionamiento).
3. Cualquier combinación de símbolos y operaciones que
generen un valor numérico.
4. Otro nombre simbólico.
Ejemplos:
COLUMNAS
FILAS
PANTALLA
MOVER
EDICION
DIRECCION
EQU
EQU
EQU
EQU
EQU
EQU
80
25
FILAS*COLUMNAS
MOV
"PULSAR TECLA"
[SI+BX]
Directiva DB (Define Byte)
Sintaxis:
•
•
[nom_variable]
EQU
expresión
La directiva DB reserva memoria para datos de tipobyte (8 bits), o para una
variable de este tipo, inicializando o no dicho byte y los posteriores.
El nombre de la variable es opcional, y se asigna dicho nombre para el primer
byte (recordar que el lenguaje máquina no entiende de variables, si no de
direcciones de memoria. Una variable es una etiqueta o referencia para el
compilador, el cual sustituye cada referencia a esta variable por la direcciónde
memoria correspondiente).
51
Prof. Juan Juárez Fuentes
APUNTES DE LENGUAJE ENSAMBLADOR
________________________________________________________________________________________
•
La
expresión
es
el
valor
inicial
de
la
variable,
y
puede
ser:
1. Una constante numérica positiva o negativa con rango de byte
(-128 a +127, ó de 0 a 255).
2. Una cadena de caracteres delimitada porcomillas simples o
dobles.
3. Un signo interrogante (?), que indica valor indefinido. Sólo
reserva espacio en la memoria.
4. n DUP(expresión), que repite 'n' veces la 'expresión'.
Ejemplos:
•
VALOR
TEXTO
CALCULO
RESERVA
NODEFIN
DB
DB
DB
DB
DB
111
"HOLA, SOY UN TEXTO"
15*2
15 DUP(?)
?
De modo similar a DB, se pueden definir otros tipos de variables en lenguaje
ensamblador. Lo único que varía esel tamaño de los datos y el nombre de la
directiva:
DB
DW
DD
DQ
DT
(Define
(Define
(Define
(Define
(Define
Byte)
Word)
Doubleword)
Quadword)
Terabyte)
Reservar datos de tamaño byte (8 bits)
Reservar datos de tipo palabra (16 bits)
Reservar datos de tipo doble palabra (32 bits)
Reservar datos de tipo quádruple palabra (64 bits)
Reservar datos de tipo terabyte (80 bits o 10 bytes)
DirectivaSEGMENT
Sintaxis:
nombre
...
...
...
nombre
•
•
•
SEGMENT [alineamiento] [combinación] ['clase']
ENDS
Las directivas SEGMENT y ENDS marcan el principio y el final del segmento
cuyo nombre se especifica.
Un segmento es un bloque de sentencias que puede contener definiciones de
variables y/o instrucciones.
El parámetro 'alineamiento' es opcional, e indica cómo se alineará el segmento
en la memoria, ysus posibles valores son los siguientes:
¾ BYTE : Ninguno. El segmento puede empezar en cualquier posición.
¾ WORD : El segmento empieza en una frontera de palabra. La dirección de
comienzo es múltiplo de 2.
¾ PARA : El segmento empieza en una frontera de párrafo. La dirección de
comienzo es múltiplo de 16. Es el valor por defecto.
¾ PAGE : El segmento empieza en una frontera de página. Ladirección de
comienzo es múltiplo de 256.
52
Prof. Juan Juárez Fuentes
APUNTES DE LENGUAJE ENSAMBLADOR
________________________________________________________________________________________
•
•
El parámetro 'combinación' es también opcional, y se utiliza para combinar
segmentos que tengan el mismo nombre ('nombre' se refiere al indicado en el
parámetro 'clase', no el nombre del propio...
Leer documento completo
Regístrate para leer el documento completo.