prueba

Páginas: 6 (1451 palabras) Publicado: 29 de octubre de 2014
Compiladores pagina 278
¿En que son útiles ciertos tipos de gramáticas ambiguas? Hable de ambos
Para las construcciones de lenguajes como las expresiones, una gramática ambigua proporciona una especificación más corta y natural que cualquier gramática no ambigua equivalente.
Precedencia y asociatividad para resolver conflictos: Esta gramática es ambigua, ya que no especifica la asociatividadni la precedencia de los operadores + y *.
La ambigüedad del “else colgante: esta gramática no tiene ambigüedades, ya que no resuelve la ambigüedad del else colgante.
¿Cómo es la recuperación de errores en el análisis sintáctico LR?
En el análisis sintáctico LR, podemos implementar la recuperación de errores en modo de pánico de la siguiente manera. Exploramos la pila en forma descendentehasta encontrar un estado s con un ir_A en un no terminal A específico. Después, se descartan cero o más símbolos de entrada hasta encontrar un símbolo a que pueda seguir a A de manera legítima. A conti­ nuación, el analizador sintáctico mete el estado ir_A(s, A) en la pila y continúa con el análisis sintáctico normal.
¿Cómo es la recuperación a nivel de frase?
Para implementar la recuperación anivel de frase, examinamos cada entrada de error en la tabla de análisis sintáctico LR y decidimos, en base al uso del lenguaje, el error más probable del programador que pudiera ocasionar ese error.
¿Qué sucede al diseñar rutinas de manejo de errores específicas?
Al diseñar rutinas de manejo de errores específicas para un analizador sintáctico LR, podemos rellenar cada entrada en blanco en elcampo de acción con un apuntador a una rutina de error que tome la acción apropiada, seleccionada por el diseñador del compilador. Las acciones pueden incluir la inserción o eliminación de símbolos de la pila o de la entrada (o de ambas), o la alteración y transposición de los símbolos de entrada. Debemos realizar nuestras elecciones de tal forma que el analizador sintáctico LR no entre en un cicloinfinito.
¿Cómo es el generador de analizadores YACC?
Yacc significa “yet another compiler-compiler” (otro compilador-de compiladores más), lo cual refleja la popularidad de los generadores de analizadores sintácticos a principios de la década de 1970, cuando S. C. Johnson creó la primera versión de Yacc. Este generador está disponible en forma de comando en el sistema en UNIX, y se ha utilizadopara ayudar a implementar muchos compiladores de producción.
Grafique la creación de una traducción de entrada/salida con YACC?

¿Cuáles son las dos secciones en la parte de las declaraciones de un programa YACC?
En la primera sección, colocamos las declaraciones ordinarias en C, delimitadas mediante. Aquí colocamos las declaraciones de cualquier valor temporal usado por las reglas detraducción o los procedimientos de las secciones segunda y tercera. Además, en la parte de las declaraciones se encuentran las declaraciones de los tokens de gramática. Los tokens declarados en esta sección pueden usarse en las partes segunda y tercera de la especificación de Yacc.
¿Cómo es la parte de la regla de traducción?
En la parte de la especificación de Yacc después del primer par de %%, colocamoslas reglas de traducción. Cada regla consiste en una producción gramatical y la acción semántica asociada.
¿Cómo es el uso de YACC con gramáticas ambiguas?
Como la gramática en la especificación de Yacc es ambigua, el algoritmo LALR generará conflictos de acciones de análisis sintáctico. Yacc reporta el número de conflictos de acciones de análisis sin táctico que se generan. Podemos obtener unadescripción de los conjuntos de elementos y los conflictos de acciones de análisis sintáctico si invocamos a Yacc con una opción.
Las dos reglas que YACC resolverá todos los conflictos.
A me nos que se indique lo contrario, Yacc resolverá todos los conflictos de las acciones de análisis sin táctico mediante las siguientes dos reglas:
1. Un conflicto de reducción/reducción se resuelve...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Prueba
  • Prueba
  • Prueba
  • Prueba
  • Prueba
  • Pruebas
  • Pruebas
  • Prueba

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS