Tarea 2_López
Tabla de símbolos
Su creación, procedimiento, pasos e instrucciones.
CREACIÓN DE LA TABLA DE SIMBOLOS
La tabla de
símbolos es una estructura de datos muy importante en CASI todo el proceso de
compilación. En ella se guarda durante las primeras fases de compilación los
nombres de los identificadores (símbolos) usados en el programa fuente, además
de los atributos de cada uno de estos identificadores. Estos identificadores y
símbolos junto con sus atributos serán usados posteriormente para realizar
funciones como el chequeo de tipos, la asignación de memoria, generación de
código objeto etc.
Un compilador necesita guardar y usar la
información de los objetos que se va encontrando en el texto fuente, como
variables, etiquetas, declaraciones de tipos, etc.
Esta información se
almacena en una estructura de datos interna conocida como tabla de símbolos.
TABLA DE SIMBOLOS
Contenido
de la tabla de símbolos.
Identificadores
Tipos
de datos
Palabras
reservadas
Sentencias
o instrucciones
Comentarios
Expresiones
Operaciones
Esencialmente la
información que aparece en la tabla de símbolos es de dos tipos:
·
El propio símbolo,
y
·
Los atributos necesarios para definir el símbolo a nivel
semántico y de generación de código.
Operaciones
sobre la tabla de símbolos.
·
INSERTAR
·
CONSULTAR
·
MODIFICAR (añadir atributos nuevos)
El CUANDO y el CÓMO se usan estas
operaciones dependen del tipo de lenguaje:
Lenguajes con DECLARACIONES DE
VARIABLES:
·
Explícitas:
ü
Declaraciones: sólo INSERTAR.
ü
Referencia: sólo CONSULTAR.
·
Implícitas:
ü
CONSULTAR si no está ya incluida.
ü
INSERTAR, en caso contrario.
ü
Lenguajes con estructura de BLOQUE: CREAR SUBTABLAS
•
Operadores relacionales: <, <=, >, >=, == y !=.
•
Operadores de operaciones con bits:
<< Corrimiento
a la izquierda.
>> Corrimiento
a la derecha.
& And
| Or
^ Xor
• Operadores
Lógicos:
&& And
|| Or
! Not
OPERADORES DE ASIGNACIÓN
= Asignación.
*= Asignación de
producto.
/= Asignación de
cociente.
%= Asignación de
residuo.
+= Asignación de
suma.
-= Asignación de
diferencia.
<<= Asignación
de corrimiento a la izquierda.
>>= Asignación
de corrimiento a la derecha.
&= Asignación de
And de bits.
^= Asignación de Xor
de bits.
|= Asignación de
Or de bits.
OPERADORES DE PERTENENCIA A CLASES
:: Resolución
de área de visualización de
clases.
. y * Apuntadores de referencia de un apuntador
a un miembro de una clase.
-> y * Apuntadores de
referencia a apuntadores de un miembro de una clase.
Etc.
Etc. Etc.
Me encanto la info me quedó mas clara que tendré EB un exam en unos mituns
ResponderEliminar