MODULARIZACIÓN ÍNDICE MODULARIZACIÓN ................................................................................................ 2 3.1 PROCEDIMIENTOS .......................................................................................... 3 PROCEDIMIENTOS EXTERNOS ........................................................................ 4 PROCEDIMIENTOS INTERNOS ......................................................................... 5 3.2 MACROS........................................................................................................... 6 CONCLUSIONES.................................................................................................... 7 BIBLIOGRAFÍA ....................................................................................................... 8 MODULARIZACIÓN La palabra modularización proviene de módulo, cuya definición textual es: «Elemento con función propia concebido para poder ser agrupado de distintas maneras con otros elementos constituyendo una unidad mayor.» La modularización es el proceso por el cual seleccionamos y agrupamos instrucciones de programación que cumplen una función específica. Crear módulos es importante debido a lo siguiente: Supongamos que tenemos un problema, tan complejo como se quiera y cuya solución consiste en ejecutar tantas instrucciones de programación como se necesite. Utilizando módulos de programación, podemos construir una solución que se pueda ejecutar empleando una sola instrucción, esta instrucción lo que hará es ir al contenido del módulo, ejecutar cada una de sus instrucciones y al finalizar el programa retornará al punto donde se hizo la llamada al módulo. La ventaja de esto es que el módulo lo creamos una única vez y luego lo podemos reutilizar cuantas veces sea necesario y desde cualquier parte del código, además ya no necesitamos pensar en el funcionamiento interno del módulo, lo utilizamos como un conjunto que sabemos que va a realizar determinada función. En otras palabras, aumentamos el grado de abstracción de nuestro código. 2 3.1 PROCEDIMIENTOS Un procedimiento es un conjunto de instrucciones que tienen la finalidad de ejecutar una tarea específica dentro de un programa. Los procedimientos son muy similares a las macros. Un procedimiento es un conjunto de instrucciones a los que podemos dirigir el fujo de nuestro programa, y una vez terminada la ejecución de dichas instrucciones se devuelve el control 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 se ensambla 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 de modificar. Sintaxis de un procedimiento Existen dos tipos de procedimientos, los intrasegmentos, que se encuentran en el mismo segmento de instrucciones y los intersegmentos que pueden ser almacenados en diferentes segmentos de memoria. Las partes que componen a un procedimiento son: • Declaración del procedimiento Los procedimientos en ensamblador se declaran mediante la sintaxis nombre procedimiento Proc [far/near] dependiendo de si es un procedimiento cercano o lejano. • Código del procedimiento Dentro del procedimiento se escribe el código de ensamblador que se quiere utilizar. • Directiva de regreso Antes del final de un procedimiento en ensamblador se escribe la directiva de regreso ret,, la cual regresa el control a la línea desde donde fue llamado el procedimiento. • Terminación del procedimiento Para terminar un procedimiento se escribe el nombre del procedimiento seguido de la palabra reservaba endp. Existen dos tipos de procedimientos que pueden utilizarse dentro de ensamblador, estos son los internos y los externos. 3 Ventajas Permiten una codificación más limpia y compacta, es decir el código fuente es más pequeño. Permiten el ahorro de memoria, esto es porque un mismo procedimiento puede ser llamado varias veces en el mismo programa y sólo requiere memoria una vez. A continuación, se presentan los pasos necesarios para ejecutar un procedimiento: 1. Se encuentra la llamada Call. 2. El microprocesador almacena en la Pila el contenido del IP. 3. Se coloca en el IP el valor del desplazamiento correspondiente al Procedimiento. 4. El microprocesador ejecuta las instrucciones del procedimiento. 5. El procedimiento termina cuando se encuentra la instrucción Ret. 6. Se saca de la pila el valor original del IP y se continúa al flujo del programa PROCEDIMIENTOS EXTERNOS Este tipo de procedimientos permiten crear bibliotecas de funciones de ensamblador, permitiendo a su vez asemejarse más a la programación de alto nivel. El nombre del procedimiento debe estar presente, ser único y seguir las reglas para la formación de nombres del lenguaje. El operando far está relacionado con la ejecución del programa. Cuando se solicita la ejecución de un programa, el cargador de programas del DOS utiliza este nombre de procedimiento como el punto de entrada para la primera instrucción a ejecutar. La directiva ENDP indica el fin de un procedimiento y contiene el mismo nombre que el enunciado PROC para permitir que el ensamblador relacione a los dos. La organización de un programa en procedimientos proporciona los beneficios siguientes: 1. Reduce la cantidad de código, ya que un procedimiento común puede ser llamado desde cualquier lugar en el segmento de código. 2. Fortalece la mejor organización del programa. 3. Facilita la depuración del programa, ya que los errores pueden ser aislados con mayor claridad. 4. Ayuda en el mantenimiento progresivo de programas, ya que los procedimientos son identificados de forma rápida para su modificación. Los procedimientos externos se crean de la misma forma que los internos, pero tienen la diferencia de que están en archivos separados al programa de donde el 4 procedimiento es llamado, por lo que se necesitan instrucciones extra para poder utilizarlos, las cuales son las siguientes: • PUBLIC: Es necesario declarar como público el procedimiento que se desea utilizar para que sea posible acceder a él desde otro programa. • EXTRN: Permite abrir procedimientos desde otro programa, aunque no se encuentre enlazado directamente. • INCLUDE: Enlaza el programa que llama el procedimiento con el que lo contiene, permitiendo utilizarlo como si fuera un procedimiento propio. PROCEDIMIENTOS INTERNOS Procedimiento o subrutina. Es un grupo de instrucciones que, por lo general, desempeñan una tarea. Un procedimiento es una sección de un programa que se puede volver a utilizar y que se almacena en memoria, pero se emplea tan a menudo como se necesite. Esto ahorra espacio en la memoria y facilita el desarrollo de la programación. La desventaja de usar procedimientos es que la computadora requiere tiempo para ligarse con el procedimiento y regresar desde él. Las principales ventajas en el uso de procedimientos son: permiten una codificación más limpia y compacta, es decir el código fuente es más pequeño; también permiten el ahorro de memoria, esto es porque un mismo procedimiento puede ser llamado varias veces en el mismo programa y sólo requiere memoria una vez. 5 3.2 MACROS Una macro es un conjunto de instrucciones que pueden ser llamadas utilizando su nombre para ejecutarse dentro de un programa, estas solo se escriben una vez dentro del código y pueden utilizarse las veces que sea necesario. En ensamblador la diferencia entre los procedimientos y las macros es que las macros tienen la posibilidad de utilizar parámetros por lo que pueden llevar a cabo tareas que los procedimientos no podrían. Las macros constan de tres partes que las definen: Declaración: El inicio de una macro se declara escribiendo el nombre que tendrá, seguido de la palabra reservada MACRO y opcionalmente, puede contener parámetros después. Cuerpo: Contiene todas las instrucciones que ejecutara la macro cuando sea llamada dentro del programa en ejecución. Fin: Toda macro debe terminar con la palabra reservada ENDM para indicar el fin de la misma. Al igual que con los procedimientos, existen dos tipos de macros que son externas e internas, pero son muy fáciles de utilizar de cualquiera de las dos formas, si se desea utilizar una macro externa se escribe la palabra Include seguida del nombre del archivo de texto donde están guardadas las macros antes del código del programa. 6 CONCLUSIONES Mi conclusión de la unidad tres es que la realización de la presente investigación ayuda a conocer el significado de la palabra procedimiento y macro, así como también la diferencia que existe entre estos dos términos que son muy semejantes. También comprender la función de la modularización. Un procedimiento es un conjunto de instrucciones que tienen la finalidad de ejecutar una tarea específica dentro de un programa. Los procedimientos son muy similares a las macros. Las macros ofrecen la facilidad decodificar una sola vez un conjunto de instrucciones y reutilizar el código cuantas veces desee dentro del programa. La principal diferencia entre una macro y un procedimiento es que en la macro se hace posible el paso de parámetros. Edgar Hernández Hernández En conclusión, se ha visto hasta ahora que los lenguajes de programación son un simbolismo, que nos permite expresar en operaciones elementales (instrucciones) la solución a nuestro problema. Una macro es un grupo de instrucciones repetitivas en un programa que se codifican solo una vez y pueden utilizarse cuantas veces sea necesario. La principal diferencia entre una macro y un procedimiento es que en la macro se hace posible el paso de parámetros y en el procedimiento no. Al momento de ejecutarse la macro cada parámetro es sustituido por el nombre o valor especificado al momento de llamarla. Podemos decir entonces que un procedimiento es una extensión de un determinado programa, mientras que la macro es un módulo con funciones específicas que puede ser utilizado por diferentes programas. Otra diferencia entre una macro y un procedimiento es la forma de llamar a cada uno, para llamar a un procedimiento se requiere el uso de una directiva, en cambio la llamada a las macros se realiza como si se tratara de una instrucción del ensamblador. Karen Lizbet Pérez Reyes Mi conclusión un procedimiento es una porción de código que permanece localizada en la memoria y a la que podemos acceder cuantas veces queramos para ejecutar un proceso y retornar posteriormente a la ejecución del programa mientras que una macro es un nombre que define un conjunto de instrucciones que serán sustituidas por la macro cuando el nombre de ésta aparezca en un programa en el momento de ensamblar el programa. Ángel De Jesús Herrera Tovar En mi conclusión sobre la investigación de esta unidad es que la modularización es el proceso por el cual seleccionamos y agrupamos instrucciones de programación que cumplen una función específica. Y en lenguaje ensamblador es Básicamente es crear varias rutinas (funciones o procedimientos) y a si segmentar el código y hacerlo más entendible para el programador ya sea para actualizaciones o depuraciones Este enfoque de segmentación o modularización es útil en dos casos: Cuando existe un grupo de instrucciones o una tarea y también lleva un 7 Procedimiento que es un Conjunto de instrucciones que realizan una tarea y preferentemente solo una- que se ha de utilizar en más de una ocasión pero se declara una sola vez en el código fuente.por otra parte una macro es un grupo de instrucciones repetitivas en un programa que se codifican solo una vez y pueden utilizarse cuantas veces sea necesario.La principal diferencia entre una macro y un procedimiento es que en la macro se hace posible el paso de parámetros y en el procedimiento no. Javier Juarez Campos En mi conclusion sobre esta investigación es que la modularización es primeramente un procedimiento es una colección de instrucciones relacionadas que realiza una tarea específica. También un procedimiento puede contener un conjunto de instrucciones que deseamos que se ejecuten en varias partes del programa. Y es útil 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 se organiza 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 determinadatarea, lo que redundara en una mayor concentración , entendimiento y capacidad de solución a la hora de diseñar la lógica de cada una de estas. Joel Solis Bautista BIBLIOGRAFÍA 3.1 Procedimientos. (2020, 12 noviembre). Lenguajes de https://pdfcookie.com/documents/31-procedimientos-x20gqdx9mwl3 interfaz. 3.2 Macros. (2018, 12 noviembre). Lenguajes de interfaz. https://ittlenguajesdeinterfaz.wordpress.com/3-2-macros/ Unidad 3. Modularización. (2020, 28 abril). NANONBLOGS. https://brandon22esquivel.wixsite.com/misitio/post/unidad-3modularizaci%C3%B3n Torres, T. A. I., Carlos, H., Enrique, A., & Alejandro, H. (2020). LENGUAJE DE INTERFAZ (1.a ed.). Trillas. Isazadeh, A., Izadkhah, H., & Elgedawy, I. (2017). Modularización del Código Fuente: Teoría y Técnicas. Springer. 8