Professional Documents
Culture Documents
int x;
x = 4.32;
if (x || 5) x = 0;
QU ES UN RBOL SEMNTICO?
Es una estructura jerrquica en la cual se registran las operaciones que implica u opera
dentro del programa fuente.
En cada una de las ramas del rbol semntico se registra el valor o significado que este
debe tener, y el anlisis se encarga de terminar cual de los valores registrados en las ramas
es aplicable.
Ejemplo: Suponiendo que tenemos esta lnea de cdigo en C:
res = valor1 + valor2;
En C el smbolo (+) implica una suma de valores o una unin de las cadenas.
El anlisis semntico se va a encargar que tanto el valor1 como el valor2 tengan datos
que son compatibles en comn y que adems se les pueda aplicar dicho operador
TABLA DE SMBOLOS
Un compilador necesita guardar y usar la informacin de los objetos que se va
encontrando en el texto fuente, como variables, etiquetas, declaraciones de tipos, etc.
Esta informacin se almacena en una estructura de datos interna conocida como tabla
de smbolos.
SISTEMAS DE TIPO
Es el conjunto de reglas que determinan el criterio para asignar expresiones de tipo a
las diferentes partes del cdigo fuente.
Tipo bsico: entero, carcter, real, lgico
Nombres de tipo
Constructores de tipo: estructuras, uniones, objetos
Apuntadores: referencias a tipos
Funciones a=suma();
Chequeos de tipos (y otros)
Un compilador debe realizar una serie de chequeos estticos, como chequeos de tipos:
Consistencia: unicidad, existencia, no-ciclicidad, ...
Equivalencia y compatibilidad de tipos
Conversin explcita [cast] o forzada [coercion]
Inferencia de tipos (en valores)
Sobrecarga de funciones y operadores
COMPROBACIONES SEMNTICAS
Comprobaciones ESTTICAS. Las comprobaciones sintcticas y semnticas.
Comprobaciones DINMICAS. Realizadas en tiempo de ejecucin.
Comprobaciones SEMNTICAS
v De TIPO. Verificacin del tipo de los operandos en las expresiones.
v De FLUJO de CONTROL. Verifica los puntos del programa de salida y entrada del control.
v De UNICIDAD. Verifica la presencia de smbolos de forma nica. (ejemplo: declarar un
smbolo una sola vez).
v Relacin de NOMBRES. Un mismo nombre puede aparecer ms de una vez.
REPRESENTACIONES INTERNAS
Intermedias entre frontal [front-end] y dorsal [back-end], permiten desacoplar los diseos
de unos y otros. Orientadas a: Su optimizacin (instrucciones claras y simples). Generar
cdigo de distintas mquinas objeto y el diseo debe permitir su fcil generacin por el
analizador semntico.
BIBLIOGRAFIA:
http://www.slideshare.net/pepgonzalez/analisis-semantico
http://www.ecured.cu/index.php/Teor%C3%ADa_de_compiladores
Analisis Semantico
Introduccion
Aqui les mostraremos un poco de lo que es la definicion
de los siguientes conceptos en cuanto analisis
semantico y los subtemas que veremos en la primera
unidad de lenguajes y automatas 2
el objetivo de esta unidad es definir, disear, construir y
programarlas fases de el analizador lexico y sintactico
de un traductoro compilador.
Analisis Semantico
ACCIONES SEMNTICAS
Bibliografia
http://progsistemasf7.blogspot.mx/2010/10/pila-
semantica-en-un-analizador.html
http://www.lcc.uma.es/~galvez/ftp/tci/tictema5.pdf
http://cic.puj.edu.co/wiki/lib/exe/fetch.php?media=mater
ias:compi:comp_sesion16_2008-1.pdf
http://progsistemasf7.blogspot.mx/2010/10/57-manejo-
de-errores-semanticos_9697.html
http://www.lsi.uned.es/procleng/apuntes/2010-
2011/PDL.11.Tema7.AnalisisSemantico.Comprobacion
DeTipos.pdf
http://www.slideshare.net/pepgonzalez/analisis-
semantico