La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Autómatas y Compiladores Semana 13. Ricardo Vargas Del Valle A35469.

Presentaciones similares


Presentación del tema: "Autómatas y Compiladores Semana 13. Ricardo Vargas Del Valle A35469."— Transcripción de la presentación:

1 Autómatas y Compiladores Semana 13. Ricardo Vargas Del Valle A35469

2 Algoritmos con los que trabaja el Analizador Sintáctico: Algoritmo para el análisis sintáctico predictivo:

3 Algoritmo para encontrar Primero(a). Primero(α) es el conjunto de tokens que están al principio de las hileras derivadas a partir de α. Primero(α) es el conjunto de tokens que están al principio de las hileras derivadas a partir de α.

4 Algoritmo para encontrar Siguiente(A). Siguiente(A) es el conjunto de terminales ‘a’ que pueden aparecer inmediatamente a la derecha de A en una sentencia. Siguiente(A) es el conjunto de terminales ‘a’ que pueden aparecer inmediatamente a la derecha de A en una sentencia.

5 Creación de la tabla sintáctica (Parsing Table, LL(1)) Para crear la tabla sintáctica hay que seguir el siguiente algoritmo: Para crear la tabla sintáctica hay que seguir el siguiente algoritmo:

6 Tabla Sintáctica (Parsing Table) Para la gramática: Para la gramática: Siguiendo los algoritmos anteriores se construye la siguiente tabla: Siguiendo los algoritmos anteriores se construye la siguiente tabla:

7 Gramáticas LL(1) Definición: Definición: Es una gramática cuya tabla de análisis sintáctico no tiene entradas con definiciones múltiples.

8 Gramáricas LL(1) Propiedades: Propiedades: Ninguna gramática ambígua o recursiva por la izquierda puede ser LL(1). Ninguna gramática ambígua o recursiva por la izquierda puede ser LL(1). Una gramática G es LL(1) si y solo si, cuando A  a|b sean dos producciones distintas de G se cumple que: Una gramática G es LL(1) si y solo si, cuando A  a|b sean dos producciones distintas de G se cumple que: Para ningún terminal, tanto a como b derivan cadenas que comiencen con el terminal. Para ningún terminal, tanto a como b derivan cadenas que comiencen con el terminal. A lo sumo una de a y b puede derivar la cadena. A lo sumo una de a y b puede derivar la cadena. Si b =*=> 0, a no deriva ninguna cadena que comience con un terminal en Sig(A). Si b =*=> 0, a no deriva ninguna cadena que comience con un terminal en Sig(A).

9 Bibliografía Notas del Curso, Autómatas y Compiladores, II Ciclo – 2007. Notas del Curso, Autómatas y Compiladores, II Ciclo – 2007. Compiladores: Principios, técnicas y herramientas. Alfred Aho, Jeffrey Ullman. Addison-Wesley. 1990. Compiladores: Principios, técnicas y herramientas. Alfred Aho, Jeffrey Ullman. Addison-Wesley. 1990.


Descargar ppt "Autómatas y Compiladores Semana 13. Ricardo Vargas Del Valle A35469."

Presentaciones similares


Anuncios Google