SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Was ist angesagt?

Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasYESENIA CETINA
 
La maquina de Turing, sus tipos y aplicaciones.
La maquina de Turing, sus tipos y aplicaciones.La maquina de Turing, sus tipos y aplicaciones.
La maquina de Turing, sus tipos y aplicaciones.Emmanuel Colon
 
Arquitecturas de pizarra o repositório
Arquitecturas de pizarra o repositórioArquitecturas de pizarra o repositório
Arquitecturas de pizarra o repositóriorehoscript
 
REGISTRO DE BANDERAS
REGISTRO DE BANDERASREGISTRO DE BANDERAS
REGISTRO DE BANDERASFabian Rojas
 
Unidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacionUnidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacionIrving Che
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS Infomania pro
 
Modelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de InformaciónModelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de InformaciónIsaias Toledo
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasYESENIA CETINA
 
Planificación de proyectos de software
Planificación de proyectos de softwarePlanificación de proyectos de software
Planificación de proyectos de softwarehrubenleiva21
 
Manuel torres mapa_mental
Manuel torres mapa_mentalManuel torres mapa_mental
Manuel torres mapa_mentalMrx Mirrorx
 
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
 
Generaciones De Los Sistemas Operativos
Generaciones De Los Sistemas OperativosGeneraciones De Los Sistemas Operativos
Generaciones De Los Sistemas OperativosEduardo Correa
 
Metricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionMetricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionJose Diaz Silva
 

Was ist angesagt? (20)

Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadoras
 
La maquina de Turing, sus tipos y aplicaciones.
La maquina de Turing, sus tipos y aplicaciones.La maquina de Turing, sus tipos y aplicaciones.
La maquina de Turing, sus tipos y aplicaciones.
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
Arquitecturas de pizarra o repositório
Arquitecturas de pizarra o repositórioArquitecturas de pizarra o repositório
Arquitecturas de pizarra o repositório
 
REGISTRO DE BANDERAS
REGISTRO DE BANDERASREGISTRO DE BANDERAS
REGISTRO DE BANDERAS
 
Unidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacionUnidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacion
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 
Estimación de Proyectos de Software
Estimación de Proyectos de SoftwareEstimación de Proyectos de Software
Estimación de Proyectos de Software
 
macros Lenguaje ensamblador
macros Lenguaje ensambladormacros Lenguaje ensamblador
macros Lenguaje ensamblador
 
Segmentacion de memoria
Segmentacion de memoriaSegmentacion de memoria
Segmentacion de memoria
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
Modelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de InformaciónModelos Prescriptivos del Desarrollo del Sistema de Información
Modelos Prescriptivos del Desarrollo del Sistema de Información
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadoras
 
Planificación de proyectos de software
Planificación de proyectos de softwarePlanificación de proyectos de software
Planificación de proyectos de software
 
Manuel torres mapa_mental
Manuel torres mapa_mentalManuel torres mapa_mental
Manuel torres mapa_mental
 
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
 
Generaciones De Los Sistemas Operativos
Generaciones De Los Sistemas OperativosGeneraciones De Los Sistemas Operativos
Generaciones De Los Sistemas Operativos
 
Metricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionMetricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccion
 
Sistema de interconexion interna
Sistema de interconexion internaSistema de interconexion interna
Sistema de interconexion interna
 
Sistemas de archivos ext y discos opticos
Sistemas de archivos ext y discos opticosSistemas de archivos ext y discos opticos
Sistemas de archivos ext y discos opticos
 

Ähnlich wie Automatas y compiladores analisis sintactico

Automatas y compiladores clase1
Automatas y compiladores clase1Automatas y compiladores clase1
Automatas y compiladores clase1Germania Rodriguez
 
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
Analizador SintacticoAnalizador Sintactico
Analizador SintacticoBayo Chicaiza
 
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
 

Ähnlich wie Automatas y compiladores analisis sintactico (20)

Automatas y compiladores clase1
Automatas y compiladores clase1Automatas y compiladores clase1
Automatas y compiladores clase1
 
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
Analizador SintacticoAnalizador Sintactico
Analizador Sintactico
 
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
 
Analisis Semantico
Analisis Semantico Analisis Semantico
Analisis Semantico
 
Estructura ensamblador
Estructura ensambladorEstructura ensamblador
Estructura ensamblador
 

Mehr von 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 clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3Germania 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
 

Mehr von 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 clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3
 
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
 

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