Una macro es un grupo de instrucciones repetitivas en un programa que se codifican solouna vez y pueden
utilizarse cuantas veces sea necesario. La principal diferencia entre unamacro y un procedimiento es que en
la macro se hace posible el paso de parámetros y en el procedimiento no (esto es aplicable solo para el
TASM, hay otros lenguajes de programación que si lo permiten). Al momento de ejecutarse la macro cada
parámetro essustituido por el nombre o valor especificado al momento de llamarla.
internas
Una macro es un conjunto de instrucciones que se pueden
mandar a llamar desde cualquier parte del programa. Para definir
una macro, se utiliza la directiva MACRO. El formato deesta
directiva es : (nombre_de_macro) MACRO
(lista_parámetros).Una macro interna esaquella que se declara y
se llaman dentro del mismo programa.
Una macro consta de tres partes esenciales:
c) FIN: Debe incluir la sentencia ENDM.
b) CUERPO: Contiene el código real que será insertado en
cualquier programa que llame alnombre de la macro.
a) CABECERA: Contiene el nombre de la macro la pseudo-op MACRO y
opcionalmente,variables ficticias que serán pasadas desde la macro.
Externas
Una de las facilidades que ofrece el uso de las macros es la creación de bibliotecas, lascuales son grupos
de macros que pueden ser incluidas en un programa desde un archivodiferente. La creación de estas
bibliotecas es muy sencilla, únicamente tenemos que escribir un archivo con todas las macros que se
necesitarán y guardarlo como archivo de texto.
Procedimientos.
Un procedimiento es un conjunto de instrucciones que tienen la finalidad de ejecutar
unatarea especifica dentro de un programa. Los procedimientos son muy similares a
lasmacros.
Un procedimiento es un conjunto de instrucciones a los que
podemos dirigir el flujo denuestro programa, y una vez terminada la
ejecución de dichas instrucciones se devuelve elcontrol a la
siguiente línea a procesar del código que mando llamar al
procedimiento.
Un procedimiento se declara una sola vez en el código fuente y
cuando el programa seensambla y ejecuta, el procedimiento se
coloca en memoria para que pueda ser utilizado por el programa.
Los procedimientos nos ayudan a crear programas legibles y fáciles
demodificar. Sintaxis de un procedimiento Existen dos tipos de
procedimientos, losintrasegmentos, que se encuentran en el mismo
segmento de instrucciones y losintersegmentos que pueden ser
almacenados en diferentes segmentos de memoria
Las partes que componen a un
procedimiento son:• Declaración
del procedimiento• código del
procedimiento• Directiva de
regreso• Terminación del
procedimiento
A continuaciónse presentan los pasos necesarios
para ejecutar un procedimiento:1.- Se encuentra la
llamada Call2.- El microprocesador almacena en la
Pila el contenido del IP3.- Se coloca en el IP el valor del
desplazamiento correspondiente al Procedimiento4.- El
microprocesador ejecuta las instrucciones del
procedimiento5.- El procedimiento termina cuando se
encuentra la instrucción Ret6.- Se saca de la pila el
valor original del IP y se continua el flujo del programa
Internos
Los procedimientos internos son aquellos que se
declaran y se llaman dentro del mismo programa,
también son llamados procedimientos locales. El
listado anterior muestra laforma de utilizar
procedimientos internos.
externos
se declaran en módulos o programas separados al programa donde el
procedimiento es llamado, en otras palabras, lallamada al procedimiento
se encuentra en un programa y el procedimiento en otro.Para poder
utilizar procedimientos externos, es necesario que sean declarados
como públicos en el programa donde se encuentran y que sean
llamados como externos en el programa donde serán usados. Cuenta
con tres directivas de ensamble: .PUBLIC paradeclarar los
procedimientos como públicos, .EXTERN para indicar que el
procedimientoque se va a usar está fuera del programa y .INCLUDE
para enlazar el programa que contiene los procedimientos con el
programa que los llama.