análisis sintáctico descendente sin retroceso - Blearning
análisis sintáctico descendente sin retroceso - Blearning análisis sintáctico descendente sin retroceso - Blearning
Construcción de analizadores sintácticos descendentes Métodos basados directamente en la sintaxis Ejemplo 2: Expresión-simple La regla de producción A → SA | λ o A → SA | S se traduce a una sentencia repetitiva + - termino expr_simple ( ) { OR if ((token == MAS) || (token == MENOS)) { get_token( ); } termino ( ); while ((token == MAS) || (token == MENOS) || (token == OR)) { get_token( ); termino ( ); } } + - termino Página 46
Construcción de analizadores sintácticos descendentes Analizadores sintácticos descendentes recursivos La condición necesaria para que un analizador descendente recursivo opere correctamente es que la gramática del lenguaje fuente sea LL(1). Se considera a cada regla de la gramática como la definición de una función o método que reconocerá al no terminal de la parte izquierda. El lado derecho de la regla especifica la estructura del código para ese método o función. Los símbolos terminales corresponden a concordancias con la entrada. Los símbolos no terminales con llamadas a funciones o métodos. Las diferentes alternativas a casos condicionales en función de lo que se esté examinando en la entrada. Página 47
- Page 1 and 2: Universidad de Oviedo - Departament
- Page 3 and 4: Introducción Contenido El problema
- Page 5 and 6: Introducción A. Sintáctico Descen
- Page 7 and 8: El problema del retroceso Análisis
- Page 9 and 10: El problema del retroceso Análisis
- Page 11 and 12: El problema del retroceso Análisis
- Page 13 and 14: Análisis sintáctico descendente c
- Page 15 and 16: Teorema S-gramáticas Análisis sin
- Page 17 and 18: Análisis sintáctico descendente s
- Page 19 and 20: Análisis sintáctico descendente s
- Page 21 and 22: Ejemplos: S → A B e A → d B A
- Page 23 and 24: Análisis sintáctico descendente s
- Page 25 and 26: Análisis sintáctico descendente s
- Page 27 and 28: Ejemplos: Análisis sintáctico des
- Page 29 and 30: Definición Análisis sintáctico d
- Page 31 and 32: Análisis sintáctico descendente s
- Page 33 and 34: Análisis sintáctico descendente s
- Page 35 and 36: 1ª) Transformación S → aAc A
- Page 37 and 38: Análisis sintáctico descendente s
- Page 39 and 40: Análisis sintáctico descendente s
- Page 41 and 42: Análisis sintáctico descendente s
- Page 43 and 44: Construcción de analizadores sint
- Page 45: Construcción de analizadores sint
- Page 49 and 50: Construcción de analizadores sint
- Page 51 and 52: Construcción de analizadores sint
- Page 53 and 54: Construcción de analizadores sint
- Page 55 and 56: Construcción de analizadores sint
- Page 57 and 58: Construcción de analizadores sint
- Page 59 and 60: Construcción de analizadores sint
- Page 61 and 62: Tratamiento de errores sintácticos
- Page 63 and 64: Tratamiento de errores sintácticos
- Page 65 and 66: Tratamiento de errores sintácticos
- Page 67 and 68: Tratamiento de errores sintácticos
- Page 69 and 70: Tratamiento de errores sintácticos
Construcción de analizadores <strong><strong>sin</strong>táctico</strong>s <strong>descendente</strong>s<br />
Analizadores <strong><strong>sin</strong>táctico</strong>s <strong>descendente</strong>s recursivos<br />
La condición necesaria para que un analizador <strong>descendente</strong> recursivo<br />
opere correctamente es que la gramática del lenguaje fuente sea LL(1).<br />
Se considera a cada regla de la gramática como la definición de una<br />
función o método que reconocerá al no terminal de la parte izquierda.<br />
El lado derecho de la regla especifica la estructura del código para ese<br />
método o función.<br />
Los símbolos terminales corresponden a concordancias con la entrada.<br />
Los símbolos no terminales con llamadas a funciones o métodos.<br />
Las diferentes alternativas a casos condicionales en función de lo que<br />
se esté examinando en la entrada.<br />
Página 47