SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
Teoría de Autómatas y
    Compiladores

      Germania Rodríguez
     grrodriguez@utpl.edu.ec
Análisis Sintáctico
•  Determina la sintaxis, o estructura de un
   programa.
•  L a s i n t a x i s d e u n l e n g u a j e d e
   programación se lo determina mediante
   reglas gramaticales de una gramática libre
   de contexto similar a las ER en el análisis
   léxico con la diferencia que son recursivos.
•  Los algoritmos utilizados para reconocer
   estas estructuras difieren del léxico ya que
   utilizan llamadas recursivas o una pila de
   AS.
Análisis Sintáctico
•  El AS involucra tener que elegir entre
   varios métodos diferentes con sus
   propiedades y capacidades, existen dos
   categorías basados en la manera en que
   construyen el árbol de análisis gramáticas
   o sintáctico: descendente o ascendente.
Análisis Sintáctico – Proceso
             Código fuente
     Analizador léxico o rasterador
                 Tokens
         Analizador Sintáctico
             Árbol sintáctico
         Analizador Semántico
          Árbol con anotaciones
     Optimizador de código fuente
           Código intermedio
         Generador de código
             Código objetivo
     Optimizador de código objetivo
            Código Objetivo
Análisis Sintáctico - Proceso
•  La tarea del AS es determinar la estructura
   sintáctica de un programa a partir de los
   tokens producidos por el AL.
•  En resumen una función que toma como
   entrada la secuencia de tokens y salida el
   AS.

   Secuencia de tokens  árbol sintáctico
Análisis Sintáctico - Proceso
  – Compiladores de una pasada no generan árbol
    sintáctico explícito.
  – Compiladores de múltiples pasadas – las
    pasadas utilizaran el árbol como su entrada.
•  El árbol se define como estructura de datos
   dinámica, nodos, atributos, campos del
   atributo.
•  Manejo de errores, no solo mostrar
   mensaje sino recuperarse (inferir código
   corregido) y continuar el análisis, para
   encontrar tantos errores como sea posible.
Gramática: definiciones
•  Estructuras
•  Derivación directa
•  Gramáticas equivalentes
Gramática
•  Tipos
  – Tipo 3: Regulares de acuerdo al formato de
    producción pueden ser:
     •  Lineales a la derecha:
           A  aB
           Aa
     •  Lineales a la izquierda
           A  Ba
           Aa
  – Tipo 2: Libre de contexto
     •  A  B siempre independiente del contexto
Gramáticas
•  Tipos
  – Tipo 1: Sensibles al contexto

  – Tipo 0: Sin restricciones respecto a su formato
Gramáticas
Si el lenguaje Li generado por la gramática i
 entonces se cumple que
Gramática Libre de Contexto
•  Especificación para la estructura sintáctica
   de un lenguaje de programación, muy similar
   a la estructura léxica.




•  Se define a través de Reglas Gramaticales
   RG
Gramática Libre de Contexto:
      Comparación RG con las ER
•  Utilizan notación semejante en ER:
  – Operaciones ER: =, concatenación, selección
    |, repetición *,
  – Operaciones RG: , concatenación, selección
    |, recursividad.
  – Ejm:
     exp  exp op exp | (exp) | número
     op  + | - | *
  – Las ER son sobre caracteres y las RG son
    sobre tokens.
Derivación
RG
     exp  exp op exp | (exp) | número
     op  + | - | *


EJEMPLO:
   (34-3) * 42
Árbol de Análisis Sintáctico
RG
                   exp
             exp op exp

           (exp)    * número
      número – número
Árbol de Análisis Sintáctico Abstracto
RG
                  *
              -        42

         34        3
Bibliografía
•  Kenneth C. Louden, Construccion de Compiladores
   Principios Y Práctica
•  Universidad Jaume, Open Course Ware –II20 Teoría de
   autómatas y lenguajes formales en: http://e-ujier.uji.es/pls/
  w w w / ! g r i _ w w w . e u j i 2 2 1 0 1 ?
  p_id=7&p_tipo=A&p_curso=II20&p_idioma=ES

Mais conteúdo relacionado

Mais procurados

Análisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoAnálisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoangiepao1717
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionjorge severino
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARESAnel Sosa
 
Típos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretesTípos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretesElmer André Boulangger Alberca
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interpreteperlallamas
 
Organización y arquitectura de computadores
Organización y arquitectura de computadoresOrganización y arquitectura de computadores
Organización y arquitectura de computadoresSofylutqm
 
Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfazXavi Flores
 
Automatas y compiladores clase1
Automatas y compiladores clase1Automatas y compiladores clase1
Automatas y compiladores clase1Germania Rodriguez
 
Automatas y compiladores clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3Germania Rodriguez
 

Mais procurados (20)

Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Análisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoAnálisis léxico y análisis sintáctico
Análisis léxico y análisis sintáctico
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacion
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARES
 
Investigacion errores lexicos
Investigacion errores lexicosInvestigacion errores lexicos
Investigacion errores lexicos
 
Típos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretesTípos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretes
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interprete
 
TALLER FLEX Y BISON
TALLER FLEX Y BISONTALLER FLEX Y BISON
TALLER FLEX Y BISON
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Organización y arquitectura de computadores
Organización y arquitectura de computadoresOrganización y arquitectura de computadores
Organización y arquitectura de computadores
 
Decompilador y metacompilador
Decompilador y metacompiladorDecompilador y metacompilador
Decompilador y metacompilador
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfaz
 
Automatas y compiladores clase1
Automatas y compiladores clase1Automatas y compiladores clase1
Automatas y compiladores clase1
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
TABLA DE SÍMBOLOS
TABLA DE SÍMBOLOSTABLA DE SÍMBOLOS
TABLA DE SÍMBOLOS
 
Comandos debug
Comandos debugComandos debug
Comandos debug
 
Tema 1 introducción compilador
Tema 1 introducción compiladorTema 1 introducción compilador
Tema 1 introducción compilador
 
Revisando la jerarquía de chomsky
Revisando la jerarquía de chomskyRevisando la jerarquía de chomsky
Revisando la jerarquía de chomsky
 
Automatas y compiladores clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3
 

Semelhante a Automatas y compiladores analisis sintactico

Unidad4 analisis-semantico
Unidad4 analisis-semanticoUnidad4 analisis-semantico
Unidad4 analisis-semanticoInfomania pro
 
Analizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador SintácticoAnalizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador SintácticoRaul Gomez
 
Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15AndresDvila
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexicoJhampier_Piedra
 
ERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptx
ERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptxERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptx
ERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptxAngelesAguilar29
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS Infomania pro
 
Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019DanielRosero23
 
Taller análisis sintáctico
Taller análisis sintácticoTaller análisis sintáctico
Taller análisis sintácticoSantiago Andrade
 
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
 
Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2Universidad
 
Cap6
Cap6Cap6
Cap6CJAO
 
diaposichap.pptx
diaposichap.pptxdiaposichap.pptx
diaposichap.pptxLuisSimn12
 
Estructura ensamblador
Estructura ensambladorEstructura ensamblador
Estructura ensambladoremoOzitHa
 

Semelhante a Automatas y compiladores analisis sintactico (20)

Unidad4 analisis-semantico
Unidad4 analisis-semanticoUnidad4 analisis-semantico
Unidad4 analisis-semantico
 
Analizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador SintácticoAnalizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador Sintáctico
 
Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexico
 
Compilador2
Compilador2Compilador2
Compilador2
 
ERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptx
ERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptxERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptx
ERRORES LEXICOS Y GENERADORES DE ANALISIS LEXICOS.pptx
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 
ANALISIS SEMANTICO
ANALISIS SEMANTICO ANALISIS SEMANTICO
ANALISIS SEMANTICO
 
Taller análisis sintáctico
Taller análisis sintácticoTaller análisis sintáctico
Taller análisis sintáctico
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semantico
 
Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019
 
Taller análisis sintáctico
Taller análisis sintácticoTaller análisis sintáctico
Taller análisis sintáctico
 
Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico
 
Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2
 
Análisis Sintáctico
Análisis SintácticoAnálisis Sintáctico
Análisis Sintáctico
 
Cap6
Cap6Cap6
Cap6
 
diaposichap.pptx
diaposichap.pptxdiaposichap.pptx
diaposichap.pptx
 
Estructura ensamblador
Estructura ensambladorEstructura ensamblador
Estructura ensamblador
 
Estructura ensamblador
Estructura ensambladorEstructura ensamblador
Estructura ensamblador
 
Curso prog sist
Curso prog sistCurso prog sist
Curso prog sist
 

Mais de Germania Rodriguez

Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...Germania Rodriguez
 
Introducción gestión de proyectos informáticos
Introducción gestión de proyectos informáticosIntroducción gestión de proyectos informáticos
Introducción gestión de proyectos informáticosGermania Rodriguez
 
Tecnologías sociales para OCW
Tecnologías sociales para OCWTecnologías sociales para OCW
Tecnologías sociales para OCWGermania Rodriguez
 
Gestión de ti arquitectura empresarial como programa de gestión, método de an...
Gestión de ti arquitectura empresarial como programa de gestión, método de an...Gestión de ti arquitectura empresarial como programa de gestión, método de an...
Gestión de ti arquitectura empresarial como programa de gestión, método de an...Germania Rodriguez
 
Gestión de ti arquitectura empresarial
Gestión de ti arquitectura empresarialGestión de ti arquitectura empresarial
Gestión de ti arquitectura empresarialGermania Rodriguez
 
Gestión de ti introduccion cobit itil pmi
Gestión de ti introduccion cobit itil pmiGestión de ti introduccion cobit itil pmi
Gestión de ti introduccion cobit itil pmiGermania Rodriguez
 
Presentación Open Day Oportunidad UTPL
Presentación Open Day Oportunidad UTPLPresentación Open Day Oportunidad UTPL
Presentación Open Day Oportunidad UTPLGermania Rodriguez
 
Presentación ddi 2012 proyecto cepra
Presentación ddi 2012 proyecto cepraPresentación ddi 2012 proyecto cepra
Presentación ddi 2012 proyecto cepraGermania Rodriguez
 
Automatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxicoAutomatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxicoGermania Rodriguez
 
Arquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseñoArquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseñoGermania Rodriguez
 
Automatas y compiladores clase4
Automatas y compiladores clase4Automatas y compiladores clase4
Automatas y compiladores clase4Germania Rodriguez
 
Automatas y compiladores clase2
Automatas y compiladores clase2Automatas y compiladores clase2
Automatas y compiladores clase2Germania Rodriguez
 
Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3Germania Rodriguez
 
Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2Germania Rodriguez
 
Sociedad de información evolucion ti
Sociedad de información evolucion tiSociedad de información evolucion ti
Sociedad de información evolucion tiGermania Rodriguez
 
IntroduccióN Sociedad De InformacióN
IntroduccióN Sociedad De InformacióNIntroduccióN Sociedad De InformacióN
IntroduccióN Sociedad De InformacióNGermania Rodriguez
 
Gestion del conocimiento caso UTPL
Gestion del conocimiento caso UTPLGestion del conocimiento caso UTPL
Gestion del conocimiento caso UTPLGermania Rodriguez
 

Mais de Germania Rodriguez (20)

Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
 
Gestión de proyectos PMBok
Gestión de proyectos PMBokGestión de proyectos PMBok
Gestión de proyectos PMBok
 
Introducción gestión de proyectos informáticos
Introducción gestión de proyectos informáticosIntroducción gestión de proyectos informáticos
Introducción gestión de proyectos informáticos
 
Tecnologías sociales para OCW
Tecnologías sociales para OCWTecnologías sociales para OCW
Tecnologías sociales para OCW
 
Gestión de ti arquitectura empresarial como programa de gestión, método de an...
Gestión de ti arquitectura empresarial como programa de gestión, método de an...Gestión de ti arquitectura empresarial como programa de gestión, método de an...
Gestión de ti arquitectura empresarial como programa de gestión, método de an...
 
Gestión de ti arquitectura empresarial
Gestión de ti arquitectura empresarialGestión de ti arquitectura empresarial
Gestión de ti arquitectura empresarial
 
Gestión de ti introduccion cobit itil pmi
Gestión de ti introduccion cobit itil pmiGestión de ti introduccion cobit itil pmi
Gestión de ti introduccion cobit itil pmi
 
Presentación Open Day Oportunidad UTPL
Presentación Open Day Oportunidad UTPLPresentación Open Day Oportunidad UTPL
Presentación Open Day Oportunidad UTPL
 
Presentación ddi 2012 proyecto cepra
Presentación ddi 2012 proyecto cepraPresentación ddi 2012 proyecto cepra
Presentación ddi 2012 proyecto cepra
 
Automatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxicoAutomatas y compiladores tablas de transición análisis léxico
Automatas y compiladores tablas de transición análisis léxico
 
Arquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseñoArquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseño
 
Automatas y compiladores clase4
Automatas y compiladores clase4Automatas y compiladores clase4
Automatas y compiladores clase4
 
Automatas y compiladores clase2
Automatas y compiladores clase2Automatas y compiladores clase2
Automatas y compiladores clase2
 
Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3
 
Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2
 
Si nueva economia junio 2010
Si nueva economia junio 2010Si nueva economia junio 2010
Si nueva economia junio 2010
 
Sociedad de información evolucion ti
Sociedad de información evolucion tiSociedad de información evolucion ti
Sociedad de información evolucion ti
 
IntroduccióN Sociedad De InformacióN
IntroduccióN Sociedad De InformacióNIntroduccióN Sociedad De InformacióN
IntroduccióN Sociedad De InformacióN
 
Fotos Naturaleza Grrodriguez
Fotos Naturaleza GrrodriguezFotos Naturaleza Grrodriguez
Fotos Naturaleza Grrodriguez
 
Gestion del conocimiento caso UTPL
Gestion del conocimiento caso UTPLGestion del conocimiento caso UTPL
Gestion del conocimiento caso UTPL
 

Automatas y compiladores analisis sintactico

  • 1. Teoría de Autómatas y Compiladores Germania Rodríguez grrodriguez@utpl.edu.ec
  • 2. Análisis Sintáctico •  Determina la sintaxis, o estructura de un programa. •  L a s i n t a x i s d e u n l e n g u a j e d e programación se lo determina mediante reglas gramaticales de una gramática libre de contexto similar a las ER en el análisis léxico con la diferencia que son recursivos. •  Los algoritmos utilizados para reconocer estas estructuras difieren del léxico ya que utilizan llamadas recursivas o una pila de AS.
  • 3. Análisis Sintáctico •  El AS involucra tener que elegir entre varios métodos diferentes con sus propiedades y capacidades, existen dos categorías basados en la manera en que construyen el árbol de análisis gramáticas o sintáctico: descendente o ascendente.
  • 4. Análisis Sintáctico – Proceso Código fuente Analizador léxico o rasterador Tokens Analizador Sintáctico Árbol sintáctico Analizador Semántico Árbol con anotaciones Optimizador de código fuente Código intermedio Generador de código Código objetivo Optimizador de código objetivo Código Objetivo
  • 5. Análisis Sintáctico - Proceso •  La tarea del AS es determinar la estructura sintáctica de un programa a partir de los tokens producidos por el AL. •  En resumen una función que toma como entrada la secuencia de tokens y salida el AS. Secuencia de tokens  árbol sintáctico
  • 6. Análisis Sintáctico - Proceso – Compiladores de una pasada no generan árbol sintáctico explícito. – Compiladores de múltiples pasadas – las pasadas utilizaran el árbol como su entrada. •  El árbol se define como estructura de datos dinámica, nodos, atributos, campos del atributo. •  Manejo de errores, no solo mostrar mensaje sino recuperarse (inferir código corregido) y continuar el análisis, para encontrar tantos errores como sea posible.
  • 7. Gramática: definiciones •  Estructuras •  Derivación directa •  Gramáticas equivalentes
  • 8. Gramática •  Tipos – Tipo 3: Regulares de acuerdo al formato de producción pueden ser: •  Lineales a la derecha: A  aB Aa •  Lineales a la izquierda A  Ba Aa – Tipo 2: Libre de contexto •  A  B siempre independiente del contexto
  • 9. Gramáticas •  Tipos – Tipo 1: Sensibles al contexto – Tipo 0: Sin restricciones respecto a su formato
  • 10. Gramáticas Si el lenguaje Li generado por la gramática i entonces se cumple que
  • 11. Gramática Libre de Contexto •  Especificación para la estructura sintáctica de un lenguaje de programación, muy similar a la estructura léxica. •  Se define a través de Reglas Gramaticales RG
  • 12. Gramática Libre de Contexto: Comparación RG con las ER •  Utilizan notación semejante en ER: – Operaciones ER: =, concatenación, selección |, repetición *, – Operaciones RG: , concatenación, selección |, recursividad. – Ejm: exp  exp op exp | (exp) | número op  + | - | * – Las ER son sobre caracteres y las RG son sobre tokens.
  • 13. Derivación RG exp  exp op exp | (exp) | número op  + | - | * EJEMPLO: (34-3) * 42
  • 14. Árbol de Análisis Sintáctico RG exp exp op exp (exp) * número número – número
  • 15. Árbol de Análisis Sintáctico Abstracto RG * - 42 34 3
  • 16. Bibliografía •  Kenneth C. Louden, Construccion de Compiladores Principios Y Práctica •  Universidad Jaume, Open Course Ware –II20 Teoría de autómatas y lenguajes formales en: http://e-ujier.uji.es/pls/ w w w / ! g r i _ w w w . e u j i 2 2 1 0 1 ? p_id=7&p_tipo=A&p_curso=II20&p_idioma=ES