SlideShare una empresa de Scribd logo
1 de 7
ESCUELA DE INGENIERÍA
SEMESTRE MAYO –
AGOSTO 2020
COMPILADORES
ACTIVIDAD EN
CLASES N° 15
NOMBRE: MAURICIO PINTO Fecha:
24/06/2020
ANALISIS
SEMÁNTICO
1. ¿Cuál es el objetivo principal del analizador semántico de un
procesador de lenguajes?
El objetivoprincipal del analizadorsemánticode unprocesadorde lenguajees
asegurarse de que el programaanalizadosatisfagalasreglasrequeridasporla
especificacióndel lenguaje,paragarantizarsucorrecta ejecución.
2. A qué refiere la descripción formal de la semántica de lenguajes de
programación,cite 6 especificacionesmásusadas.
La descripción formal se refiere a la descripción estricta del significado o
comportamiento del programa, lenguajes de programación, etc.
− Revelar posibles ambigüedades existentes implementaciones de
procesadores de lenguajes o en documentos descriptivos de lenguajes de
programación.
− Ser utilizados como base para la implementación de procesadores de
lenguaje.
− Verificar propiedades de programas en relación con pruebas de corrección o
información relacionada con su ejecución.
− Diseñar nuevos lenguajes de programación, permitiendo registrar
decisiones sobre construcciones particulares del lenguaje, así como permitir
descubrir posibles irregularidades u omisiones.
− Facilitar la comprensión de los lenguajes por parte del programador y como
mecanismo de comunicación entre diseñador del lenguaje, implementador y
programador. La especificación semántica de un lenguaje, como documento
de referencia, aclara el comportamiento del lenguaje y sus diversas
construcciones.
− Estandarizar lenguajes mediante la publicación de su semántica de un modo
no ambiguo. Los programas deben poder procesarse en otra implementación
de procesador del mismo lenguaje exhibiendo el mismo comportamiento.
3. Cuáles sonlos puntos devista de descripción semántica más utilizados, realice
un resumen corto y un ejemplo de la especificación de los mismos.
− Semántica operacional: El significado de cada construcción sintáctica es
especificado mediante la computación que se lleva a cabo en su ejecución sobre
una máquina abstracta. Lo que realmente se especifica es cómo se lleva a cabo
dicha ejecución. Ejemplo:
− Semántica denotacional: La representación del comportamiento de cada
sentencia o frase del lenguaje se lleva a cabo mediante entidades matemáticas
(denotación) que representan el efecto de haber ejecutado las sentencia o frase
asociada. Ejemplo:
− Semántica axiomática: Especifica las propiedades del efecto de ejecutar las
sentencias sintácticamente correctas, expresadas mediante asertos, desoyendo
así los aspectos de su ejecución. El sistema permite estudiar formalmente las
propiedades del lenguaje y se requiere la utilización de sistemas consistentes y
completos. Ejemplo:
− Semántica algebraica: Se basa en la especificación de tipos de datos abstractos
mediante una colección de operaciones (incluyendo alguna constante). Puesto
que un conjunto de valores al que se le añaden una colección de operaciones
constituye un álgebra, este método de descripción formal de semántica se
denomina semántica algebraica. Ejemplo:
− Semántica de acciones: Fue elaborado por Peter Mosses, para describir la
semántica de lenguajes de un modo más inteligible. Las especificaciones
semánticas de lenguajes siempre han sido consideradas como oscuras,
complicadas y únicamente legibles por expertos, adquiriendo así una mala
reputación por su uso intensivo de símbolos matemáticos. Ejemplo: la
combinación de instrucciones mediante control de flujo secuencial, condicional e
iterativo.
4. Cuál es laconexión directa entre elanálisis semánticocon el resto de las fases
que emplea un compilador, explique a través del organizador gráfico de Aho.
5. Cite de forma rápida ejemplos de comprobaciones que hace el analizador
semántico con respecto a:
✓ Declaración deidentificadores yreglasdeámbitos
Superficie = base * altura / 2; Para que la asignación previa fuese correcta,
los tres identificadores deberían de estar declarados. Puede que estén
declarados en el ámbito (bloque) actual o en uno menos anidado que el
actual, en cuyo caso el analizador sintáctico tendría que aplicar reglas de
ámbito como la ocultación de identificadores.
✓ Comprobaciones de unicidad
Existen multitud de elementos en lenguajes de programación cuyas entidades
han de existir de un modo único, es decir, no se permite que estén duplicadas.
Ejemplos típicos son: Constantes de cada case en Pascal, C o Java. Cada uno de
los elementos existentes en los condicionales múltiples de los lenguajes de
programación mencionados, ha de ser único. En otro caso, el analizador
semántico deberá generar un error de compilación.
✓ Comprobaciones de enlace
En ocasiones, el empleo de un elemento de un lenguaje ha de estar ligado
a una utilización previa del mismo: En un ensamblador, un salto a una
etiqueta requiere que ésta haya sido referida como una posición de
memoria.
✓ Comprobaciones pospuestasp o r el analizador sintáctico
Es posible escribir una gramática libre de contexto capaz de representar
que toda implementación de una función en C tenga al menos una
sentencia return. No obstante, si escribimos la gramática de cualquier
función como una repetición de sentencias, siendo return es un tipo de
sentencia, la gramática es más sencilla y fácil de procesar. El analizador
semántico deberá comprobar, pues, dicha restricción.
✓ Comprobaciones dinámicas
Diversos ejemplos pueden ser acceso a un vector fuera de rango,
utilización de un puntero nulo o división por cero.
✓ Comprobaciones de tipo
Por ejemplo, en el lenguaje Java el operador de producto no es
aplicable a una referencia a un objeto. De un modo contrario, el
operador punto sí es válido.
6. Qué comprende el análisis semántico como decoración del Árbol de Sintaxis
abstracta.
El análisis semántico y la generación de código están intercaladas con el
análisis sintáctico y por tanto con el análisis léxico. Este tipo de
compiladores es más eficiente y emplea menos memoria que los que
requieren más de una pasada. El análisis semántico de un programa es
más sencillo de implementar si se emplean para las fases de análisis
sintáctico y semántico dos o más pasadas. En este caso, la fase de análisis
sintáctico creará un árbol sintáctico abstracto para que sea procesado por
el analizador semántico.
7. Defina las características más importantes del Árbol de sintaxis abstracta.
Es una representación de la estructura de una consecución de
componentes léxicos (tokens), en la que éstos aparecen como nodos hoja
y los nodos internos representan los pasos en las derivaciones de la
gramática asociada. Los árboles sintácticos poseen mucha más
información de la necesaria para el resto de las fases de un compilador,
una vez finalizada la fase de análisis sintáctico.
Defina una gramática concreta para lasiguienteoperación 7+(4*2) * 5/ (10*2) y
finalmente genere su árbol sintáctico.
Realizar un comentario personal sobre el funcionamiento que tiene el analizador
semántico para el proceso de la compilación.
Para el proceso de compilación el análisis semántico es una parte importante debido a
que revisa el programa fuente buscando errores semánticos y reúne la información
necesaria sobre los tipos para la posterior generación del código, estructurando una
jerarquía que lo ayuda a identificar operadores y operandos de las expresiones y
proposiciones.

Más contenido relacionado

La actualidad más candente

Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15AndresDvila
 
Lenguajes De ProgramacióN
Lenguajes De ProgramacióNLenguajes De ProgramacióN
Lenguajes De ProgramacióNEduFigueroa
 
Lenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcionLenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcionIsrael Castillo Cruz
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS Infomania pro
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semanticoAreli Gómez
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppInfomania pro
 
Análisis semántico
Análisis semánticoAnálisis semántico
Análisis semánticoAndres Pozo
 
Clase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini devClase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini devInfomania pro
 
Analizador sintactico
Analizador sintacticoAnalizador sintactico
Analizador sintacticoalexisdario
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico maryr_
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador SintacticoBayo Chicaiza
 
Que es programacion
Que es      programacionQue es      programacion
Que es programacionjhankey
 
Compiladores y analizador léxico
Compiladores y analizador léxicoCompiladores y analizador léxico
Compiladores y analizador léxicokatherine133
 
Análisis Semántico con Cup
Análisis Semántico con CupAnálisis Semántico con Cup
Análisis Semántico con CupLAUNASA NOVENO B
 

La actualidad más candente (20)

Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15
 
Análisis lexicográfico
Análisis lexicográficoAnálisis lexicográfico
Análisis lexicográfico
 
Lenguajes De ProgramacióN
Lenguajes De ProgramacióNLenguajes De ProgramacióN
Lenguajes De ProgramacióN
 
Lenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcionLenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcion
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Analizador lexico
Analizador lexicoAnalizador lexico
Analizador lexico
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semantico
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cpp
 
Análisis semántico
Análisis semánticoAnálisis semántico
Análisis semántico
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Clase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini devClase8 2-explicacion analizador lexico-sintactico mini dev
Clase8 2-explicacion analizador lexico-sintactico mini dev
 
Analizador sintactico
Analizador sintacticoAnalizador sintactico
Analizador sintactico
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador Sintactico
 
Que es programacion
Que es      programacionQue es      programacion
Que es programacion
 
Compiladores y analizador léxico
Compiladores y analizador léxicoCompiladores y analizador léxico
Compiladores y analizador léxico
 
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo MinilenguajeCompiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
 
Análisis Semántico con Cup
Análisis Semántico con CupAnálisis Semántico con Cup
Análisis Semántico con Cup
 

Similar a ANALISIS SEMANTICO

Taller analisis semantico
Taller analisis semanticoTaller analisis semantico
Taller analisis semanticoAlvaro Cedeño
 
Taller n15 compiladores_analis_semantico_15_junio_2021 (1)
Taller n15 compiladores_analis_semantico_15_junio_2021 (1)Taller n15 compiladores_analis_semantico_15_junio_2021 (1)
Taller n15 compiladores_analis_semantico_15_junio_2021 (1)Bryan Chasiguano
 
Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021Bryan Chasiguano
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexicoJhampier_Piedra
 
Compiladores unidad1
Compiladores unidad1Compiladores unidad1
Compiladores unidad1X3025990
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintacticoAndres Pozo
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintacticoAndresDvila
 
Analizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador SintácticoAnalizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador SintácticoRaul Gomez
 
Actividad 2 programacion de sistemas
Actividad 2 programacion de sistemasActividad 2 programacion de sistemas
Actividad 2 programacion de sistemasJESSIKADG86
 
Proyecto De Tecnica De Programacioin I I
Proyecto De Tecnica De Programacioin  I IProyecto De Tecnica De Programacioin  I I
Proyecto De Tecnica De Programacioin I IAmistadLealtad
 
Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2Universidad
 
Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.Dispositivosmoviles
 
Alejandra gomez
Alejandra gomezAlejandra gomez
Alejandra gomezalejitaacg
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)alejandra985
 

Similar a ANALISIS SEMANTICO (20)

Taller analisis semantico
Taller analisis semanticoTaller analisis semantico
Taller analisis semantico
 
Taller n15 compiladores_analis_semantico_15_junio_2021 (1)
Taller n15 compiladores_analis_semantico_15_junio_2021 (1)Taller n15 compiladores_analis_semantico_15_junio_2021 (1)
Taller n15 compiladores_analis_semantico_15_junio_2021 (1)
 
Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexico
 
Compiladores unidad1
Compiladores unidad1Compiladores unidad1
Compiladores unidad1
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Lenguaje de programacion mike alvarado
Lenguaje de programacion mike alvaradoLenguaje de programacion mike alvarado
Lenguaje de programacion mike alvarado
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Compilador2
Compilador2Compilador2
Compilador2
 
Analizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador SintácticoAnalizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador Sintáctico
 
Actividad 2 programacion de sistemas
Actividad 2 programacion de sistemasActividad 2 programacion de sistemas
Actividad 2 programacion de sistemas
 
Proyecto De Tecnica De Programacioin I I
Proyecto De Tecnica De Programacioin  I IProyecto De Tecnica De Programacioin  I I
Proyecto De Tecnica De Programacioin I I
 
TALLER ANALISIS LEXICO
TALLER ANALISIS LEXICOTALLER ANALISIS LEXICO
TALLER ANALISIS LEXICO
 
Clase15
Clase15Clase15
Clase15
 
Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2Introducción a los compiladores - Parte 2
Introducción a los compiladores - Parte 2
 
Tratamiento de errores
Tratamiento de erroresTratamiento de errores
Tratamiento de errores
 
Fases de los compiladores
Fases de los compiladoresFases de los compiladores
Fases de los compiladores
 
Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.Actividad 2 Programación de Sistemas.
Actividad 2 Programación de Sistemas.
 
Alejandra gomez
Alejandra gomezAlejandra gomez
Alejandra gomez
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)
 

Más de MAURICIOANDRES39

Procesamiento de imagenes 2
Procesamiento de imagenes 2Procesamiento de imagenes 2
Procesamiento de imagenes 2MAURICIOANDRES39
 
Graficas sencillas con matlab
Graficas sencillas con matlabGraficas sencillas con matlab
Graficas sencillas con matlabMAURICIOANDRES39
 
Clase 4 El espectro electromagnetico 05/10/2020
Clase 4 El espectro electromagnetico 05/10/2020Clase 4 El espectro electromagnetico 05/10/2020
Clase 4 El espectro electromagnetico 05/10/2020MAURICIOANDRES39
 
Clase 2 Fundamentos de Teoría del Color 01/10/2020
Clase 2 Fundamentos de Teoría del Color 01/10/2020Clase 2 Fundamentos de Teoría del Color 01/10/2020
Clase 2 Fundamentos de Teoría del Color 01/10/2020MAURICIOANDRES39
 
Clase 1 Fundamentos de Teoría del Color 24/09/2020
Clase 1 Fundamentos de Teoría del Color 24/09/2020Clase 1 Fundamentos de Teoría del Color 24/09/2020
Clase 1 Fundamentos de Teoría del Color 24/09/2020MAURICIOANDRES39
 
Gramaticas independientes de contexto ejecrcicios 2
Gramaticas independientes de contexto ejecrcicios 2Gramaticas independientes de contexto ejecrcicios 2
Gramaticas independientes de contexto ejecrcicios 2MAURICIOANDRES39
 
Gramatica independiente de contexto
Gramatica independiente de contextoGramatica independiente de contexto
Gramatica independiente de contextoMAURICIOANDRES39
 
Interprete sencillo utilizando ply con python 3
Interprete sencillo utilizando ply con python 3Interprete sencillo utilizando ply con python 3
Interprete sencillo utilizando ply con python 3MAURICIOANDRES39
 
Compilador con Gold Parser
Compilador con Gold ParserCompilador con Gold Parser
Compilador con Gold ParserMAURICIOANDRES39
 

Más de MAURICIOANDRES39 (20)

Manual instalacion
Manual instalacionManual instalacion
Manual instalacion
 
Segmentacion
SegmentacionSegmentacion
Segmentacion
 
Transformadas en matlab
Transformadas en matlabTransformadas en matlab
Transformadas en matlab
 
Procesamiento de imagenes 2
Procesamiento de imagenes 2Procesamiento de imagenes 2
Procesamiento de imagenes 2
 
Procesamiento de imagenes
Procesamiento de imagenesProcesamiento de imagenes
Procesamiento de imagenes
 
Ciclos repetitivos matlab
Ciclos repetitivos matlabCiclos repetitivos matlab
Ciclos repetitivos matlab
 
Funciones
FuncionesFunciones
Funciones
 
Graficas sencillas con matlab
Graficas sencillas con matlabGraficas sencillas con matlab
Graficas sencillas con matlab
 
EJERCICIOS CON MATLAB
EJERCICIOS CON MATLABEJERCICIOS CON MATLAB
EJERCICIOS CON MATLAB
 
Operaciones con matrices
Operaciones con matricesOperaciones con matrices
Operaciones con matrices
 
Instalacion matlab
Instalacion matlabInstalacion matlab
Instalacion matlab
 
Clase 4 El espectro electromagnetico 05/10/2020
Clase 4 El espectro electromagnetico 05/10/2020Clase 4 El espectro electromagnetico 05/10/2020
Clase 4 El espectro electromagnetico 05/10/2020
 
Clase 2 Fundamentos de Teoría del Color 01/10/2020
Clase 2 Fundamentos de Teoría del Color 01/10/2020Clase 2 Fundamentos de Teoría del Color 01/10/2020
Clase 2 Fundamentos de Teoría del Color 01/10/2020
 
Clase 1 Fundamentos de Teoría del Color 24/09/2020
Clase 1 Fundamentos de Teoría del Color 24/09/2020Clase 1 Fundamentos de Teoría del Color 24/09/2020
Clase 1 Fundamentos de Teoría del Color 24/09/2020
 
Preguntas automatas
Preguntas automatasPreguntas automatas
Preguntas automatas
 
AUTOMATAS
AUTOMATASAUTOMATAS
AUTOMATAS
 
Gramaticas independientes de contexto ejecrcicios 2
Gramaticas independientes de contexto ejecrcicios 2Gramaticas independientes de contexto ejecrcicios 2
Gramaticas independientes de contexto ejecrcicios 2
 
Gramatica independiente de contexto
Gramatica independiente de contextoGramatica independiente de contexto
Gramatica independiente de contexto
 
Interprete sencillo utilizando ply con python 3
Interprete sencillo utilizando ply con python 3Interprete sencillo utilizando ply con python 3
Interprete sencillo utilizando ply con python 3
 
Compilador con Gold Parser
Compilador con Gold ParserCompilador con Gold Parser
Compilador con Gold Parser
 

Último

Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxYajairaMartinez30
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptxguillermosantana15
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilDissneredwinPaivahua
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxSergioGJimenezMorean
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...RichardRivas28
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónXimenaFallaLecca1
 

Último (20)

Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptx
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civil
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcción
 

ANALISIS SEMANTICO

  • 1. ESCUELA DE INGENIERÍA SEMESTRE MAYO – AGOSTO 2020 COMPILADORES ACTIVIDAD EN CLASES N° 15 NOMBRE: MAURICIO PINTO Fecha: 24/06/2020 ANALISIS SEMÁNTICO 1. ¿Cuál es el objetivo principal del analizador semántico de un procesador de lenguajes? El objetivoprincipal del analizadorsemánticode unprocesadorde lenguajees asegurarse de que el programaanalizadosatisfagalasreglasrequeridasporla especificacióndel lenguaje,paragarantizarsucorrecta ejecución. 2. A qué refiere la descripción formal de la semántica de lenguajes de programación,cite 6 especificacionesmásusadas. La descripción formal se refiere a la descripción estricta del significado o comportamiento del programa, lenguajes de programación, etc. − Revelar posibles ambigüedades existentes implementaciones de procesadores de lenguajes o en documentos descriptivos de lenguajes de programación. − Ser utilizados como base para la implementación de procesadores de lenguaje. − Verificar propiedades de programas en relación con pruebas de corrección o información relacionada con su ejecución. − Diseñar nuevos lenguajes de programación, permitiendo registrar decisiones sobre construcciones particulares del lenguaje, así como permitir descubrir posibles irregularidades u omisiones. − Facilitar la comprensión de los lenguajes por parte del programador y como
  • 2. mecanismo de comunicación entre diseñador del lenguaje, implementador y programador. La especificación semántica de un lenguaje, como documento de referencia, aclara el comportamiento del lenguaje y sus diversas construcciones. − Estandarizar lenguajes mediante la publicación de su semántica de un modo no ambiguo. Los programas deben poder procesarse en otra implementación de procesador del mismo lenguaje exhibiendo el mismo comportamiento. 3. Cuáles sonlos puntos devista de descripción semántica más utilizados, realice un resumen corto y un ejemplo de la especificación de los mismos. − Semántica operacional: El significado de cada construcción sintáctica es especificado mediante la computación que se lleva a cabo en su ejecución sobre una máquina abstracta. Lo que realmente se especifica es cómo se lleva a cabo dicha ejecución. Ejemplo: − Semántica denotacional: La representación del comportamiento de cada sentencia o frase del lenguaje se lleva a cabo mediante entidades matemáticas (denotación) que representan el efecto de haber ejecutado las sentencia o frase asociada. Ejemplo: − Semántica axiomática: Especifica las propiedades del efecto de ejecutar las sentencias sintácticamente correctas, expresadas mediante asertos, desoyendo así los aspectos de su ejecución. El sistema permite estudiar formalmente las propiedades del lenguaje y se requiere la utilización de sistemas consistentes y completos. Ejemplo:
  • 3. − Semántica algebraica: Se basa en la especificación de tipos de datos abstractos mediante una colección de operaciones (incluyendo alguna constante). Puesto que un conjunto de valores al que se le añaden una colección de operaciones constituye un álgebra, este método de descripción formal de semántica se denomina semántica algebraica. Ejemplo: − Semántica de acciones: Fue elaborado por Peter Mosses, para describir la semántica de lenguajes de un modo más inteligible. Las especificaciones semánticas de lenguajes siempre han sido consideradas como oscuras, complicadas y únicamente legibles por expertos, adquiriendo así una mala reputación por su uso intensivo de símbolos matemáticos. Ejemplo: la combinación de instrucciones mediante control de flujo secuencial, condicional e iterativo. 4. Cuál es laconexión directa entre elanálisis semánticocon el resto de las fases que emplea un compilador, explique a través del organizador gráfico de Aho.
  • 4. 5. Cite de forma rápida ejemplos de comprobaciones que hace el analizador semántico con respecto a: ✓ Declaración deidentificadores yreglasdeámbitos Superficie = base * altura / 2; Para que la asignación previa fuese correcta, los tres identificadores deberían de estar declarados. Puede que estén declarados en el ámbito (bloque) actual o en uno menos anidado que el actual, en cuyo caso el analizador sintáctico tendría que aplicar reglas de ámbito como la ocultación de identificadores. ✓ Comprobaciones de unicidad Existen multitud de elementos en lenguajes de programación cuyas entidades han de existir de un modo único, es decir, no se permite que estén duplicadas. Ejemplos típicos son: Constantes de cada case en Pascal, C o Java. Cada uno de los elementos existentes en los condicionales múltiples de los lenguajes de programación mencionados, ha de ser único. En otro caso, el analizador semántico deberá generar un error de compilación. ✓ Comprobaciones de enlace
  • 5. En ocasiones, el empleo de un elemento de un lenguaje ha de estar ligado a una utilización previa del mismo: En un ensamblador, un salto a una etiqueta requiere que ésta haya sido referida como una posición de memoria. ✓ Comprobaciones pospuestasp o r el analizador sintáctico Es posible escribir una gramática libre de contexto capaz de representar que toda implementación de una función en C tenga al menos una sentencia return. No obstante, si escribimos la gramática de cualquier función como una repetición de sentencias, siendo return es un tipo de sentencia, la gramática es más sencilla y fácil de procesar. El analizador semántico deberá comprobar, pues, dicha restricción. ✓ Comprobaciones dinámicas Diversos ejemplos pueden ser acceso a un vector fuera de rango, utilización de un puntero nulo o división por cero. ✓ Comprobaciones de tipo Por ejemplo, en el lenguaje Java el operador de producto no es aplicable a una referencia a un objeto. De un modo contrario, el operador punto sí es válido. 6. Qué comprende el análisis semántico como decoración del Árbol de Sintaxis abstracta. El análisis semántico y la generación de código están intercaladas con el análisis sintáctico y por tanto con el análisis léxico. Este tipo de compiladores es más eficiente y emplea menos memoria que los que requieren más de una pasada. El análisis semántico de un programa es más sencillo de implementar si se emplean para las fases de análisis sintáctico y semántico dos o más pasadas. En este caso, la fase de análisis sintáctico creará un árbol sintáctico abstracto para que sea procesado por el analizador semántico.
  • 6. 7. Defina las características más importantes del Árbol de sintaxis abstracta. Es una representación de la estructura de una consecución de componentes léxicos (tokens), en la que éstos aparecen como nodos hoja y los nodos internos representan los pasos en las derivaciones de la gramática asociada. Los árboles sintácticos poseen mucha más información de la necesaria para el resto de las fases de un compilador, una vez finalizada la fase de análisis sintáctico. Defina una gramática concreta para lasiguienteoperación 7+(4*2) * 5/ (10*2) y finalmente genere su árbol sintáctico.
  • 7. Realizar un comentario personal sobre el funcionamiento que tiene el analizador semántico para el proceso de la compilación. Para el proceso de compilación el análisis semántico es una parte importante debido a que revisa el programa fuente buscando errores semánticos y reúne la información necesaria sobre los tipos para la posterior generación del código, estructurando una jerarquía que lo ayuda a identificar operadores y operandos de las expresiones y proposiciones.