Está en la página 1de 12

Jos A Loyola Blanco

COMPILADORES

INTRODUCCIN
Los lenguajes de programacin son notaciones que describen clculos a: las personas y mquinas. Nuestra percepcin de la tecnologa depende de los lenguajes de programacin. porqu? mquinas Antes de poder ejecutar un programa, primero: debe traducirse. Los sistemas de software que se encargan de esta traduccin se llaman compiladores.

RELACIONES

El estudio de la escritura de los compiladores se relaciona con:


los

lenguajes de programacin. la arquitectura de las mquinas. la teora de lenguajes. los algoritmos y la ingeniera de software. Porqu con la arquitectura de las mquinas?

POR QUE?

Cuando se escribe un programa se de tener en cuenta la architectura en la que se pretende ejecutar nuestro programa, y hacerlo lo mas eficiente posible y no desperdiciar recurso.

UNA VISIN DEL CURSO


Distintas formas de los traductores de lenguaje. Una descripcin general de alto nivel sobre la estructura de un compilador ordinario. Las tendencias en:

Los lenguajes de programacin. La arquitectura de mquinas que dan forma a los compiladores.

Observaciones sobre la relacin entre el diseo de los compiladores y la teora de las ciencias computacionales. Un esquema de las aplicaciones que van ms all de la compilacin. Una breve descripcin de los conceptos clave de los lenguajes de programacin.

PROCESADORES DE LENGUAJE
Un compilador es un programa que puede leer un programa en un lenguaje (el lenguaje fuente) y traducirlo en un programa equivalente en otro lenguaje (el lenguaje destino). Una funcin importante del compilador es reportar:

cualquier error en el programa fuente que, detecte durante el proceso de traduccin.

Si el programa destino es un programa ejecutable en lenguaje mquina, entonces el usuario puede ejecutarlo para procesar las entradas y producir salidas (resultados).

ALGUNAS DEFINICIONES
Un compilador es un tipo especial de traductor en el que el lenguaje fuente es un lenguaje de alto nivel y el lenguaje objeto es de bajo nivel. Un Traductor es un programa que convierte el texto escrito en un lenguaje en texto escrito en otro lenguaje. Un ensamblador es un traductor donde el lenguaje fuente es un lenguaje ensamblador y el lenguaje objeto es el cdigo de la mquina.

COMPILADOR O INTERPRETE

El compilador

Analiza todo el programa fuente. Crea el programa objeto Permite su ejecucin

Solo del programa objeto obtenido

El intrprete

Lee sentencia por sentencia

Del programa fuente

La convierte en cdigo objeto La ejecuta La de un programa compilador La de un programa interprete

Qu ejecucin ser ms rpida?


CONSTRUYE UN MAPA CONCEPTUAL


Compilador Traductor Ensamblador Interprete Lenguaje fuente Lenguaje ensamblador Lenguaje objeto Lenguaje de alto nivel Lenguaje de bajo nivel Cdigo de la mquina Programa Sentencia

OTROS PROGRAMAS RELACIONADOS

El compilador es asistido por otros programas para realizar su tarea:

Se utiliza un enlazador para:


Aadir archivos Ejecutar macros Eliminar comentarios, etc.

El preprocesador se encarga de aadir al programa objeto obtenido, las partes de las libreras necesarias. El depurador permite al programador ver paso a paso lo que ocurre durante la ejecucin del programa. Hay compiladores que no generan cdigo mquina sino un programa en ensamblador, por lo que habr que utilizar un programa ensamblador para generar el cdigo mquina.

FASES O PASOS DE LA COMPILACIN

Crea una estructura funcional ordenada:


Anlisis lxico Anlisis semntico Anlisis sintctico Gestin de errores Generacin de cdigo final Generacin de cdigo intermedio Optimizacin de cdigo Tablas de tipos y de smbolos

Desarrolla un mapa conceptual

MAPA CONCEPTUAL