SlideShare une entreprise Scribd logo
1  sur  4
Unidad 3
3. PONER A PUNTO EL PROGRAMA MEDIANTE EL USO DE UN EDITOR
DE 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 en
un lenguaje de alto nivel, no puede ser ejecutado directamente por un
ordenador, sino que debe ser traducido a lenguaje máquina. Las etapas por las
que debe pasar un programa escrito en un lenguaje de programación, hasta
poder ser ejecutable son:
Figura 1. Fases de ejecución de un programa fuente: Es el programa escrito
en 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 el
programa encargado de traducir los programas fuentes escritos en un lenguaje
de alto nivel a lenguaje máquina (traduce nuestras instrucciones a otras
reconocibles por el microprocesador).
Programa objeto o código objeto: Es el programa .obj resultante de la
traducción del código fuente. Aún no es directamente ejecutable por el
ordenador. Linker (montador o enlazador): Es el programa encargado de
realizar el proceso de montaje, que producirá un programa .exe en lenguaje
má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 de
biblioteca son una colección de código que ha sido programada y traducida, y
lista para utilizar en un programa.
Como cada lenguaje de programación tiene unas reglas especiales (sintaxis)
para la construcción de sus programas, debe existir un compilador específico
para cada lenguaje de programación.
El compilador antes de generar el programa objeto debe analizar el programa
fuente (almacenado en un archivo de texto) y comprobar que cumple las
reglas de sintaxis del lenguaje de programación. Si cumple la sintaxis genera
el correspondiente programa objeto, sino, visualizará un mensaje de error y su
posible causa para que procedamos a la depuración del programa. Depurar un
programa consiste en detectar y corregir los errores que se producen en él, ya
sean en tiempo de compilación o en tiempo de ejecución. Los errores en
tiempo de compilación son los que se producen antes de la ejecución del
programa, durante el proceso de compilación del programa. Los errores en
tiempo de ejecución son los que se producen durante la ejecución del
programa.
Este tipo de errores, son los más difíciles de encontrar, porque no son
detectados por el compilador, ya que no son errores consecuencia de violar
alguna regla sintáctica.
Un programa puede interrumpirse bruscamente, por ejemplo si tenemos que
hacer una división y el divisor es cero, etc. Para ayudarnos a encontrar los
errores lógicos y demás errores producidos en tiempo de ejecución, podemos
hacer uso de los depuradores.
Un depurador (debugger), es un programa diseñado específicamente para la
detección, verificación y corrección de errores, y que por tanto nos ayudará en
las tareas de depuración. Los depuradores nos permiten trazar el programa
(ejecutarlo sentencia a sentencia) y visualizar el contenido de las variables y
direcciones de memoria durante la ejecución del programa.
Además permiten alterar el flujo de ejecución del mismo, cambiar los valores
de las variables e introducir puntos de parada. Página 3 de 5 Los compiladores
emiten 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 producidos
los podemos agrupar en tres bloques: − Errores fatales: Son raros. Algunos
indican un error interno del compilador.
Cuando ocurren la compilación se detiene inmediatamente. − Errores de
sintaxis: Son los errores típicos de sintaxis, errores de línea de órdenes y
errores de acceso a memoria o disco. El compilador terminará la fase de
compilación y se detendrá. − Advertencias (warnings): No impiden la
compilación.
Indican condiciones que son sospechosas, pero son legítimas como parte del
lenguaje. Así pues los pasos a seguir para la elaboración y ejecución de un
programa 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 el
programa y ejecutar sentencia a sentencia.
7 º. Una vez que hayamos encontrado la causa del error, volveremos al editor
y lo corregimos.
8 º. El proceso de compilar, enlazar y ejecutar el programa lo repetiremos
hasta que no se produzcan errores.
9 º. Una vez tengamos el archivo ejecutable, será el sistema operativo el
encargado de colocar el programa en la memoria central y ejecutarlo.
3.2 COMPILAR EL PROGRAMA, DEPURAR EL PROGRAMA, EJECUTAR EL
PROGRAMA.
Fase de ejecución de un programa
Una vez que tenemos el programa en lenguaje máquina, para poderlo ejecutar
hay que introducirlo en la memoria. Para esta tarea existe un programa del
sistema operativo denominado cargador, que introduce el programa
en posiciones consecutivas de memoria a partir de una determinada.
Cuando el programa está cargado se le indica a la computadora que pase
su control a la posición de memoria donde se ha cargado. Esta operación la
hace directamente el sistema operativo. pasos:
Suponiendo que el programa se ha cargado a partir de una
determinada 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 y
las señales de estado, envía señales de control a las unidades y circuitos
que 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 a
otra instrucción en la posición m, por ejemplo (alterándose por tanto el
orden secuencial), la UC hace, en la fase de ejecución de la instrucción de
salto, que cambie i por m, de forma que en la siguiente fase de captación se
ejecuta la instrucción que está en m.

Contenu connexe

Tendances (20)

Tercera unidad ;3
Tercera unidad ;3Tercera unidad ;3
Tercera unidad ;3
 
3 unidad.Poner a punto el programa mediante el uso de un editor de lenguaje d...
3 unidad.Poner a punto el programa mediante el uso de un editor de lenguaje d...3 unidad.Poner a punto el programa mediante el uso de un editor de lenguaje d...
3 unidad.Poner a punto el programa mediante el uso de un editor de lenguaje d...
 
Fanny3
Fanny3Fanny3
Fanny3
 
Jhonny3
Jhonny3Jhonny3
Jhonny3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad ad 3
Unidad ad 3Unidad ad 3
Unidad ad 3
 
Traductores de lenguaje
Traductores de lenguajeTraductores de lenguaje
Traductores de lenguaje
 
Traductores de lenguajes de programación
Traductores de lenguajes de programaciónTraductores de lenguajes de programación
Traductores de lenguajes de programación
 
Traductores de lenguaje
Traductores de lenguajeTraductores de lenguaje
Traductores de lenguaje
 
1.4 ensambladores y compiladores
1.4 ensambladores y compiladores1.4 ensambladores y compiladores
1.4 ensambladores y compiladores
 
Traductores de Lenguaje
Traductores de LenguajeTraductores de Lenguaje
Traductores de Lenguaje
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Traductores de lenguaje
Traductores de lenguajeTraductores de lenguaje
Traductores de lenguaje
 
Clasificacion de Interpretes
Clasificacion de InterpretesClasificacion de Interpretes
Clasificacion de Interpretes
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Tercera unidad
Tercera unidadTercera unidad
Tercera unidad
 
Presentación computación 1_compiladores_e_interpretes
Presentación computación 1_compiladores_e_interpretesPresentación computación 1_compiladores_e_interpretes
Presentación computación 1_compiladores_e_interpretes
 
C:\fakepath\compiladores
C:\fakepath\compiladoresC:\fakepath\compiladores
C:\fakepath\compiladores
 
Cargadores y ligadores
Cargadores y ligadoresCargadores y ligadores
Cargadores y ligadores
 

En vedette

Jóvenes y mercado laboral, hacia la construcción de una nueva agenda
Jóvenes y mercado laboral, hacia la construcción de una nueva agendaJóvenes y mercado laboral, hacia la construcción de una nueva agenda
Jóvenes y mercado laboral, hacia la construcción de una nueva agendaGobernabilidad
 
Brochure Congreso Seguridad, Salud Ocupacional y Responsabilidad Social
Brochure Congreso Seguridad, Salud Ocupacional y Responsabilidad SocialBrochure Congreso Seguridad, Salud Ocupacional y Responsabilidad Social
Brochure Congreso Seguridad, Salud Ocupacional y Responsabilidad Socialarmollconsulting
 
A Visual History of Modern Art
A Visual History of Modern ArtA Visual History of Modern Art
A Visual History of Modern ArtVictoria Bertotti
 
Contaminacionatmosferica Sarajulioalberto
Contaminacionatmosferica SarajulioalbertoContaminacionatmosferica Sarajulioalberto
Contaminacionatmosferica Sarajulioalbertociudadanialinares
 

En vedette (7)

Jóvenes y mercado laboral, hacia la construcción de una nueva agenda
Jóvenes y mercado laboral, hacia la construcción de una nueva agendaJóvenes y mercado laboral, hacia la construcción de una nueva agenda
Jóvenes y mercado laboral, hacia la construcción de una nueva agenda
 
Brochure Congreso Seguridad, Salud Ocupacional y Responsabilidad Social
Brochure Congreso Seguridad, Salud Ocupacional y Responsabilidad SocialBrochure Congreso Seguridad, Salud Ocupacional y Responsabilidad Social
Brochure Congreso Seguridad, Salud Ocupacional y Responsabilidad Social
 
20249 100823-1-pb
20249 100823-1-pb20249 100823-1-pb
20249 100823-1-pb
 
Dia 2
Dia 2Dia 2
Dia 2
 
A Visual History of Modern Art
A Visual History of Modern ArtA Visual History of Modern Art
A Visual History of Modern Art
 
Deporte y discapacidad
Deporte y discapacidadDeporte y discapacidad
Deporte y discapacidad
 
Contaminacionatmosferica Sarajulioalberto
Contaminacionatmosferica SarajulioalbertoContaminacionatmosferica Sarajulioalberto
Contaminacionatmosferica Sarajulioalberto
 

Similaire à Unidad 3

Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01Victor Martinez
 
Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador   Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador ADOLFOISAIASGARCIASI
 
Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...Jorge Rodriguez
 
Compiladores y analizador lexicos
Compiladores y analizador lexicosCompiladores y analizador lexicos
Compiladores y analizador lexicosdiana8320
 
Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02Lesly Gonzalez
 
Tema 1.3.- Programación
Tema 1.3.- ProgramaciónTema 1.3.- Programación
Tema 1.3.- ProgramaciónYenny Salazar
 
Conceptossobreedicionyobtenciondecodigoejecutable
ConceptossobreedicionyobtenciondecodigoejecutableConceptossobreedicionyobtenciondecodigoejecutable
ConceptossobreedicionyobtenciondecodigoejecutableColegio Metropolitano
 
Unidad 3
Unidad 3Unidad 3
Unidad 3aeto
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraAlexandraMolinaSanchez
 
Unidad 3
Unidad 3Unidad 3
Unidad 3aeto
 
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLPASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLfelipeforero72
 

Similaire à Unidad 3 (19)

Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01Terceraunidad 130505194734-phpapp01
Terceraunidad 130505194734-phpapp01
 
Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador   Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...Traducción de un programa: compilación, enlace de un programa, errores en tie...
Traducción de un programa: compilación, enlace de un programa, errores en tie...
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Compiladores y analizador lexicos
Compiladores y analizador lexicosCompiladores y analizador lexicos
Compiladores y analizador lexicos
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Gaby agudo
Gaby agudoGaby agudo
Gaby agudo
 
Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02
 
Tema 1.3.- Programación
Tema 1.3.- ProgramaciónTema 1.3.- Programación
Tema 1.3.- Programación
 
Conceptossobreedicionyobtenciondecodigoejecutable
ConceptossobreedicionyobtenciondecodigoejecutableConceptossobreedicionyobtenciondecodigoejecutable
Conceptossobreedicionyobtenciondecodigoejecutable
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLPASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
 
Informatica
InformaticaInformatica
Informatica
 

Plus de Aleexiz Hdz D Perezz (20)

Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Práctica 10
Práctica 10Práctica 10
Práctica 10
 
Crearunmovimientomultidireccionalencadenandointerpolacionesdemovimiento
CrearunmovimientomultidireccionalencadenandointerpolacionesdemovimientoCrearunmovimientomultidireccionalencadenandointerpolacionesdemovimiento
Crearunmovimientomultidireccionalencadenandointerpolacionesdemovimiento
 
Creargusanoenmovimiento
CreargusanoenmovimientoCreargusanoenmovimiento
Creargusanoenmovimiento
 
Unidad3
Unidad3 Unidad3
Unidad3
 
Crearunaanimacinsobreuntextoseparndoloenbloquesdeletras
CrearunaanimacinsobreuntextoseparndoloenbloquesdeletrasCrearunaanimacinsobreuntextoseparndoloenbloquesdeletras
Crearunaanimacinsobreuntextoseparndoloenbloquesdeletras
 
Practica 6 crear un movimiento multidirecional
Practica 6 crear un movimiento multidirecionalPractica 6 crear un movimiento multidirecional
Practica 6 crear un movimiento multidirecional
 
Examen
ExamenExamen
Examen
 
Cientificos
CientificosCientificos
Cientificos
 
Unidad 1 jahc
Unidad 1 jahcUnidad 1 jahc
Unidad 1 jahc
 
execel
execelexecel
execel
 
Practica8
Practica8Practica8
Practica8
 
Practica 7
Practica 7Practica 7
Practica 7
 
Trabajos finales
Trabajos finalesTrabajos finales
Trabajos finales
 
5j
5j5j
5j
 
5i
5i5i
5i
 
5g
5g5g
5g
 
5f
5f5f
5f
 

Unidad 3

  • 1. Unidad 3 3. PONER A PUNTO EL PROGRAMA MEDIANTE EL USO DE UN EDITOR DE 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 en un lenguaje de alto nivel, no puede ser ejecutado directamente por un ordenador, sino que debe ser traducido a lenguaje máquina. Las etapas por las que debe pasar un programa escrito en un lenguaje de programación, hasta poder ser ejecutable son: Figura 1. Fases de ejecución de un programa fuente: Es el programa escrito en 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 el programa encargado de traducir los programas fuentes escritos en un lenguaje de alto nivel a lenguaje máquina (traduce nuestras instrucciones a otras reconocibles por el microprocesador). Programa objeto o código objeto: Es el programa .obj resultante de la traducción del código fuente. Aún no es directamente ejecutable por el ordenador. Linker (montador o enlazador): Es el programa encargado de realizar el proceso de montaje, que producirá un programa .exe en lenguaje má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 de biblioteca son una colección de código que ha sido programada y traducida, y lista para utilizar en un programa.
  • 2. Como cada lenguaje de programación tiene unas reglas especiales (sintaxis) para la construcción de sus programas, debe existir un compilador específico para cada lenguaje de programación. El compilador antes de generar el programa objeto debe analizar el programa fuente (almacenado en un archivo de texto) y comprobar que cumple las reglas de sintaxis del lenguaje de programación. Si cumple la sintaxis genera el correspondiente programa objeto, sino, visualizará un mensaje de error y su posible causa para que procedamos a la depuración del programa. Depurar un programa consiste en detectar y corregir los errores que se producen en él, ya sean en tiempo de compilación o en tiempo de ejecución. Los errores en tiempo de compilación son los que se producen antes de la ejecución del programa, durante el proceso de compilación del programa. Los errores en tiempo de ejecución son los que se producen durante la ejecución del programa.
  • 3. Este tipo de errores, son los más difíciles de encontrar, porque no son detectados por el compilador, ya que no son errores consecuencia de violar alguna regla sintáctica. Un programa puede interrumpirse bruscamente, por ejemplo si tenemos que hacer una división y el divisor es cero, etc. Para ayudarnos a encontrar los errores lógicos y demás errores producidos en tiempo de ejecución, podemos hacer uso de los depuradores. Un depurador (debugger), es un programa diseñado específicamente para la detección, verificación y corrección de errores, y que por tanto nos ayudará en las tareas de depuración. Los depuradores nos permiten trazar el programa (ejecutarlo sentencia a sentencia) y visualizar el contenido de las variables y direcciones de memoria durante la ejecución del programa. Además permiten alterar el flujo de ejecución del mismo, cambiar los valores de las variables e introducir puntos de parada. Página 3 de 5 Los compiladores emiten 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 producidos los podemos agrupar en tres bloques: − Errores fatales: Son raros. Algunos indican un error interno del compilador. Cuando ocurren la compilación se detiene inmediatamente. − Errores de sintaxis: Son los errores típicos de sintaxis, errores de línea de órdenes y errores de acceso a memoria o disco. El compilador terminará la fase de compilación y se detendrá. − Advertencias (warnings): No impiden la compilación. Indican condiciones que son sospechosas, pero son legítimas como parte del lenguaje. Así pues los pasos a seguir para la elaboración y ejecución de un programa 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 el programa y ejecutar sentencia a sentencia.
  • 4. 7 º. Una vez que hayamos encontrado la causa del error, volveremos al editor y lo corregimos. 8 º. El proceso de compilar, enlazar y ejecutar el programa lo repetiremos hasta que no se produzcan errores. 9 º. Una vez tengamos el archivo ejecutable, será el sistema operativo el encargado de colocar el programa en la memoria central y ejecutarlo. 3.2 COMPILAR EL PROGRAMA, DEPURAR EL PROGRAMA, EJECUTAR EL PROGRAMA. Fase de ejecución de un programa Una vez que tenemos el programa en lenguaje máquina, para poderlo ejecutar hay que introducirlo en la memoria. Para esta tarea existe un programa del sistema operativo denominado cargador, que introduce el programa en posiciones consecutivas de memoria a partir de una determinada. Cuando el programa está cargado se le indica a la computadora que pase su control a la posición de memoria donde se ha cargado. Esta operación la hace directamente el sistema operativo. pasos: Suponiendo que el programa se ha cargado a partir de una determinada 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 y las señales de estado, envía señales de control a las unidades y circuitos que 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 a otra instrucción en la posición m, por ejemplo (alterándose por tanto el orden secuencial), la UC hace, en la fase de ejecución de la instrucción de salto, que cambie i por m, de forma que en la siguiente fase de captación se ejecuta la instrucción que está en m.