Proyecto Final Educación Superior Dinámico
Miguel Rodríguez
Created on November 20, 2024
Over 30 million people create interactive content in Genially.
Check out what others have designed:
THE MESOZOIC ERA
Presentation
ALL THE THINGS
Presentation
ASTL
Presentation
ENGLISH IRREGULAR VERBS
Presentation
VISUAL COMMUNICATION AND STORYTELLING
Presentation
GROWTH MINDSET
Presentation
BLENDED LEARNING
Presentation
Transcript
lr(0) y slrcompiladores
ingenieria en sistemas computacionalesR
Autor/a: Miguel Ángel Rodríguez Rodríguez
20/11/2024
TABLA DE CONTENIDO
07.limitaciones del lr(0)
01.definiciones
08.concluciones
06.limitaciones del slr
05.desventajas
04.ventajas
03.comparacion tabular
02.ejemplos graficos
definiciones
03
01. definiciones
definicion de un lr(0)
Un analizador LR(0) es un tipo de autómata de pila utilizado en el análisis sintáctico de lenguajes formales. El término LR se refiere a: L (Left to right): El análisis de la entrada se realiza de izquierda a derecha. R (Rightmost derivation): El análisis construye una derivación en la que se reduce a partir de la parte derecha.
01. definiciones
slr
El analizador SLR es una mejora del LR(0) que también realiza un análisis de izquierda a derecha y una derivación a partir de la parte derecha, pero tiene la capacidad de manejar más gramáticas debido al uso de los Follow sets. Un Follow set de un no terminal es el conjunto de símbolos que pueden seguir a ese no terminal en alguna derivación. Los Follow sets permiten al analizador decidir cuándo realizar una reducción en lugar de un desplazamiento, dependiendo de los símbolos siguientes en la entrada.
ejemplos graficos
01
01. ejemplos graficos
1. Autómata de un Analizador LR(0)
Estado 0: S → •A A → •aA A → •b (Entrada: 'a', 'b') Estado 1: S → A• (Entrada: fin) Estado 2: A → a•A (Entrada: 'a', 'b') Estado 3: A → b• (Entrada: 'a', 'b')
01. ejemplos graficos
2. Autómata de un Analizador SLR
Estado 0: S → •A A → •aA A → •b (Entrada: 'a', 'b') Estado 1: S → A• (Entrada: '$') Estado 2: A → a•A (Entrada: 'a', 'b') Estado 3: A → b• (Entrada: 'a', 'b') Acción en Estado 3: Si el siguiente símbolo es en el Follow(A) → Reducir A → b
tabla
04
04. tabla
ventajas
03
03. ventajas
lr(0)
- Simplicidad: Es más fácil de implementar que otros analizadores LR porque no utiliza lookahead ni Follow sets.
- Velocidad: Debido a su simplicidad, los analizadores LR(0) tienden a ser rápidos en la ejecución, ya que realizan menos verificaciones y decisiones.
slr
- Mayor poder expresivo: Gracias al uso de los Follow sets, los analizadores SLR pueden manejar una mayor variedad de gramáticas que los analizadores LR(0).
- Mejor resolución de conflictos: Los Follow sets permiten resolver muchos de los conflictos de desplazamiento-reducción que ocurren en LR(0).
limitaciones
03
03. limitaciones
lr(0)
- Limitado en gramáticas: No puede manejar gramáticas complejas, especialmente aquellas que requieren lookahead o resolución de conflictos de desplazamiento-reducción.
- Conflictos de desplazamiento-reducción: Dado que no considera el contexto adicional, puede ser incapaz de resolver conflictos donde se necesita más información.
slr
- Mayor complejidad: La implementación de un analizador SLR es más compleja debido a la necesidad de calcular y usar los Follow sets.
- Puede ser menos eficiente: Aunque resuelve más gramáticas que LR(0), puede requerir más memoria y tiempo para generar las tablas de análisis, especialmente para gramáticas grandes.