Unidad 33. PONER A PUNTO EL PROGRAMA MEDIANTE EL USO DE UN EDITORDE LENGUAJE DE PROGRAMACIÓN ESTRUCTURADO.3.1 CAPTURA Y ED...
Como cada lenguaje de programación tiene unas reglas especiales (sintaxis)para la construcción de sus programas, debe exis...
Este tipo de errores, son los más difíciles de encontrar, porque no sondetectados por el compilador, ya que no son errores...
7 º. Una vez que hayamos encontrado la causa del error, volveremos al editory lo corregimos.8 º. El proceso de compilar, e...
Próxima SlideShare
Cargando en…5
×

Unidad 3

199 visualizaciones

Publicado el

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
199
En SlideShare
0
De insertados
0
Número de insertados
6
Acciones
Compartido
0
Descargas
1
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Unidad 3

  1. 1. Unidad 33. PONER A PUNTO EL PROGRAMA MEDIANTE EL USO DE UN EDITORDE LENGUAJE DE PROGRAMACIÓN ESTRUCTURADO.3.1 CAPTURA Y EDICIÓN DEL PROGRAMA.Fase de compilación y linkado (link, montado o enlace) Un programa escrito enun lenguaje de alto nivel, no puede ser ejecutado directamente por unordenador, sino que debe ser traducido a lenguaje máquina. Las etapas por lasque debe pasar un programa escrito en un lenguaje de programación, hastapoder ser ejecutable son:Figura 1. Fases de ejecución de un programa fuente: Es el programa escritoen un lenguaje de alto nivel.No es más que un texto ordinario que contiene las sentencias (instrucciones)del programa en un determinado lenguaje de programación. Compilador es elprograma encargado de traducir los programas fuentes escritos en un lenguajede alto nivel a lenguaje máquina (traduce nuestras instrucciones a otrasreconocibles por el microprocesador).Programa objeto o código objeto: Es el programa .obj resultante de latraducción del código fuente. Aún no es directamente ejecutable por elordenador. Linker (montador o enlazador): Es el programa encargado derealizar el proceso de montaje, que producirá un programa .exe en lenguajemáquina directamente ejecutable (programa ejecutable).El linkador se encarga de unir al programa objeto una serie de librerías(archivos de biblioteca) necesarias para su funcionamiento. Los archivos debiblioteca son una colección de código que ha sido programada y traducida, ylista para utilizar en un programa.
  2. 2. Como cada lenguaje de programación tiene unas reglas especiales (sintaxis)para la construcción de sus programas, debe existir un compilador específicopara cada lenguaje de programación.El compilador antes de generar el programa objeto debe analizar el programafuente (almacenado en un archivo de texto) y comprobar que cumple lasreglas de sintaxis del lenguaje de programación. Si cumple la sintaxis generael correspondiente programa objeto, sino, visualizará un mensaje de error y suposible causa para que procedamos a la depuración del programa. Depurar unprograma consiste en detectar y corregir los errores que se producen en él, yasean en tiempo de compilación o en tiempo de ejecución. Los errores entiempo de compilación son los que se producen antes de la ejecución delprograma, durante el proceso de compilación del programa. Los errores entiempo de ejecución son los que se producen durante la ejecución delprograma.
  3. 3. Este tipo de errores, son los más difíciles de encontrar, porque no sondetectados por el compilador, ya que no son errores consecuencia de violaralguna regla sintáctica.Un programa puede interrumpirse bruscamente, por ejemplo si tenemos quehacer una división y el divisor es cero, etc. Para ayudarnos a encontrar loserrores lógicos y demás errores producidos en tiempo de ejecución, podemoshacer uso de los depuradores.Un depurador (debugger), es un programa diseñado específicamente para ladetección, verificación y corrección de errores, y que por tanto nos ayudará enlas tareas de depuración. Los depuradores nos permiten trazar el programa(ejecutarlo sentencia a sentencia) y visualizar el contenido de las variables ydirecciones de memoria durante la ejecución del programa.Además permiten alterar el flujo de ejecución del mismo, cambiar los valoresde las variables e introducir puntos de parada. Página 3 de 5 Los compiladoresemiten mensajes de error o de advertencia durante las fases de compilación,de enlace o de ejecución de un programa. Los mensajes de error producidoslos podemos agrupar en tres bloques: − Errores fatales: Son raros. Algunosindican un error interno del compilador.Cuando ocurren la compilación se detiene inmediatamente. − Errores desintaxis: Son los errores típicos de sintaxis, errores de línea de órdenes yerrores de acceso a memoria o disco. El compilador terminará la fase decompilación y se detendrá. − Advertencias (warnings): No impiden lacompilación.Indican condiciones que son sospechosas, pero son legítimas como parte dellenguaje. Así pues los pasos a seguir para la elaboración y ejecución de unprograma los podemos resumir de la siguiente manera:1 º. Comenzamos escribiendo el código fuente.2 º. Compilamos el fichero fuente y se comprueban los mensajes de error.3 º. Volvemos al editor y eliminamos los errores de sintaxis.4 º. Cuando el compilador tiene éxito, el linker construirá el archivo ejecutable.5 º. Ya podemos ejecutar el archivo ejecutable que se obtiene al linkar.6 º. Si encontramos un error, podemos activar el depurador para trazar elprograma y ejecutar sentencia a sentencia.
  4. 4. 7 º. Una vez que hayamos encontrado la causa del error, volveremos al editory lo corregimos.8 º. El proceso de compilar, enlazar y ejecutar el programa lo repetiremoshasta que no se produzcan errores.9 º. Una vez tengamos el archivo ejecutable, será el sistema operativo elencargado de colocar el programa en la memoria central y ejecutarlo.3.2 COMPILAR EL PROGRAMA, DEPURAR EL PROGRAMA, EJECUTAR ELPROGRAMA.Fase de ejecución de un programaUna vez que tenemos el programa en lenguaje máquina, para poderlo ejecutarhay que introducirlo en la memoria. Para esta tarea existe un programa delsistema operativo denominado cargador, que introduce el programaen posiciones consecutivas de memoria a partir de una determinada.Cuando el programa está cargado se le indica a la computadora que pasesu control a la posición de memoria donde se ha cargado. Esta operación lahace directamente el sistema operativo. pasos:Suponiendo que el programa se ha cargado a partir de unadeterminada posición i de memoria.1. Lleva de la Memoria (M) a la Unidad de Control (UC) la instrucción que estáen la posición i. Cambiar el valor de i por i+1.2. Interpreta el código de operación de la instrucción y, según sea éste ylas señales de estado, envía señales de control a las unidades y circuitosque deben intervenir para ejecutar la instrucción.Vuelve a la fase (1). Ejecución de instrucción.En el caso de que la ejecución de una instrucción implique saltar aotra instrucción en la posición m, por ejemplo (alterándose por tanto elorden secuencial), la UC hace, en la fase de ejecución de la instrucción desalto, que cambie i por m, de forma que en la siguiente fase de captación seejecuta la instrucción que está en m.

×