Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada pordina betsabé argomedo salazar Modificado hace 6 años
1
TIPOS DE COMPROBACIONES QUE REALIZA UN ANALIZADOR SEMÁNTICO
2
Análisis Semántico Universidad Nacional de Trujillo 2 El análisis semántico dota de un significado coherente a lo que hemos hecho en el análisis sintáctico. El chequeo semántico se encarga de que los tipos que intervienen en las expresiones sean compatibles o que los parámetros reales de una función sean coherentes con los parámetros formales. La fase de análisis semántico tiene que validar que un programa, además de ser sintácticamente correcto, es además coherente con su contexto y por tanto, tiene sentido, puesto que no vamos a sumar números con cadenas o los tipos que se utilizan se hacen de una forma adecuada.
3
Análisis Semántico Universidad Nacional de Trujillo 3 Conversiones de tipos no permitidas int x; x = 4.32; Error: Ej1.java [6:1] possible loss of precision Variables usadas y no definidas Operandos de tipos no compatibles if (x || 5) x = 0; Error: Ej2.java [7:1] operator || cannot be applied to int,int Una de las tareas principales de un compilador en la fase de análisis semántico es el cálculo y mantenimiento de la información en tipos de datos (inferencia de tipos), y el uso de tal información para asegurar que cada parte de un programa tenga sentido bajo las reglas de tipo del lenguaje (verificación de tipos). El Analizador Semántico finaliza la fase de Análisis del compilador y comienza la fase de Síntesis, en la cual se comienza a generar el código objeto. Por lo tanto, los principales errores semánticos son:
4
Acciones Semánticas Universidad Nacional de Trujillo 4 Completar la sección de tipos de la Tabla de Símbolos. Sentencias de Declaración Realizar comprobaciones de tipos entre los operandos implicados. Sentencias “ejecutables” Comprobar si un identificador ha sido declarado antes de utilizarlo. Identificación de variables Comprobar el número, orden y tipo de los parámetros actuales en cada llamada a una función o procedimiento. Funciones y procedimientos PROCESO
5
Completar la sección de tipos de la Tabla de Símbolos. Sentencias de Declaración Realizar comprobaciones de tipos entre los operandos implicados. Sentencias “ejecutables” Comprobar si un identificador ha sido declarado antes de utilizarlo. Identificación de variables Funciones y procedimientos
6
Acciones Semánticas Universidad Nacional de Trujillo 6 Comprobar si hay etiquetas repetidas y validación. Etiquetas Comprobar que no se utilicen en la parte izquierda de una asignación. Constantes Detectar y solventar. Sobrecarga de operadores y funciones Verificación Conversiones y equivalencias de tipo
7
Es esencialmente una Estrategia de Pensamiento Se distingue por su carácter consciente, objetivo, complejo y creador Carácter sistemático y dirigido a un fin Su materia prima son las Ideas 1 2 3 4
8
8 Elección del tema Planteamiento Planteamiento del Problema Antecedentes Justificación Formulación Generales Específicos Marco Teórico Definición de términos Síntesis Criterios Metodología Text goes here Objetivos
9
Elección del tema Objetivos Planeamiento GeneralesEspecíficos Proceso de la Investigación Científica Problema planteamiento AntecedentesJustificación Formulación Marco Teórico Hipótesis Diagnóstico Definición de términos Síntesis Criterio
10
Metodología Informe Procesamiento de datos Población y muestra Recolección de datos Tabulación Codificación Proceso de la Investigación Científica
11
The Power of PowerPoint | thepopp.com 11 Marco Teórico
12
Fuentes de la investigación Experiencia individuales Teorías Material escrito (libro, revista, Periódico y tesis) Material escrito (libro, revista, Periódico y tesis) Conversaciones personales Observación de (hechos, creencias y presentimiento) Observación de (hechos, creencias y presentimiento)
13
The Power of PowerPoint | thepopp.com 13 Observación de (hechos, creencias y presentimiento) Experiencia individuales Conversaciones personales Teorías Material escrito (libro, revista, Periódico y tesis)
14
Observación de (hechos, creencias y presentimiento) Experiencia individuales Conversaciones personales Teorías Material escrito (libro, revista, Periódico y tesis)
15
APLICABLE COMUNICABLE CLARA, CONCISA Y PRECISA UNIVERSAL SISTEMÁTICA INNOVADORA METÓDICA
16
The Power of PowerPoint | thepopp.com 16
17
Los resultados engrosan el patrimonio científico y cultural de la humanidad Las ideas, conocimientos e informaciones, se conectan entre sí de manera lógica y coherente Procedimiento dinámico y creativo, permite renovar constantemente los conocimientos. Se vale de las definiciones, de la creación de lenguajes propios, y de la medición y el registro Los resultados se registran y se expresan en informes o documentos.. Los resultados son útiles y proporcionan aportes concretos. CARACTERÍSTICAS DE LA INVESTIGACIÓN CIENTÍFICA UNIVERSAL APLICABLE COMUNICABLE CLARA, CONCISA Y PRECISA INNOVADORA SISTEMÁTICA METÓDICA Es organizada y planificada, opera según reglas y técnicas que se van perfeccionando con la experiencia.
18
The Power of PowerPoint | thepopp.com 18
19
CONOCER LOS ANTECEDENTES No investigar temas ya estudiados. Estructurar formalmente la idea de investigación. Seleccionar la perspectiva de abordaje del tema. INVESTIGACION PREVIA DE TEMAS Temas ya investigados, estructurados y formalizados. Temas ya investigados pero menos estructurados y formalizados. Temas poco investigados y poco estructurados Temas no investigados. CRITERIOS PARA GENERAR IDEAS Las buenas ideas alientan al investigador. Las ideas no son necesariamente nuevas, pero sí novedosas. Las ideas pueden servir para elaborar teorías y solucionar problemas Pueden ayudar a generar nuevos problemas de investigación.
20
INVESTIGACION PREVIA DE TEMAS No investigar temas ya estudiados. Estructurar formalmente la idea de investigación. Seleccionar la perspectiva de abordaje del tema. Temas ya investigados, estructurados y formalizados. Temas ya investigados pero menos estructurados y formalizados. Temas poco investigados y poco estructurados Temas no investigados. CONOCER LOS ANTECEDENTES Las buenas ideas alientan al investigador. Las ideas no son necesariamente nuevas, pero sí novedosas. Las ideas pueden servir para elaborar teorías y solucionar problemas. CRITERIOS PARA GENERAR IDEAS
21
ESTRUCTURACIÓN DE LA IDEA DE INVESTIGACIÓN CONOCER LOS ANTECEDENTES No investigar temas ya estudiados. Estructurar formalmente la idea de investigación. Seleccionar la perspectiva de abordaje del tema. INVESTIG. PREVIA DE TEMAS Temas ya investigados, estructurados y formalizados Temas ya investigados pero menos estructurados y formalizados. Temas poco investigados y poco estructurados Temas no investigados. CRITERIOS PARA GENERAR IDEAS Las buenas ideas alientan al investigador. Las ideas no son necesariamente nuevas, pero sí novedosas. Las ideas pueden servir para elaborar teorías y solucionar problemas Pueden ayudar a generar nuevos problemas de investigación.
22
1234 Universidad Nacional de Trujillo Tipos de Comprobaciones Comprobacio nes de tipos Comprobacio nes del flujo de control Comprobacio nes de unicidad Comprobacio nes de emparejamie nto 22
23
Comprobación de Tipos: Universidad Nacional de Trujillo 23 Un compilador debe informar de un error si se aplica un operador a un operando incompatible; por ejemplo, si se suman una variable tipo matriz y una variable de función. Un lenguaje con comprobación fuerte de tipos es capaz de garantizar que los programas se pueden ejecutar sin errores de tipo, por lo que los errores de tipo se detectarán siempre en tiempo de compilación. Como mínimo, ante un error, un comprobador de tipos debe informar de la naturaleza y posición del error y recuperarse para continuar con la comprobación del resto del programa a analizar.
24
Comprobación de Tipos: Universidad Nacional de Trujillo 24 Veamos algunas de las operaciones a tener en cuenta en una comprobación de tipos: Conversión de Tipos: A veces es necesario transformar el tipo de una expresión para utilizar correctamente un operador o para pasar de forma adecuada un parámetro a una función. Sobrecarga de operadores: La sobrecarga se resuelve determinando el tipo de cada una de las expresiones intervinientes en la sobrecarga. Coerción: Es una conversión de tipos que realiza de forma implícita el propio compilador. Si es el programador el que realiza la conversión se tratará entonces de una conversión explícita. Funciones polimórficas: Son aquellas que trabajan con argumentos cuyo tipo puede cambiar en distintas llamadas a la función.
25
Especificación de un Comprobador de Tipos Básico Universidad Nacional de Trujillo 25 Básicamente se deberán realizar dos tareas: 1.Asignación de tipos: En las declaraciones. 2.Evaluación y comprobación de tipos: En las expresiones y en las funciones, así como en las sentencias.
26
Ejemplo: Universidad Nacional de Trujillo 26
27
Universidad Nacional de Trujillo 27
28
Primer paso: Asignación de tipo Universidad Nacional de Trujillo 28
29
Segundo paso: Comprobación de tipo en expresiones Universidad Nacional de Trujillo 29
30
Segundo paso: Comprobación de tipo en expresiones Universidad Nacional de Trujillo 30
31
Segundo paso: Comprobación de tipo en expresiones Universidad Nacional de Trujillo 31
32
Tercer paso: Comprobación de tipo en sentencias Universidad Nacional de Trujillo 32
33
Comprobaciones del flujo del control: Universidad Nacional de Trujillo 33 Las proposiciones que hacen que el flujo del control abandone una construcción deben tener algún lugar a dónde transferir el flujo de control. Por ejemplo, una proposición break en C hace que el control abandone la proposición que la engloba, while, for o switch más cercana; si dicha proposición englobadora no existe, ocurre un error.
34
Comprobaciones de unicidad: Universidad Nacional de Trujillo 34 Hay situaciones en que se debe definir un objeto una vez exactamente. Por ejemplo, en Pascal, un identificador debe declararse de forma única, las etiquetas en una proposición case deben ser diferentes y no se pueden repetir los elementos en un tipo escalar.
35
Comprobaciones relacionadas con nombres: Universidad Nacional de Trujillo 35 En ocasiones, el mismo nombre debe aparecer dos o más veces. Por ejemplo, en Ada, un lazo o bloque puede tener un nombre que aparezca al principio y al final de la construcción. El compilador debe comprobar que se utilice el mismo nombre en ambos sitios.
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.