SlideShare uma empresa Scribd logo
1 de 18
PASADAS MULTIPLES
requieren pasos intermedios para
producir un código en otro
lenguaje , y una pasada final para
producir y optimizar el código
producido durante los pasos
anteriores
Compilador se define por como este haya sido
constituido o de que función deba realizar pero
las tareas básicas son las mismas, entre los mas
importantes se puede mencionar de una pasada ,
múltiples pasadas, y de carga y ejecución. Un
compilador realiza una contante interacción entre
dos elementos muy importantes que son: la tabla
de símbolos y el manejador de errores, utilizados
constantemente en las etapas de este
TABLA DE SIMBOLOS
ANALIZADOR LEXICO
es la primera fase de un compilador consistente en
un programa que recibe como entrada el código
fuente de otro programa (secuencia de caracteres)
y produce una salida compuesta de tokens
(componentes léxicos) o símbolos. Estos tokens
sirven para una posterior etapa del proceso de
traducción, siendo la entrada para el analizador
sintáctico ( en ingles parser)
ANALIZADOR SINTACTICO
el análisis sintáctico convierte el texto
de entrada en otras
estructuras(comúnmente arboles) que
son mas útiles para el posterior análisis
y capturan la jerarquía implícita de la
entrada
ANALIZADOR SEMANTICO
revisa el programa fuente para tratar de
encontrar errores semánticos y reúne la
información sobre los tipos para la fase
posterior de generación de código
GENERADOR DE CODIGO INTERMEDIO
se puede considerar esta representación
intermedia como un programa para una
maquina abstracta, esta representación
intermedia debe tener dos propiedades
importantes; debe ser fácil de producir y fácil
de traducir al programa objeto
OPTIMADOR DE CODIGO
la fase de optimización de código
consiste en mejorar el código
intermedio, de modo que resulte un
código maquina mas rápido de
ejecutar
GENERADOR DE CODIGO
es una de las faces mediante el cual un
compilador convierte un programa
sintácticamente correcto en una serie de
instrucciones a ser interpretadas por una
maquina
MANEJO DE ERRORES
•¡¡Los programas no siempre son
correctos!!
•El compilador tiene que:
–Reportar clara y exactamente la presencia
de errores
–Recuperarse de cada error lo
suficientemente rápido para poder
detectar errores subsiguientes
–Tratar de evitar mensajes falsos de error
Tipos de Errores
•Léxicos
•Sintácticos
•Semánticos
•Lógicos
Errores Léxicos
•Un error que produce un token
erróneo
•Errores léxicos posibles
–Un identificador, palabra
reservada u operador mal escrito
(typo
Errores Sintácticos
•Un programa que no satisface la
CFG del lenguaje
•Ejemplos
–Expresión aritmética con paréntesis
no balanceados
–Un punto y coma faltante
Errores Semánticos
•Un error que necesita información sensitiva al
contexto para ser identificado
•Ejemplos
–Un operador aplicado a un tipo incompatible de
operando
–Acezar una variable no declarada
Errores Lógicos
•Errores en el modelo de ejecución
•Ejemplos
–Recursión infinita
–Acezar un arreglo fuera de los límites
–De referenciar un nullpointe

Mais conteúdo relacionado

Mais procurados

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
 
Tipos De Ensambladores
Tipos De EnsambladoresTipos De Ensambladores
Tipos De EnsambladoresSpiderHal
 
Cap2 compiladores
Cap2 compiladoresCap2 compiladores
Cap2 compiladoresCJAO
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraAlexandraMolinaSanchez
 
Compiladores e intérpretes
Compiladores e intérpretesCompiladores e intérpretes
Compiladores e intérpretesfrezko23
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivasjonathangrief
 
Interprete vs compilador
Interprete vs compiladorInterprete vs compilador
Interprete vs compiladorElba Sepúlveda
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iRossana Sosa
 
Compiladores
CompiladoresCompiladores
CompiladoresIsabel
 
C:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladoresC:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladoresNancyandRegina317
 
Traductores de lenguaje
Traductores de lenguajeTraductores de lenguaje
Traductores de lenguajezamanthag_una
 

Mais procurados (20)

Clasificacion de Interpretes
Clasificacion de InterpretesClasificacion de Interpretes
Clasificacion de Interpretes
 
1.4 ensambladores y compiladores
1.4 ensambladores y compiladores1.4 ensambladores y compiladores
1.4 ensambladores y compiladores
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Compiladores trabajo numero 4
Compiladores trabajo numero 4Compiladores trabajo numero 4
Compiladores trabajo numero 4
 
Compiladores
CompiladoresCompiladores
Compiladores
 
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...
 
Tipos De Ensambladores
Tipos De EnsambladoresTipos De Ensambladores
Tipos De Ensambladores
 
Cap2 compiladores
Cap2 compiladoresCap2 compiladores
Cap2 compiladores
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
Compiladores e intérpretes
Compiladores e intérpretesCompiladores e intérpretes
Compiladores e intérpretes
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivas
 
Interprete vs compilador
Interprete vs compiladorInterprete vs compilador
Interprete vs compilador
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes i
 
Compiladores iswi (parte 2)
Compiladores iswi (parte 2)Compiladores iswi (parte 2)
Compiladores iswi (parte 2)
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Traductores de lenguaje
Traductores de lenguajeTraductores de lenguaje
Traductores de lenguaje
 
C:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladoresC:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladores
 
Traductores de lenguaje
Traductores de lenguajeTraductores de lenguaje
Traductores de lenguaje
 

Destaque

Tema 6 Las figuras retóricas
Tema 6 Las figuras retóricasTema 6 Las figuras retóricas
Tema 6 Las figuras retóricasRaquel Ruiz
 
Mejores iniciativas ti cs del ecuador 2013
Mejores iniciativas ti cs del ecuador 2013Mejores iniciativas ti cs del ecuador 2013
Mejores iniciativas ti cs del ecuador 2013DIEGO BAROJA
 
C:\fakepath\compiladores
C:\fakepath\compiladoresC:\fakepath\compiladores
C:\fakepath\compiladorespaulina8
 
Arquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzadosArquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzadosDIEGO BAROJA
 
Administración de memoria en java
Administración de memoria en javaAdministración de memoria en java
Administración de memoria en javaLuis Miguel De Bello
 
TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS
TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS
TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS Guillermo Iván Prisco Pérez
 
Diapositivas lenguaje de programación gladys
Diapositivas lenguaje de programación gladysDiapositivas lenguaje de programación gladys
Diapositivas lenguaje de programación gladysgladys
 
Lo básico sobre los fonemas del español
Lo básico sobre los fonemas del españolLo básico sobre los fonemas del español
Lo básico sobre los fonemas del españolMaría José Aqueveque
 
Semiotica y semantica
Semiotica y semanticaSemiotica y semantica
Semiotica y semanticaMary Pinilla
 

Destaque (14)

Módulo 01 Introducción a la Tecnología Java
Módulo 01 Introducción a la Tecnología JavaMódulo 01 Introducción a la Tecnología Java
Módulo 01 Introducción a la Tecnología Java
 
Tema 6 Las figuras retóricas
Tema 6 Las figuras retóricasTema 6 Las figuras retóricas
Tema 6 Las figuras retóricas
 
Inf2-exc-1-diego alvarez
Inf2-exc-1-diego alvarezInf2-exc-1-diego alvarez
Inf2-exc-1-diego alvarez
 
Ensambladores
EnsambladoresEnsambladores
Ensambladores
 
Mejores iniciativas ti cs del ecuador 2013
Mejores iniciativas ti cs del ecuador 2013Mejores iniciativas ti cs del ecuador 2013
Mejores iniciativas ti cs del ecuador 2013
 
C:\fakepath\compiladores
C:\fakepath\compiladoresC:\fakepath\compiladores
C:\fakepath\compiladores
 
Arquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzadosArquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzados
 
Administración de memoria en java
Administración de memoria en javaAdministración de memoria en java
Administración de memoria en java
 
TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS
TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS
TIPOS DE LENGUAJES ENSAMBLADOR Y CLASIFICACION DE MEMORIAS
 
Semiótica
SemióticaSemiótica
Semiótica
 
Semántica
SemánticaSemántica
Semántica
 
Diapositivas lenguaje de programación gladys
Diapositivas lenguaje de programación gladysDiapositivas lenguaje de programación gladys
Diapositivas lenguaje de programación gladys
 
Lo básico sobre los fonemas del español
Lo básico sobre los fonemas del españolLo básico sobre los fonemas del español
Lo básico sobre los fonemas del español
 
Semiotica y semantica
Semiotica y semanticaSemiotica y semantica
Semiotica y semantica
 

Semelhante a Pasadas multiples

Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1udalrico
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compiladorDLACGP
 
Compiladores y analizador lexicos
Compiladores y analizador lexicosCompiladores y analizador lexicos
Compiladores y analizador lexicosdiana8320
 
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_interpretesMichael Vreys
 
Corporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisyCorporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisyDeisy Nereida Lozada Ortiz
 
Glosario De Trabajo De Examen
Glosario De Trabajo De ExamenGlosario De Trabajo De Examen
Glosario De Trabajo De ExamenJoel Soto
 
Glosario de trabajo de examen
Glosario de trabajo de examenGlosario de trabajo de examen
Glosario de trabajo de examenJoel Soto
 
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
 
Compiladores Ex..ppt
Compiladores Ex..pptCompiladores Ex..ppt
Compiladores Ex..pptMarko Zapata
 
Compilador Funcionamiento
Compilador FuncionamientoCompilador Funcionamiento
Compilador FuncionamientoKriz Kozlov
 
Actividad 3
Actividad 3Actividad 3
Actividad 3maryr_
 

Semelhante a Pasadas multiples (20)

Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
Compiladores conceptos
Compiladores conceptosCompiladores conceptos
Compiladores conceptos
 
Compiladores y analizador lexicos
Compiladores y analizador lexicosCompiladores y analizador lexicos
Compiladores y analizador lexicos
 
Compiladores (1) pedro vasques
Compiladores (1) pedro vasquesCompiladores (1) pedro vasques
Compiladores (1) pedro vasques
 
Resumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamachoResumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamacho
 
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
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Corporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisyCorporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisy
 
Glosario De Trabajo De Examen
Glosario De Trabajo De ExamenGlosario De Trabajo De Examen
Glosario De Trabajo De Examen
 
Glosario de trabajo de examen
Glosario de trabajo de examenGlosario de trabajo de examen
Glosario de trabajo de examen
 
Traductores de lenguajes
Traductores   de    lenguajesTraductores   de    lenguajes
Traductores de lenguajes
 
Compilador
CompiladorCompilador
Compilador
 
Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador   Investigacion sobre traductor, interprete y compilador
Investigacion sobre traductor, interprete y compilador
 
Compiladores Ex..ppt
Compiladores Ex..pptCompiladores Ex..ppt
Compiladores Ex..ppt
 
Compilador Funcionamiento
Compilador FuncionamientoCompilador Funcionamiento
Compilador Funcionamiento
 
H:\compiladores
H:\compiladoresH:\compiladores
H:\compiladores
 
Actividad 3
Actividad 3Actividad 3
Actividad 3
 
Proyecto fernando compiladores 1
Proyecto fernando compiladores 1Proyecto fernando compiladores 1
Proyecto fernando compiladores 1
 

Mais de Lewis Cordoba

Mais de Lewis Cordoba (7)

Refam 29 (1).pdf
Refam 29 (1).pdfRefam 29 (1).pdf
Refam 29 (1).pdf
 
Vida después de la muerte.docx
Vida después de la muerte.docxVida después de la muerte.docx
Vida después de la muerte.docx
 
eva 4.docx
eva 4.docxeva 4.docx
eva 4.docx
 
eva 3.docx
eva 3.docxeva 3.docx
eva 3.docx
 
eva 2.docx
eva 2.docxeva 2.docx
eva 2.docx
 
eva 1.docx
eva 1.docxeva 1.docx
eva 1.docx
 
Trabajo 1
Trabajo 1Trabajo 1
Trabajo 1
 

Pasadas multiples

  • 2. requieren pasos intermedios para producir un código en otro lenguaje , y una pasada final para producir y optimizar el código producido durante los pasos anteriores
  • 3. Compilador se define por como este haya sido constituido o de que función deba realizar pero las tareas básicas son las mismas, entre los mas importantes se puede mencionar de una pasada , múltiples pasadas, y de carga y ejecución. Un compilador realiza una contante interacción entre dos elementos muy importantes que son: la tabla de símbolos y el manejador de errores, utilizados constantemente en las etapas de este
  • 5.
  • 6. ANALIZADOR LEXICO es la primera fase de un compilador consistente en un programa que recibe como entrada el código fuente de otro programa (secuencia de caracteres) y produce una salida compuesta de tokens (componentes léxicos) o símbolos. Estos tokens sirven para una posterior etapa del proceso de traducción, siendo la entrada para el analizador sintáctico ( en ingles parser)
  • 7. ANALIZADOR SINTACTICO el análisis sintáctico convierte el texto de entrada en otras estructuras(comúnmente arboles) que son mas útiles para el posterior análisis y capturan la jerarquía implícita de la entrada
  • 8. ANALIZADOR SEMANTICO revisa el programa fuente para tratar de encontrar errores semánticos y reúne la información sobre los tipos para la fase posterior de generación de código
  • 9. GENERADOR DE CODIGO INTERMEDIO se puede considerar esta representación intermedia como un programa para una maquina abstracta, esta representación intermedia debe tener dos propiedades importantes; debe ser fácil de producir y fácil de traducir al programa objeto
  • 10. OPTIMADOR DE CODIGO la fase de optimización de código consiste en mejorar el código intermedio, de modo que resulte un código maquina mas rápido de ejecutar
  • 11. GENERADOR DE CODIGO es una de las faces mediante el cual un compilador convierte un programa sintácticamente correcto en una serie de instrucciones a ser interpretadas por una maquina
  • 13. •¡¡Los programas no siempre son correctos!! •El compilador tiene que: –Reportar clara y exactamente la presencia de errores –Recuperarse de cada error lo suficientemente rápido para poder detectar errores subsiguientes –Tratar de evitar mensajes falsos de error
  • 15. Errores Léxicos •Un error que produce un token erróneo •Errores léxicos posibles –Un identificador, palabra reservada u operador mal escrito (typo
  • 16. Errores Sintácticos •Un programa que no satisface la CFG del lenguaje •Ejemplos –Expresión aritmética con paréntesis no balanceados –Un punto y coma faltante
  • 17. Errores Semánticos •Un error que necesita información sensitiva al contexto para ser identificado •Ejemplos –Un operador aplicado a un tipo incompatible de operando –Acezar una variable no declarada
  • 18. Errores Lógicos •Errores en el modelo de ejecución •Ejemplos –Recursión infinita –Acezar un arreglo fuera de los límites –De referenciar un nullpointe