Sunteți pe pagina 1din 6

INSTITUTO DE ESTUDIOS PROFECIONALES

DEL GOLFO DE MEXICO CAMPUS SALINA


CRUZ

DOCENTE; Ing. Flor Nashely Pesa Ojeda


MATERIA: Programacin De Sistema
ALUMNO; Samuel Chiu Ramrez
SEMESTRE; 4 SEMESTRE
GRUPO: 401
TEMA: Macro procesadores
LUGAR Y FECHA:
Salina Cruz Oaxaca A 6/10/15

DEFINICIN

Una macro instruccin (a veces abreviada macro) es simplemente una


notacin convencional para el programador. Una macro representa un
grupo de instrucciones en el lenguaje de programacin fuente.
Los macro procesadores reemplazan cada macro instruccin con el
correspondiente grupo de instrucciones en el programa fuente. Esto
es comnmente llamado expandir la macro. Estas macro
instrucciones permiten escribir al programador versiones cortas de un
programa, y dejar que los detalles mecnicos sean manejados por el

CARACTERSTIC
AS

Una macroinstruccin. No es mas que una conveniencia notaciones


para el programador. Un macro represente un grupo de proposiciones
utilizadas comnmente en el lenguaje de programacin fuente, para
el caso, ensamblador.
El procesador de la macro reemplaza cada macroinstruccin con el
grupo correspondiente de proposiciones del lenguaje fuente, lo que se
denomina expansin de macro. Por todo lo anterior, las
macroinstrucciones permiten al programador escribir una versin
abreviada de un programa, dejando que el procesador de macro
maneje los detalles internos. Las funciones bsicas de un procesador
de macro son:
Sustitucin de lneas de cdigo por una referencia simblica.
Calcular la direccin efectiva de las referencias.
Expansin de las referencias en un archivo intermedio.

PROCESAMIEN
TO
Para utilizar una macro primero hay que declararla. En la
declaracin se establece el nombre que se le dar a la macro y
el conjunto de instrucciones que representara.
El programador escribir el nombre de la macro en cada uno de
los lugares donde se requiera la aplicacin de las aplicaciones
por ella representadas.
La declaracin se realiza una sola vez, pero la utilizacin o
invocacin a la macro (macro llamada) puede hacerse cuantas
veces sea necesario.
La utilizacin de macro posibilita la reduccin del tamao del
cdigo fuente, aunque el cdigo objeto tiende a hacer mayor m
que cuando se utilizan funciones.
Es tan comn el empleo de macroinstrucciones se les considera
como una extensin de los lenguajes. De manera similar se
considera al procesador macroinstrucciones o macroprocesador
como u extensin del ensamblador o compilador utilizado.
El macroprocesador se encarga, en una primer pasada, de
registrar todas las declaraciones de macros y de rastrear el
programa fuente para detectar todas las macrollamadas. En
cada lugar
donde encuentre una
macrollamadas, el

DISEO
El macroprocesador elabora 2 tablas para el manejo de macro:

Una tabla de macronombre que consiste de los nombres de las macro y un ndice que le
permite localizar la definicin de la macro en otra tabla llamada tabla de
macrodefiniciones
Como su nombre lo indica, la tabla de macrodefiniciones contiene las definiciones de
todas las macros a utilizar el programa.
En ocasiones es conveniente agrupar macros, de acuerdo a las tareas que realizan, y
almacenarlas en archivos que se constituyen en bibliotecas de macros. De esta manera,
cuando se requiera la utilizacin de alguna macro en particular, se incluye en el programa
fuente e archivo de la biblioteca de macros correspondiente.

IMPLEMENTACI
N

El procesador de macros, como puede verse, no intenta ningn anlisis


ni traduccin a cdigo objeto del programa fuente, ms bien parece que
el procesador hace que aumente el tamao de ste. Esto es un
elemento clave para el programador, pues el uso indiscriminado de
macros puede hacer que el tamao del cdigo objeto sea enorme y
poco prctico, al contrario de las llamadas a subrutinas. Claro que
tambin se paga un precio alto por el empleo de las llamadas, pues se
pierde tiempo importante en la gestin de la pila, donde usualmente se
pasan los parmetros. El macro procesador requiere tres estructuras de
datos para su exitosa operacin.

La tabla de nombres de macros (TABNOM).

La tabla de cdigo de macros (TABDEF).

La tabla de argumentos (TABARG).