miércoles, 19 de abril de 2017

Unidad 3: Modularizacion

Introduccion

La programación modular es uno de los métodos de diseño mas flexibles y poderosos para el
mejoramiento de Ia productividad de un programa.Usando Ia programación modular el problema
se divide en módulos, donde cada una de los cuales ejecuta una única actividad o tarea y se
codifican independientemente de otros modulo.
Cada uno de estos módulos se analiza, se codifica y se prueba de preferencia por separado.
al trabajar con lenguaje ensamblador, Ia necesidad de Ia estructura es, si cabe, aún es más vital,
puesto que cualquier tarea, por sencilla que parezca, puede requerir una gran lista de sentencias
ejecutables.
Todo programa contiene un módulo denominado programa principal que controla todo Ib que
sucede; si se transfiere el control a un submódul, este ejecuta su función y una vez que Ia termina,
regresa el control al módulo desde donde fue llamado. En mucho casos es el modulo principal.
Si Ia tarea asignada a cada submódulo es demasiado compleja, éste deberá descomponerse en
otros módulos más pequeños. Este proceso de descomposición continua hasta que cada módulo
tenga una tarea especifica que ejecutar. Esta tarea puede ser:
A) Entrada
B) Salida
C) Manipulación de datos
D) Control, de otros módulos
E) Alguna combinación de los anteriores
En el lenguaje ENSAMBLADOR esta técnica se puede llevar a cabo mediante MACROS Y


3.1 PROCEDIMIENTOS.

Es una colección de instrucciones que realizan una tarea especifica. Dependiendo
de su extensión y complejidad, un programa puede contener uno, algunos o
inclusive cientos de procedimientos. Para emplear un procedimiento en un
programa se requiere definir y llamarlo. Al definir un procedimiento escribimos
Ias instrucciones que contiene. Al llamar al procedimiento transferimos el flujo al
procedimiento para que sus instrucciones se ejecuten. Se define como:

PROC nomProc
proposicion
[proposicion]
...
ENDP [nomProc]
La llamada a un procedimiento tiene Ia siguiente forma:
CALL nomProc
Pra regresar de un procedimiento se utiliza
RET

Un buen procedimiento debe:

. Hacer solo una tarea.
. Ser tan pequeño como sea posible y tan largo como sea necesario.
. Contener un comentario con su propósito, datos de entrada y salida.
. Entenderse por si solo.
. Funcionar como lo haría una instrucción del microprocesador.
. No usar variables globales ni para recibir datos, ni regresar un resultado, ni almacenar
temporalmente resultados intermedios.

3.2 Macros.
Es un conjunto de instrucciones asociadas a un identificador: el nombre de Ia
macro.
Este conjunto de instrucciones es invocado como una sola instrucción o
macroinstrucciôn. Para emplear una macro en un programa debemos de definir Ia
macro e invocar Ia macro.
La definición de una macro establece el nombre al que se le asocia Ia macro, el
número y nombre de sus parámetros formales y qué instrucciones contiene Ia
macroinstrucción. La sintaxis de Ia definición de una macro es Ia siguiente:

MACRO nombMacro [parForm[, parForm]...]
proposición
[proposición]
ENDM [nombMacroj

Aunque Ia definición de una macro puede ir en cualquier parte de un programa, el
lugar más recomendable para su localización es al principio de un archivo, antes
de los segmentos de datos y de código.
AI encontrar una invocación de una macro, el macro-ensamblador substituye Ia linea
con Ia invocación por Ias proposiciones que contiene Ia definición de Ia macro.
Este proceso de substitución se conoce como expansión de Ia macro. La sintaxis
de Ia invocación de Ia macro es similar a cualquier instrucción:

nomMacro [parReal[, parReal]...]

Donde cada parReal es conocido como un parámetro real de Ia macro. AI
expandirse Ia macro cada una de Ias ocurrencias de un parámetro formal en Ia
definición de Ia macro se substituye por su correspondiente parámetro real.

0 comentarios:

Publicar un comentario