Beruflich Dokumente
Kultur Dokumente
LENGUAJES Y AUTOMATAS II
Carrera
INGENIERIA EN SISTEMAS COMPUTACIONALES
Presenta:
DIEGO JIMENEZ REYES
Docente
M.C.C. RODOLFO LUNA PEREZ
ANLISIS SEMNTICO
la
comprobar
ESPECIFICACIN SEMNTICA
Existen dos formas de describir la semntica de un lenguaje de programacin: mediante
especificacin informal o natural y formal.
DESCRIPCIN INFORMAL.- Es llevada a cabo mediante el lenguaje natural. Esto hace
que la especificacin sea inteligible (en principio) para cualquier persona. La experiencia
nos dice que es una tarea muy compleja, si no imposible, el describir
todas
las
ocupa su valor).
Tabla de smbolos. Como hemos mencionado previamente, la utilizacin de
gramticas libres de contexto (de tipo 2) no permite expresar caractersticas
representables con gramticas sensibles al contexto como la necesidad de que la
utilizacin de una variable en el lenguaje Pascal requiera la declaracin previa de
la variable utilizada. Para poder implementar un procesador del lenguaje Pascal
empleando gramticas de tipo 2 e implementaciones de autmatas de pila, es
necesario emplear una estructura de datos auxiliar denominada tabla de
smbolos. Esta estructura de datos, a su nivel ms bsico, es un diccionario
(memoria asociativa) que asocia identificadores a la informacin requerida por el
compilador. Sus dos operaciones bsicas son insertar y buscar.
PROGRAMAS OBJETO
La salida del generador de cdigo es el programa objeto. Esta salida puede adoptar una
variedad de formas: lenguaje de mquina absoluto, lenguaje de mquina re-localizable o
lenguaje ensamblador.
ADMINISTRACIN DE LA MEMORIA
La correspondencia entre los nombres del programa fuente con direcciones de objetos de
datos en la memoria durante la ejecucin la realiza la etapa inicial en cooperacin con el
generador de cdigo. Se usa la suposicin de que un nombre en una proposicin de tres
direcciones se refiere a una entrada en la tabla de smbolos para el nombre. Las entradas
de la tabla de smbolos se van creando conforme se examinan las declaraciones de un
SELECCIN DE INSTRUCCIONES
ASIGNACIN DE REGISTROS
Las instrucciones que implican operandos en registros son ms cortas y rpidas que las
de operandos en memoria. El uso de registros se divide en 2 sub-problemas:
1. Durante la asignacin de los registros, se selecciona el conjunto de variables que
residir en los registros en un momento del programa.
2. Durante una fase posterior de asignacin a los registros, se escoge el registro
especfico en el que residir una variable.
Funcin obtenreg
1. Si el nombre y est en un registro que no contiene el valor de otros nombres, e y
no est activa y no tiene uso siguiente despus de la ejecucin de x:= y op z,
entonces se devuelve el registro de y para L.
2. Si falla (1), devulvase un registro vaci para L si hay alguno.
3. Si no se utiliza x en el bloque, o no se puede encontrar ningn registro ocupado
adecuado, seleccinese la posicin de memoria de x para L.
BIBLIOGRAFA