Estructura ensamblador

3
Estructura y Tecnología de Computadores I Estructura de un lenguaje ensamblador -1- ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR 1. Sintaxis de un lenguaje ensamblador 2. Campos de una instrucción en ensamblador 3. Pseudoinstrucciones 1. SINTAXIS DE UN LENGUAJE ENSAMBLADOR - Estructura de una línea: INSTRUCCIÓN EN ENSAMBLADOR ETIQUETA NEMOTÉCNICO OPERANDOS COMENTARIOS INSTRUCCIÓN EN LENGUAJE MÁQUINA DIRECCIÓN CÓDIGO DE OPERACIÓN DIRECCIÓN DE LOS OPERANDOS - Características de los ensambladores modernos: Formato libre. Delimitadores de campo. - Tipos de líneas en un programa ensamblador Instrucciones. Ejecutables por el computador. Pseudoinstrucciones Indicaciones o directivos para el traductor. No ejecutables por el computador.

Transcript of Estructura ensamblador

Page 1: Estructura ensamblador

Estructura y Tecnología de Computadores IEstructura de un lenguaje ensamblador -1-

ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR

1. Sintaxis de un lenguaje ensamblador2. Campos de una instrucción en ensamblador3. Pseudoinstrucciones

1. SINTAXIS DE UN LENGUAJE ENSAMBLADOR

- Estructura de una línea:

INSTRUCCIÓN EN ENSAMBLADORETIQUETA NEMOTÉCNICO OPERANDOS COMENTARIOS

INSTRUCCIÓN EN LENGUAJE MÁQUINA

DIRECCIÓN CÓDIGO DEOPERACIÓN

DIRECCIÓN DELOS OPERANDOS

- Características de los ensambladores modernos:• Formato libre.• Delimitadores de campo.

- Tipos de líneas en un programa ensamblador• Instrucciones.

∗ Ejecutables por el computador.• Pseudoinstrucciones

∗ Indicaciones o directivos para el traductor.∗ No ejecutables por el computador.

Page 2: Estructura ensamblador

Estructura y Tecnología de Computadores IEstructura de un lenguaje ensamblador -2-

2. CAMPOS DE UNA INSTRUCCIÓN EN ENSAMBLADOR

Etiqueta

- Identifica la línea en la cual se encuentra.

- Se asocia a la dirección en la cual se encuentra la instrucción o el dato, o a la constantedefinida.

- Recomendaciones• Utilizar sólo letras o números (comenzar por una letra).• Colocar la primera letra de la etiqueta en el primer carácter de la línea.

Nemotécnico

- Identifica:• Un código de operación del lenguaje• Una pseudoinstrucción

Campo de operandos

- Identifica los operandos que intervienen en la instrucción o pseudoinstrucción.

- Tipos de operandos:• Constantes

∗ Numéricas: decimales(D), binarias (%,B), octales (O,@,Q,C),hexadecimales (H,$).

∗ Alfabéticas: entre comillas.• Símbolos

∗ Predefinidos: registros, contador de dirección de ensamblado.∗ Implícitos: etiquetas de dirección.∗ Explícitos: mediante pseudoinstrucciones.

• Expresiones

Comentarios

- Indicaciones para una mejor comprensión del programa ensamblador.

- Pueden comenzar con el símbolo “;”.

Page 3: Estructura ensamblador

Estructura y Tecnología de Computadores IEstructura de un lenguaje ensamblador -3-

3. PSEUDOINSTRUCCIONES

- Manipulación del contador de dirección de ensamblado• Indica la dirección a partir de la cual se localizan los datos o instrucciones a

continuación.• Ej: ORG operando

- Definición de símbolos• Da un valor a un símbolo.• Ej: ETIQ EQU expresión

- Reserva de espacio en memoria (definición de variables)• Con valor inicial: reserva espacio para los datos indicados en la lista de

expresiones, y les pone los valores iniciales indicados (tamaño de cada dato:S=B,W ó L).

∗ Ej: ETIQ DC.S expr1,expr2,…,exprN• Sin valor inicial: reserva espacio para tantas variables como se indica en la

expresión (tamaño de cada dato: S=B,W ó L).∗ Ej: ETIQ DS.S expresión

- Control de traducción• Marca el final del programa fuente• Ej: END

- Almacenamiento en posición par• Hace que el siguiente objeto se almacene a partir de la próxima posición de

memoria con dirección par.• Ej: EVEN

- Enlace entre programas• Indicación de símbolos externos: EXT, REF, XREF, EXTERNAL.• Indicación de símbolos exportables: ENT, DEF, XDEF, PUBLIC.

- Acciones de ensamblado condicional• Incluyen en el ensamblado o no grupos de instrucciones del programa fuente.• Ej: IF … ELSE … ENDIF

- Ejecución de listados e informes• Título para la cabeceras: TITLE, NAME.• Salto de página: PAGE, SPAGE.• Impresión u omisión de parte del programa fuente: LIST, NOLIST.• Inclusión de la tabla de símbolos: SYMBOL, TABLE.