Documente Academic
Documente Profesional
Documente Cultură
SIMBOLOS
INTEGRANTES:
• FLORES QUEZADA, OLIVER
• LLAVE VERGARAY, JOSÉ
• MARCOS CAMBELL, ROSSLEE
• PAREDES VENTURA, DEIVY
• VACA PASTOR, ARNOLD
ASIGNATURA:
AUTÓMATAS Y COMPILADORES
DEFINICIÓN Y FORMAS DE
01 ALMACENAMIENTO
6
CONTENIDO DE UNA TABLA
DE SÍMBOLOS
7
Una forma de organización simple es imaginar la TS
como una tabla con una serie de filas, cada fila contiene
una lista de atributos que están asociados a un
identificador.
8
1 2
Nombre de Lista de atributos
Dirección
identificador
3 4
5 6
7 8
Tamaño máximo o Tipo y forma de
rango acceso
FORMA DE
ALMACENAMIENTO
Más tarde las normas ANSI
e ISO de los lenguajes C,
C++ y PASCAL permiten un
El primer problema en la organización mínimo de 31 caracteres
de la TS es la variación en la longitud
de los nombres de los identificadores. En los lenguajes como C y
C++ se puede utilizar un
En las primeras versiones de los campo del tipo puntero a
lenguajes de los años sesenta tales carater (char *) y reservar la
como el BASIC y el FORTRAN, los memoria dinámica
identificadores tenían como máximo necesaria en cada caso.
seis caracteres significativos
Lenguajes como C++, Java,
C#, etc. se puede utilizar
directamente el tipo String
10
11
FUNCIÓN
DE LA TABLA DE
SIMBOLOS DENTRO
DE UN COMPILADOR
12
La Tabla de símbolos es una importante estructura
de datos creada y mantenida por los compiladores
con el fin de almacenar información acerca de la oc
urrencia de diversas entidades, tales como nombre
s de
variables, nombres de funciones, objetos, clases,
interfaces, etc.
1 2 Guardar información
Almacena la información que en referente a cualquier
cada momento se necesita sobre identificador creado
las variables del programa por el usuario
FUNCIONES
Para almacenar los 3 4
nombres de todas las
Efectuar chequeos semánticos
entidades de forma
estructurada en un sol
o lugar.
Puntos importantes acerca de la Tabla de
símbolos (TS)
15
DEFINICION DE
PALABRAS
RESERVADAS E
INSTRUCCIONES
16
CONSIDERACIONES SOBRE LA TABLA
DE SÍMBOLOS
17
En la implementación de la tabla de símbolos nos
creamos un Tipo Abstracto de Datos (Se utilizará una lista
por simplicidad. Lo mejor es usar otra estructura más
eficiente. Por ejemplo un árbol AVL).
18
PALABRAS RESERVADAS
Inserta(“div”, div);
Inserta(“mod”, mod);
20
• Es utilizada por el compilador para asociar a cada símbolo
del programa fuente (identificadores, constantes,…, etc) un
contenido semántico.
22
TIPOS DE ALMACENAMIENTO
TIPOS ESTRUCTURADOS TIPOS ARCHIVOS O FICHEROS
TIPOS SIMPLE
Entero, Real,Caracter Arrays Y Struct
1 2 3
6 5 4
LÉXICO DINÁMICO
26
BUSQUEDA DE LEXEMAS
Tabla de símbolos:
Donde última entrada direcciona la última entidad registrada y
último_lexema la primera localidad disponible donde se registran los
lexemas. La función BUSQUEDA se guía bajo el siguiente algoritmo:
BUSQUEDA DE LEXEMAS E INSERCIÓN DE
LEXEMAS
Donde LONGITUD es una función que determina el número de caracteres que
conforman al lexema insertado.