Está en la página 1de 14

Unidad I: Análisis semántico

Lenguajes y Autómatas II
MTI. Rosa Imelda García Chi

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


1.3 Comprobaciones de
tipos en expresiones

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


COMPROBACIONES SEMÁNTICAS

Comprobaciones ESTÁTICAS.
• Las comprobaciones sintácticas y semánticas.

Comprobaciones DINÁMICAS.
• Realizadas en tiempo de ejecución.

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


Comprobaciones SEMÁNTICAS
• De TIPO.
• Verificación del tipo de los operandos en las expresiones.
• De FLUJO de CONTROL.
• Verifica los puntos del programa de salida y entrada del
control.
• De UNICIDAD.
• Verifica la presencia de símbolos de forma única.
• (ejemplo: declarar un símbolo una sóla vez).
• Relación de NOMBRES.
• Un mismo nombre puede aparecer más de una vez.

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


Sistemas de tipo:
– Sistema de tipos: conjunto de reglas que determinan
el criterio para asignar expresiones de tipo a las
diferentes partes del código fuente.
– Tipo básico: entero, carácter, real, lógico (Tipo de
Dato Abstracto o TDA)
– Nombres de tipo
– Constructores de tipo: estructuras, uniones, objetos
– Apuntadores: referencias a tipos
– Funciones a=suma();

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


Chequeos de tipos (y otros)
Un compilador debe realizar una serie de chequeos
estáticos, como chequeos de tipos:
• Consistencia: unicidad, existencia, no-ciclicidad, ...
• Equivalencia y compatibilidad de tipos
• Conversión explícita [cast] o forzada [coercion]
• Inferencia de tipos (en valores)
• Sobrecarga de funciones y operadores

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


Representaciones internas

Intermedias entre frontal [front-end] y dorsal [back-


end], permiten desacoplar los diseños de unos y
otros.

Orientadas a:
• Su optimización (instrucciones claras y simples)
• Generar código de distintas máquinas objeto y el diseño debe
permitir su fácil generación por el analizador semántico.

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


EXPRESIONES DE TIPOS
• Tipos básicos (Tipos simples) son expresiones
de tipo.
• Ejemplo: boolean, char, integer, real, ...
• Una expresión de tipos puede ser nombrada
por un nombre.
• Un nombre de tipos es una expresión de tipos.
• En una expresión de tipo pueden aparecer
VARIABLES DE TIPOS.

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


CONSTRUCTORES DE TIPOS

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


…CONSTRUCTORES DE TIPOS

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


REPRESENTACIÓN DE LAS EXPRESIONES DE TIPOS

Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi


Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi
Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi
ESPECIFICACIÓN DE UN COMPROBADOR DE TIPOS ELEMENTAL

Un comprobador de tipos ha de disponer de:


• Asignación de tipos.
• Comprobador de tipos en las expresiones.
• Comprobador de tipos en las proposiciones o
sentencias.
• Comprobador de tipos de las funciones.

Básicamente se advierten dos tareas:


• De asignación.
• De evaluación y comprobación.
Lenguajes y Autómatas 2 MTI. Rosa Imelda García Chi

También podría gustarte