Lenguajes y Automatas
Ingenieria en Sistemas Computacionales
Apuntes de
LENGUAJES Y AUTOMATAS II
por
Ing. Luis Fernando Gil Vázquez
Octubre de 2013
ITL
Lenguajes y Autómatas II
Ing. Fernando Gil
Temario
I
Análisis semántico
1.1 Analizador semántico
2.2 Verificación de tipos en expresiones.
1.3 Conversión de tipos.
1.4 Acciones agregadas en un analizador sintáctico descendente (top-down).
1.5 Pila semántica en un analizador sintáctico ascendente (bottom-up).
1.6 Administración de la tabla de símbolos.
1.7 Manejo de errores semánticos.
II
Generación de código intermedio.
2.1 Lenguajes intermedios.
2.2 Notaciones.
2.2.1 Infija.
2.2.2 Postfija.
2.2.3 Prefija.
2.3 Representación …ver más…
Una definición dirigida por la sintáxis usa una gramática para especificar la estructura sintáctica de la entrada.
A cada símbolo de la gramática se le asocia un conjunto de atributos y a cada producción un conjunto de reglas semánticas, para calcular los valores de los atributos asociados con los símbolos que aparecen en esa producción. Las definiciones dirigidas por la sintáxis no solo se utilizan para la comprobación de tipos, se puede usar para transformar una sentencia o cadena de entrada a cualquier forma de salida.
Ejemplo: Definición dirigida por la sintáxis para traducir expresiones infijas a postfijas:
PRODUCCION expr→ expr1 + término expr→ expr1 - término expr→ término termino→0 termino→ 1
…… termino→ 9
REGLA SEMÁNTICA expr.t := expr1.t || término.t
|| ‘+’ expr.t := expr1.t || término.t
|| ‘-’ expr.t := término.t termino.t := termino.t :=
‘0’
‘1’
termino.t :=
‘9’
……
Pag. 6
ITL
Lenguajes y Autómatas II
Infija
9–5+2
Postfija
Ing. Fernando Gil
95–2+ operando operando operador
expr.t="95-2" expr.t="95-" expr.t="9"
-
+
termino.t="2"
termino.t="5"
termino.t="9"
'2'
'5'
'9'
Tipos de atributos.
sintetizados