Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introducción al entorno de
Programación
Escuela de Electrónica
Diego Alegrechi
Andrés Capalbo
2000
INTRODUCCIÓN AL ENTORNO DE PROGRAMACIÓN
CONTENIDO:
I N T R O D U C C I Ó N A L E N T O R N O D E P R O G R A M A C I Ó N .................. 3
LOS TRADUCTORES DE LENGUAJES .......................................................................................... 3
COMPILADORES ....................................................................................................................... 3
EL PROCESO DE CONSTRUCCIÓN DE UN ARCHIVO EJECUTABLE ............................................... 4
ENSAMBLADOR (ASSEMBLER)................................................................................................. 5
ENLAZADOR (LINKER)............................................................................................................. 5
ENTORNO MICROSOFT PROGRAMMER'S WORKBENCH (PWB) .......... 6
CREACIÓN DEL CÓDIGO FUENTE .............................................................................................. 6
CONSTRUCCIÓN DE UN MÓDULO SIMPLE................................................ 7
ELECCIÓN DE LAS OPCIONES DE CONSTRUCCIÓN (BUILD OPTIONS) ......................................... 7
ELECCIÓN DE LA PLANTILLA DE PROYECTO (PROJECT TEMPLATE) PARA UNO.ASM .................. 7
ELECCIÓN DE LAS OPCIONES DE CONSTRUCCIÓN (BUILD OPTIONS).......................................... 8
CONSTRUCCIÓN DEL PROGRAMA ........................................................................................... 10
CORRECCIÓN DE ERRORES ..................................................................................................... 10
PROGRAMAS MULTIMÓDULOS .................................................................. 11
CREACIÓN DE UN PROYECTO.................................................................................................. 11
DEPURACIÓN DEL PROGRAMA .................................................................. 12
EJECUCIÓN PASO A PASO........................................................................................................ 13
EJECUCIÓN CON PUNTOS DE PARADA (BREAKPOINTS)............................................................ 13
MANEJO DE LA VENTANA DE MEMORIA ................................................................................. 13
BIBLIOGRAFÍA ................................................................................................ 13
INTRODUCCIÓN A L E N TO R N O D E P R O G R A M A C I Ó N
Este apunte está destinado a servir de texto auxiliar a los alumnos de DIGITAL II para
la realización del trabajo práctico de programación en ASSEMBLER. Su objetivo es
desarrollar la comprensión de ideas básicas sobre el manejo del entorno de programación. No
se tratarán los temas correspondientes al lenguaje de programación propiamente dicho, los
cuales ya fueron abordados en otros apuntes de la cátedra.
En la primera parte se realiza una introducción a los procesos involucrados en la
generación de un archivo ejecutable partiendo de un código fuente (Assembler).
En la segunda parte se explica paso por paso el manejo del entorno de trabajo, para la
generación y depuración de programas simples.
Compiladores
Dentro de los lenguajes de programación que pueden compilarse existen los de alto
nivel y los de bajo nivel. Los programadores que escriben en un lenguaje de alto nivel, como
C y Pascal, codifican comandos poderosos, cada uno de los cuales puede generar muchas
instrucciones en lenguaje de máquina. Por otro lado, los programadores que escriben en un
lenguaje Assembler, de bajo nivel, codifican instrucciones simbólicas, cada una de las cuales
genera una instrucción en lenguaje de máquina. A pesar del hecho de que codificar en un
lenguaje de alto nivel es más productivo, programar en lenguaje Assembler tiene algunas
ventajas que a continuación se detallan:
Archivo Objeto 3
(.OBJ)
Enlazador (Linker)
El enlazador realiza las funciones siguientes:
Una vez que se ha enlazado uno o más módulos .OBJ en un módulo .EXE, se puede
ejecutar el módulo .EXE cualquier número de veces. Pero siempre que se necesite realizar un
cambio al programa, debe corregirse el programa fuente, ensamblarlo en otro módulo .OBJ y
enlazar el módulo .OBJ en un módulo .EXE.
! El "Run time support". Esto es importante para desarrollo con varios lenguajes de
programación simultáneamente, donde se tiene algún archivo fuente en assembler y
algunos en otros lenguajes. En nuestro caso deberemos escoger la opción ASSEMBLER.
! La Plantilla de proyecto (Project template). La plantilla describe en detalle como debe ser
construído el proyecto indicando el tipo de archivo (.EXE, .COM, .DLL, .LIB ) y detalla
en que sistema operativo correrá el programa.
1. Del menú Options, elegir Project template y luego Set project template
Generalmente en la lista Run time support figura como opciones None y Assembler. Si
tiene instalado otros lenguajes de programación aparecerán en dicha lista. (elegir Assembler)
2. Optar por las opciones para depuración (Use debug options). De esta manera, PWB
utilizará las opciones de depuración cada vez que se construya (Build) el programa.
3. Del menú Options elegir Languages options y luego MASM Options seguido a esto hacer
click en Set debug options.
El menú Options contiene más comandos que permiten describir las opciones de
construcción del proyecto en una forma más detallada. No es necesario cambiar la mayoría de
las opciones para construir un programa simple dado que los valores por defecto provistos por
la plantilla funcionan en forma correcta.
Corrección de errores
Para cada construcción, PWB muestra en Build result window una lista de los errores y
mensajes de la construcción. Como vemos el ejemplo tiene algunos errores. Para examinar
los errores de construcción, en la ventana antes mencionada, colocando el cursor sobre
cualquiera de los errores y eligiendo del menú Projet, Goto error PWB abre la ventana de
código fuente correspondiente y pone el cursor en la línea en donde se encontró error.
Luego de corregirlo podremos volver a la ventana Build result window a través del
menú window. Si se desea realizar una corrección más rápida se puede ir de error en error
presionando SHIFT+F3 (Menú Project y Next error).
El primer error es debido a que la instrucción add no admite este formato. La forma
correcta es: add ax,3
El segundo error depende del primero, por lo tanto ya estamos en condiciones de
construir nuevamente el programa.
Programas Multimódulos
Creación de un proyecto
1. En el menú Project elegir New project, PWB mostrará:
Un proyecto, podrá contener archivos de tipo: *.ASM, *.OBJ, *.LIB, *.DEF, *.RC .
5. Una vez que se hallan agregado los módulos necesarios se deberá salvar la lista (Save List)
6. El proceso de construcción y corrección de errores es el mismo que para un programa de
módulo único.
7. Si es necesario agregar o quitar módulos al proyecto, esto puede realizarse desde el menú
Project, y luego Edit Project.
PWB integra muchas herramientas, entre ellas se encuentra una que permite la
depuración del programa DEBUGGER.
Para acceder a este programa se podrá hacer desde el menú Run y luego Debug, o bien
luego de la construcción en la ventana de resultados elegir Debug Program. Cabe destacar
que la opción Debug solo estará disponible si la construcción no arrojó errores.
El entorno de este programa tiene el siguiente aspecto:
Bibliografía
1. Environment and tools (Microsoft) "Mike Eddy"
2. Lenguaje ensamblador y programación para PC IBM® y compatibles (Pearson
Educación) "Peter Abel" Tercera Edición
3. Los microprocesadores INTEL (Prentice Hall) "Barry B. Bray" Tercera Edición