Compilador

Solo disponible en BuenasTareas
  • Páginas : 3 (554 palabras )
  • Descarga(s) : 0
  • Publicado : 29 de agosto de 2010
Leer documento completo
Vista previa del texto
¿ QUE ES UN COMPILADOR?
Un compilador es un programa que lee un código escrito en un lenguaje fuente y lo traduce a un código equivalente en otro lenguaje, el lenguaje objeto.
Como parteimportante de este proceso de traducción, el compilador informa al usuario de la presencia de errores en el código fuente.
TIPOS DE COMPILADORES
Compiladores cruzados: generan código para un sistema distintodel que están funcionando.

Compiladores optimizadores: realizan cambios en el código para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original.
TIPOS DE COMPILADORES.Compiladores de una sola pasada: generan el código máquina a partir de una única lectura del código fuente.

Compiladores de varias pasadas: necesitan leer el código fuente varias veces antes depoder producir el código máquina.

Compiladores JIT (Just In Time): forman parte de un intérprete y compilan partes del código según se necesitan.
FASES DEL PROCESO DE COMPILACION.
AnálisisLéxico.
Análisis Sintáctico.
Análisis Semántico.
Generación de Código Intermedio.
Optimización de Código.
Generación de Código.
ANALISIS LEXICO.
Otras funciones que realiza:

• Eliminar loscomentarios del programa.
• Eliminar espacios en blanco, tabuladores, retorno de carro, etc, y en general, todo
Aquello que carezca de significado según la sintaxis del lenguaje.
• Reconocer losidentificadores de usuario, números, palabras reservadas del lenguaje,
clasificándolos en la tabla de símbolos
Otras funciones que realiza:

• Llevar la cuenta del número de línea por la que valeyendo, por si se produce algún error,
Dar información sobre donde se ha producido.

• Avisar de errores léxicos. Por ejemplo, si @ no pertenece al lenguaje, avisar de un error.
ANALISIS SINTACTICO.En esta fase se analiza la estructura de las expresiones en base a gramáticas.

Aquí ya se puede determinar por ejemplo si una expresión matemática esta mal formada.
Ejemplo: posición :=...
tracking img