Informatica Traductores
Tema 4
Introducción
• Ahora asociaremos ATRIBUTOS (información) a los símbolos gramaticales. • Un símbolo puede tener 1, ninguno, o muchos atributosdiferentes. • La notación que utilizamos para los atributos es la misma que para las propiedades de los objetos. • En cierta manera hay un parecido entre:
– – – – símbolo gramátical ≈ clase Instancia deun símbolo ≈ objeto Atributo de un símbolo ≈ propiedad del objeto Todos las instancias del mismo símbolo tienen los mismos atributos aunque sus valores concretos pueden ser diferentes. – Paradistinguir entre las distintas instancias de un mismo símbolo utilizamos subíndices.
• A las reglas sintácticas le añadimos reglas ‘semánticas’ que indican cómo se manipulan estos atributos.
Ejemplo:una calculadora
Reglas sintácticas
entrada → entrada expr ‘;’ entrada → ξ expr → expr1 ‘+’ sum expr → sum sum → sum1 ‘*’ factor sum → factor factor → ‘-’ factor1 factor → NUM factor → ‘(‘ expr ‘)’Símbolo expr sum factor NUM Atributo expr.s sum.s factor.s NUM.lexval expr.s := expr1.s + sum.s expr.s := sum.s sum.s := sum1.s * factor.s sum.s := factor.s factor.s := - factor1.s factor.s := NUM.lexvalfactor.s := expr.s
Reglas semánticas
Escribe(expr.s)
Los Atributos pretendemos que sean el valor del subárbol de análisis que soportan
A todo esto le llamamos una Definición Dirigida porSintaxis
Ejemplo de árbol decorado
entrada entrada expr Ejemplo de entrada: 2+3*4; ; 14 sum
ξ En paralelo al árbol de análisis Vamos construyendo un grafo con los atributos. La flecha indicacómo fluye la információn (la dependencia que indican las reglas semánticas)
expr sum factor NUM
2 2 2 2
+
12 factor NUM 4
Analizador léxico
sum factor NUM
3 3 3
*
4Analizador léxico
Analizador léxico
Razonamiento inductivo
• Para comprender la definición dirigida por sintaxis anterior es conveniente razonar inductivamente: • Los casos base se resuelven a...
Regístrate para leer el documento completo.