Ensamblador

Páginas: 30 (7469 palabras) Publicado: 30 de agosto de 2010
UNIDAD III MODULARIZACIÓN

¿CUANDO ES ÚTIL LA MODULARIZACIÓN?
Este enfoque de segmentación o modularización es útil en dos casos:
Cuando existe un grupo de instrucciones o una tarea especifica que deba ejecutarse en más de una ocasión.
Cuando un problema es complejo o extenso, la solución se “divide” o “segmenta” en módulos que ejecutan “partes” o tareas especificas. Dicha solución seorganiza de forma similar a como lo hacen las empresas cuando se estructuran con base en las funciones para realizar sus actividades; en otras palabras, el trabajo se divide en partes que sean fácilmente manejables y que, lógicamente, puedan ser separadas; así, cada una de estas partes se dedica a ejecutar una determinada tarea, lo que redundara en una mayor concentración, entendimiento y capacidadde solución a la hora de diseñar la lógica de cada una de estas. Dichas partes son módulos o segmentos del algoritmo, algunos de ellos son los módulos directivos o de control, que son los que se encargaran de distribuir el trabajo de los demás módulos. De esta manera se puede diseñar un organigrama que indique la estructura general de un algoritmo.
PROCESO DE MODULARIZACION.
El proceso desegmentación consiste en hacer una abstracción del problema, del cual se tiene inicialmente un panorama general. Enseguida, se procede a “desmenuzar” o “dividir” el problema en partes pequeñas y simples, como se muestra: Se forma un primer modulo enunciando el problema en términos de la solución a éste.
MACROS
Definición de una macro
Una de las principales desventajas de la programación enlenguaje ensamblador es la repetición constante de ciertos grupos de instrucciones. Por ejemplo el siguiente conjunto de instrucciones nos permite imprimir una variable de tipo cadena en la pantalla:
Lea DX, Cadena; Direccionar la cadena
Mov AH, 09h; Usar la función 09h para imprimir cadenas
Int 21h; llamada a la interrupción 21h del DOS
Si necesitamos que en nuestro programa se muestren mensajesconstantemente, es obvio que debemos duplicar este conjunto de instrucciones por cada mensaje que se desea enviar a pantalla.
El principal problema que esto nos ocasiona es que el tamaño de nuestro programa crece considerablemente, y mientras más grande sea el programa, más difícil será encontrar la causa de algún error cuando éste ocurra.
La mejor solución en estos casos es el uso de las MACROS.Una macro es un conjunto de instrucciones que se agrupan bajo un nombre descriptivo (macroinstrucción) y que sólo es necesario declarar una vez (macrodefinición).
Una vez que la macro ha sido declarada, sólo es necesario indicar su nombre en el cuerpo del programa y el ensamblador se encargara de reemplazar la macroinstrucción por las instrucciones de la macro (expansión de la macro).
El formatogeneral de una macro es el siguiente:

.MACRO Nombre [(parametro1, parametro2, etc)]
INSTRUCCIONES
ENDM

Nuevamente, lo que se encuentra entre paréntesis cuadrados es opcional.
De acuerdo con esto, la macro para imprimir cadenas quedaría de la siguiente forma:
.MACRO Imprime_Cad (Cadena)
Lea DX, Cadena
Mov Ah, 09h
Int 21h
ENDM

Parámetros y etiquetas
Dentro de las propiedades másimportantes de las macros se deben destacar la posibilidad de utilizar parámetros y etiquetas. Los parámetros permiten que una misma macro pueda ser usada bajo diferentes condiciones, por ejemplo, se puede crear una macro para posicionar el cursor en diferentes coordenadas de la pantalla e indicar sus coordenadas por medio de parámetros.
La siguiente macro nos muestra esta propiedad:

; Estamacro posiciona el cursor en las coordenadas que se le indican como
; Parámetros. Es el equivalente al GotoXY de Pascal.
.MACRO gotoxy (x, y)
xor bh, bh ;Seleccionar página cero de video
mov dl, x ;Columna
mov dh, y ;Renglón
mov ah,02h ;Función 02h para posicionar cursor
int 10h ;llamada a la int 10h del BIOS
ENDM

También existen situaciones en las que los parámetros no son necesarios,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • ensamble
  • Ensamblador
  • Ensambles
  • Ensamblado
  • ENSAMBLE
  • Ensamblado
  • Ensamblador
  • Ensamblador

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS