Vous êtes sur la page 1sur 17

|  

Diseño y Construcción de Compiladores


2 ©lmacena todos los nombres declarados en el
programa y sus atributos (tipo, valor, dirección,
parámetros, etc.)

2 Se usa en las distintas fases del compilador para:


Ń Recuperar los atributos de un nombre.
Ń Verificar que todos los identificadores son declarados
antes de utilizarlos (cuando el lenguaje así lo requiere).
Ń Detectar múltiples definiciones de un identificador en un
mismo alcance (cuando el lenguaje así lo requiere).
Ń Permitir la declaración de un mismo nombre alcances
diferentes (cuando el lenguaje así lo requiere).
Ń Etc.

|   

2 ^nformación de los nombres declarados

2 ^nformación relacionada con la estructura


de los tipos.

`    |   

2 uista

2 Árbol

2 Tabla de Hash

G
 


    
   
 

TT

Tabla de ^dentificadores ©lcance

Posible ^mplementación
  
ÿSimple de implementar.
ÿuenta cuando se trabaja con muchos identificadores

|   

 
 

TT

Raíz ^zq. Der. Tabla de ^d.


Posible ^mplementación
  
ÿRápida
ÿPuede degenerarse en una lista
ÿConsume más memoria
ÿEs útil cuando hay muchas declaraciones
|   

 
  
P
O
S
^

u
E

^
Sinónimos Tabla de ^d. ©lcance M
p
  
ÿRápido
ÿMás difícil de implementar
Tabla de Hash ÿSe debe definir una función de hash apropiada
para evitar las colisiones

|   

 
 

        

G  
 |   

    

2 Parte Fija

  `
 |      !
ë Variable ^ndica tipo: Dirección de Cantidad de
Simple. ÿ ásico Memoria. requerido.
«.. ÿPredefinido
N variable ÿDefinido por
Estructurada. el usuario

G   |   
  
  

2 Parte Variante
Ń Depende del objeto computacional asociado
con el identificador.
2 Variable Simple: la parte variante es vacía
excepto cuando se admitan valores de
inicialización.
2 Variable Estructurada ©rreglo

|  "     #    

G   |   
  
  

2 Procedimiento o Función
` ! ! |  $ 
!   ! |  
!   !

G   |   
  
  

        

ÿParte Fija

 |      %& 

G   |   
  
| 

2 Parte Variante: depende del tipo


Ń Para un tipo entero se puede colocar en esta
parte el tamaño.
Ń Para un escalar: consta de una lista con los
nombres del escalar y el valor asociado a ellos.
Ń Subrango: consta de valor inicial, valor final y
un puntero al tipo base.
Ń Etc.

G   |   
  
| 

2 Operacione básicas de una TS

Ń búsqueda: ^d. ! ^nteger

Ń inserción: ^d. x Descriptor ! oolean

Ń actualizar©ttr: ^d x ©ttr ! oolean

Ń obtener©tributo: ^d. X ©ttr ! Valor_©ttr

m  

  

 

2 uenguajes Estructurados a loques

Ń Tareas realizadas cuando se ingresa a un nuevo


bloque.

Ń Tareas realizadas cuando se finaliza el análisis


de un bloque.

m  

  

 
 '
( 

 
 '
 (  
2 Compilers: Principles, Techniques and
Tools. ©ho, Setti and Ullman. (The Dragon
r)
2 ©puntes de la Materia (Capítulo de uibro y
Transparencia).

2 uiss, © uinguagem e o ©mbiente de


Programaçao. Cruz, Daniela. (Tabela de
Definiçoes)

  ( #
 racias por su atención

Vous aimerez peut-être aussi