SlideShare una empresa de Scribd logo
1 de 16
Los compiladores son programas de
computadora que traducen de un
lenguaje a otro.
Un compilador toma como su entrada
un programa escrito en lenguaje
fuente y produce un programa
equivalente escrito en lenguaje
objeto.
A lo largo del proceso de traducción el
compilador debe informar la presencia de errores
en el lenguaje fuente.
Análisis Léxico
Análisis Sintáctico
Análisis Semántico
Generación y Optimización de
código intermedio
Generación de código objeto
Lee la secuencia de caracteres de
izquierda a derecha del Programa
fuente y agrupa las secuencias de
caracteres en unidades con
significado propio.
 Palabras clave
 Identificadores
 Operadores
 Constantes numéricas
 Signos de puntuación
Separadores de
sentencias, llaves,
paréntesis, etc.
Componentes léxicos o
“tokens” en ingles
Ejemplo:
A[i] = 4 + 2;
A identificador
[ corchete de apertura
i Identificador
] corchete de cierre
= operador de asignación
4 numero
+ operador suma
2 numero
; punto y coma
Se realiza un análisis símbolo a símbolo indicando el tóken
para cada una de las cadenas reconocidas o un error en caso
de no reconocer la cadena.
Area = base * altura / 2
Id1 = Id2 * Id3 / 2
ANALIZADOR
LÉXICO
Determina si la secuencia de
componentes léxicos sigue la sintaxis
del lenguaje y obtiene la estructura
jerárquica del programa en forma de
árbol, donde los nodos son las
construcciones de alto nivel del
lenguaje.
Se determinan las relaciones estructurales entre
los componentes léxicos.
Representa un elemento estructural
denominado expresión, la cual es una
expresión de asignación compuesta de
una expresión de subíndice a la izquierda
y una expresión aritmética a la derecha.
De ejemplo
anterior:
A[i] = 4 + 2;
EXPRESIÓN DE SUBÍNDICE EXPRESIÓN ARITMÉTICA
ÁRBOL DE ANÁLISIS GRAMATICAL
Expresión
Expresión Expresión
Expresión de asignación
Expresión
aditiva
Expresión
índice
ExpresiónExpresión Expresión Expresión
Id A Id i Numero 4 Numero 2
Los árboles de análisis gramatical son útiles para
visualizar la sintaxis de un programa pero no es
eficaz en la representación de esa estructura. Los
analizadores sintácticos tienden a generar un
árbol sintáctico
Una simplificación de la
información contenida en
un árbol de análisis
gramatical.
Id A Id i Numero 4 Numero 2
Realiza las comprobaciones necesarias
sobre el árbol sintáctico para determinar el
correcto significado del programa.
 La verificación e inferencia de tipos en asignaciones y
expresiones.
 La declaración del tipo de variables y funciones antes
de su uso
 El correcto uso de operadores
 El ámbito de las variables
 La correcta llamada a funciones.
 En análisis semántico es necesario hacer
uso de la Tabla de símbolos, como
estructura de datos para almacenar
información sobre los identificadores que
van surgiendo a lo largo del programa.
 El analizador semántico registrara el árbol
sintáctico con los tipos de datos de las
expresiones y verificara que la asignación
tiene sentido para los tipos, en caso
contrario mandara un mensaje de error en
correspondencia de tipos.
Id A Id i
Numero 4 Numero 2
Tomando el
mismo ejemplo:
Tipo: entero
Tipo: entero Tipo: entero
Tipo: entero
Tipo: entero Tipo: entero
Constante Constante
 Facilitar el proceso de optimización.
 Facilitar la traducción al lenguaje de la máquina.
 Compatibilización (el análisis será independiente de
la computadora física).
Se traduce el programa
fuente a otro lenguaje más
sencillo.
Genera un código mejorado, ya no
estructurado, más fácil de traducir
directamente a código
ensamblador o máquina
Construye el programa objeto,
esto es, se genera el código en
ensamblador, propio de la
plataforma en la que se ejecutará
el programa. La tabla de
símbolos contendrá
normalmente información
detallada sobre la memoria
utilizada por las variables.

Más contenido relacionado

La actualidad más candente

Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)YJGG
 
Lecture 01 introduction to compiler
Lecture 01 introduction to compilerLecture 01 introduction to compiler
Lecture 01 introduction to compilerIffat Anjum
 
Compiladores - Flex y Bison
Compiladores - Flex y BisonCompiladores - Flex y Bison
Compiladores - Flex y BisonSteven Tabango
 
Comparación de lenguajes de programación
Comparación de lenguajes de programaciónComparación de lenguajes de programación
Comparación de lenguajes de programaciónSebastian D Valenzuela
 
Compiler Design Basics
Compiler Design BasicsCompiler Design Basics
Compiler Design BasicsAkhil Kaushik
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesIsrael Castillo Cruz
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico maryr_
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNda4
 
Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Fj Lezama
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacionguest9a91e2
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formalesIsabel
 
Compiler construction tools
Compiler construction toolsCompiler construction tools
Compiler construction toolsAkhil Kaushik
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacionJose Marroquin
 

La actualidad más candente (20)

Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Lecture 01 introduction to compiler
Lecture 01 introduction to compilerLecture 01 introduction to compiler
Lecture 01 introduction to compiler
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Compiladores - Flex y Bison
Compiladores - Flex y BisonCompiladores - Flex y Bison
Compiladores - Flex y Bison
 
Analisis lexico automatas i
Analisis lexico automatas iAnalisis lexico automatas i
Analisis lexico automatas i
 
Ensamblador y lenguaje c
Ensamblador y lenguaje cEnsamblador y lenguaje c
Ensamblador y lenguaje c
 
Analisis Semantico
Analisis Semantico Analisis Semantico
Analisis Semantico
 
Compiladores conceptos
Compiladores conceptosCompiladores conceptos
Compiladores conceptos
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Comparación de lenguajes de programación
Comparación de lenguajes de programaciónComparación de lenguajes de programación
Comparación de lenguajes de programación
 
Compiler Design Basics
Compiler Design BasicsCompiler Design Basics
Compiler Design Basics
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretes
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
 
Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacion
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
 
Compiler construction tools
Compiler construction toolsCompiler construction tools
Compiler construction tools
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
 

Destacado

Herramientas
HerramientasHerramientas
HerramientasIsabel
 
Expresiones Regulares
Expresiones RegularesExpresiones Regulares
Expresiones RegularesIsabel
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De CompiladorBigbossH
 
Compiladores
CompiladoresCompiladores
Compiladoresdrakul09
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2perlallamas
 
Automatas y compiladores clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3Germania Rodriguez
 

Destacado (9)

Herramientas
HerramientasHerramientas
Herramientas
 
Expresiones Regulares
Expresiones RegularesExpresiones Regulares
Expresiones Regulares
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De Compilador
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2
 
Compiladores, Analisis Lexico, Tabla de Transiciones
Compiladores, Analisis Lexico, Tabla de TransicionesCompiladores, Analisis Lexico, Tabla de Transiciones
Compiladores, Analisis Lexico, Tabla de Transiciones
 
Automatas y compiladores clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3
 
Compilador
CompiladorCompilador
Compilador
 
Compiladores
CompiladoresCompiladores
Compiladores
 

Similar a Compiladores

Actividad 2 programacion de sistemas
Actividad 2 programacion de sistemasActividad 2 programacion de sistemas
Actividad 2 programacion de sistemasJESSIKADG86
 
TALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOTALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOJOSSELINEMARIBEL
 
Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15AndresDvila
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS Infomania pro
 
Actividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptx
Actividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptxActividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptx
Actividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptxYahirSnchezDjMix
 
Compiladores
CompiladoresCompiladores
Compiladoresdianajim
 
Unidad4 analisis-semantico
Unidad4 analisis-semanticoUnidad4 analisis-semantico
Unidad4 analisis-semanticoInfomania pro
 
Analisis semantico 06 06-2019 galarraga
Analisis semantico  06 06-2019 galarragaAnalisis semantico  06 06-2019 galarraga
Analisis semantico 06 06-2019 galarragaFabricio Galárraga
 
Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico Alex Toapanta
 
Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.Dispositivosmoviles
 
Compiladores Ex..ppt
Compiladores Ex..pptCompiladores Ex..ppt
Compiladores Ex..pptMarko Zapata
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador SintacticoBayo Chicaiza
 
Clase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoClase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoInfomania pro
 
diaposichap.pptx
diaposichap.pptxdiaposichap.pptx
diaposichap.pptxLuisSimn12
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexicoJhampier_Piedra
 

Similar a Compiladores (20)

investigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdfinvestigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdf
 
investigacion.pdf
investigacion.pdfinvestigacion.pdf
investigacion.pdf
 
lexico.pptx
lexico.pptxlexico.pptx
lexico.pptx
 
Actividad 2 programacion de sistemas
Actividad 2 programacion de sistemasActividad 2 programacion de sistemas
Actividad 2 programacion de sistemas
 
TALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOTALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICO
 
Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 
Compiladores (1) pedro vasques
Compiladores (1) pedro vasquesCompiladores (1) pedro vasques
Compiladores (1) pedro vasques
 
Actividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptx
Actividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptxActividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptx
Actividad 4.4 y 4.5 Lenguajes y Autómatas Edinson Yahir Sánchez Velázquez.pptx
 
Curso prog sist
Curso prog sistCurso prog sist
Curso prog sist
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Unidad4 analisis-semantico
Unidad4 analisis-semanticoUnidad4 analisis-semantico
Unidad4 analisis-semantico
 
Analisis semantico 06 06-2019 galarraga
Analisis semantico  06 06-2019 galarragaAnalisis semantico  06 06-2019 galarraga
Analisis semantico 06 06-2019 galarraga
 
Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico
 
Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.
 
Compiladores Ex..ppt
Compiladores Ex..pptCompiladores Ex..ppt
Compiladores Ex..ppt
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador Sintactico
 
Clase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexicoClase6 conceptos del analisis lexico
Clase6 conceptos del analisis lexico
 
diaposichap.pptx
diaposichap.pptxdiaposichap.pptx
diaposichap.pptx
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexico
 

Más de Isabel

Isabel trejo reconocimientofacial_evidencia1
Isabel trejo reconocimientofacial_evidencia1Isabel trejo reconocimientofacial_evidencia1
Isabel trejo reconocimientofacial_evidencia1Isabel
 
Algortimos
AlgortimosAlgortimos
AlgortimosIsabel
 
Unidad 3
Unidad 3Unidad 3
Unidad 3Isabel
 
Unidad 3
Unidad 3Unidad 3
Unidad 3Isabel
 
Factores
FactoresFactores
FactoresIsabel
 
Software de alta calidad
Software de alta calidadSoftware de alta calidad
Software de alta calidadIsabel
 
Unidad 2
Unidad 2Unidad 2
Unidad 2Isabel
 
Historia
HistoriaHistoria
HistoriaIsabel
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datosIsabel
 
Mda informatica
Mda informaticaMda informatica
Mda informaticaIsabel
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicosIsabel
 
Unidad 1 ciclo de vida
Unidad 1 ciclo de vidaUnidad 1 ciclo de vida
Unidad 1 ciclo de vidaIsabel
 
Roles desarrollo software
Roles desarrollo softwareRoles desarrollo software
Roles desarrollo softwareIsabel
 
Unidad 1 conceptos introductorios
Unidad 1 conceptos introductoriosUnidad 1 conceptos introductorios
Unidad 1 conceptos introductoriosIsabel
 
Tablas dinámicas
Tablas dinámicasTablas dinámicas
Tablas dinámicasIsabel
 
Referencia de celdas
Referencia de celdasReferencia de celdas
Referencia de celdasIsabel
 
Practica no.2
Practica no.2Practica no.2
Practica no.2Isabel
 
Componentes de un sistema de base de datos
Componentes de un sistema de base de datosComponentes de un sistema de base de datos
Componentes de un sistema de base de datosIsabel
 

Más de Isabel (20)

Isabel trejo reconocimientofacial_evidencia1
Isabel trejo reconocimientofacial_evidencia1Isabel trejo reconocimientofacial_evidencia1
Isabel trejo reconocimientofacial_evidencia1
 
Gmail
GmailGmail
Gmail
 
Algortimos
AlgortimosAlgortimos
Algortimos
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Factores
FactoresFactores
Factores
 
Software de alta calidad
Software de alta calidadSoftware de alta calidad
Software de alta calidad
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Historia
HistoriaHistoria
Historia
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
Mda informatica
Mda informaticaMda informatica
Mda informatica
 
Sgbd
SgbdSgbd
Sgbd
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicos
 
Unidad 1 ciclo de vida
Unidad 1 ciclo de vidaUnidad 1 ciclo de vida
Unidad 1 ciclo de vida
 
Roles desarrollo software
Roles desarrollo softwareRoles desarrollo software
Roles desarrollo software
 
Unidad 1 conceptos introductorios
Unidad 1 conceptos introductoriosUnidad 1 conceptos introductorios
Unidad 1 conceptos introductorios
 
Tablas dinámicas
Tablas dinámicasTablas dinámicas
Tablas dinámicas
 
Referencia de celdas
Referencia de celdasReferencia de celdas
Referencia de celdas
 
Practica no.2
Practica no.2Practica no.2
Practica no.2
 
Componentes de un sistema de base de datos
Componentes de un sistema de base de datosComponentes de un sistema de base de datos
Componentes de un sistema de base de datos
 

Último

CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 

Último (20)

CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 

Compiladores

  • 1.
  • 2. Los compiladores son programas de computadora que traducen de un lenguaje a otro. Un compilador toma como su entrada un programa escrito en lenguaje fuente y produce un programa equivalente escrito en lenguaje objeto. A lo largo del proceso de traducción el compilador debe informar la presencia de errores en el lenguaje fuente.
  • 3. Análisis Léxico Análisis Sintáctico Análisis Semántico Generación y Optimización de código intermedio Generación de código objeto
  • 4. Lee la secuencia de caracteres de izquierda a derecha del Programa fuente y agrupa las secuencias de caracteres en unidades con significado propio.  Palabras clave  Identificadores  Operadores  Constantes numéricas  Signos de puntuación Separadores de sentencias, llaves, paréntesis, etc. Componentes léxicos o “tokens” en ingles
  • 5. Ejemplo: A[i] = 4 + 2; A identificador [ corchete de apertura i Identificador ] corchete de cierre = operador de asignación 4 numero + operador suma 2 numero ; punto y coma Se realiza un análisis símbolo a símbolo indicando el tóken para cada una de las cadenas reconocidas o un error en caso de no reconocer la cadena.
  • 6. Area = base * altura / 2 Id1 = Id2 * Id3 / 2 ANALIZADOR LÉXICO
  • 7. Determina si la secuencia de componentes léxicos sigue la sintaxis del lenguaje y obtiene la estructura jerárquica del programa en forma de árbol, donde los nodos son las construcciones de alto nivel del lenguaje. Se determinan las relaciones estructurales entre los componentes léxicos.
  • 8. Representa un elemento estructural denominado expresión, la cual es una expresión de asignación compuesta de una expresión de subíndice a la izquierda y una expresión aritmética a la derecha. De ejemplo anterior: A[i] = 4 + 2; EXPRESIÓN DE SUBÍNDICE EXPRESIÓN ARITMÉTICA ÁRBOL DE ANÁLISIS GRAMATICAL
  • 9. Expresión Expresión Expresión Expresión de asignación Expresión aditiva Expresión índice ExpresiónExpresión Expresión Expresión Id A Id i Numero 4 Numero 2
  • 10. Los árboles de análisis gramatical son útiles para visualizar la sintaxis de un programa pero no es eficaz en la representación de esa estructura. Los analizadores sintácticos tienden a generar un árbol sintáctico Una simplificación de la información contenida en un árbol de análisis gramatical. Id A Id i Numero 4 Numero 2
  • 11. Realiza las comprobaciones necesarias sobre el árbol sintáctico para determinar el correcto significado del programa.  La verificación e inferencia de tipos en asignaciones y expresiones.  La declaración del tipo de variables y funciones antes de su uso  El correcto uso de operadores  El ámbito de las variables  La correcta llamada a funciones.
  • 12.  En análisis semántico es necesario hacer uso de la Tabla de símbolos, como estructura de datos para almacenar información sobre los identificadores que van surgiendo a lo largo del programa.  El analizador semántico registrara el árbol sintáctico con los tipos de datos de las expresiones y verificara que la asignación tiene sentido para los tipos, en caso contrario mandara un mensaje de error en correspondencia de tipos.
  • 13. Id A Id i Numero 4 Numero 2 Tomando el mismo ejemplo: Tipo: entero Tipo: entero Tipo: entero Tipo: entero Tipo: entero Tipo: entero Constante Constante
  • 14.  Facilitar el proceso de optimización.  Facilitar la traducción al lenguaje de la máquina.  Compatibilización (el análisis será independiente de la computadora física). Se traduce el programa fuente a otro lenguaje más sencillo.
  • 15. Genera un código mejorado, ya no estructurado, más fácil de traducir directamente a código ensamblador o máquina
  • 16. Construye el programa objeto, esto es, se genera el código en ensamblador, propio de la plataforma en la que se ejecutará el programa. La tabla de símbolos contendrá normalmente información detallada sobre la memoria utilizada por las variables.