SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
TALLER DE ACTIVIDADES DE COMPILADORES
Fecha: 7 de junio de 2019
Tema: Análisis sintáctico
Resuelva cada una de las interrogantes planteadas y subir el enlace al espacio
virtual con la publicación del enlace de la dirección de su blog.
▪ ¿Cuál es el objetivo principal del analizar semántico de un
procesador de lenguajes?
El objetivo principal del analizador semántico de un procesador de lenguajes es
asegurarse de que el programa analizado satisfaga las reglas requeridas por la
especificación del lenguaje, para garantizar su correcta ejecución.
▪ A qué refiere la descripción formal de la semántica de lenguajes de
programación, cite 6 especificaciones más usadas.
La descripción formal de la semántica de lenguajes de programación es la descrip-ción
rigurosa del significado o comportamiento de programas, lenguajes de programación,
máquinas abstractas o incluso cualquier dispositivo hardware.
ESPECIFICACIONES MÁS USADAS:
• 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 in-
formació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.
▪ Cuáles son los puntos de vista 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: Define el significado de cada construcción
sintáctica que 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. Los significados del
programa son descritos en términos de operaciones, utilizando un
lenguaje basado en reglas de inferencia lógicas en las que se describen
formalmente las secuencias de ejecución de las diferentes instrucciones
sobre una máquina abstracta.
• Semántica denotacional: Define la representación del comportamiento de
cada sentencia o frase del lenguaje, este se lleva a cabo mediante entidades
matemáticas (de-notación) que representan el efecto de haber ejecutado
las sentencia o frase asociada.
• 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.
• Semántica algebraica: Se basa en la especificación de tipos de datos abstrac-
tos 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 opera-
ciones constituye un álgebra, este método de descripción formal de semántica
se denomina semántica algebraica.
▪ Cuál es la conexión directa entre el análisis semántico con el resto de fases
que emplea un compilador, explique a través del organizador gráfico de Aho.
El analizador semántico aporta en el proceso de compilación buscando, definiendo e
identificando el significado del programa, es decir examina y clasifica los bloques de
código que el analizador sintáctico no lo pudo hacer completamente.
▪ Cite de forma r á p i d a ejemplos de comprobaciones que hace el analizador
semántico con respecto a:
✓ Declaración de identificadores y reglas de ámbitos:
superficie = base * altura / 2;
Para este ejemplo cada una de las variables usadas debieron estar declaradas
anteriormente. En este caso el analizador sintáctico tendría que aplicar reglas de
ámbito como la ocultación de identificadores.
✓ Comprobaciones de unicidad
Un claro ejemplo es que, en pascal, un identificador debe declararse de forma única, las
etiquetas en una proposición de tipo case deben ser diferentes y no se pueden repetir los
elementos en un tipo escalar.
✓ Comprobaciones de enlace
Por ejemplo en el lenguaje Ada, un enlace 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.
✓ Comprobaciones pospuestas por el analizador sintáctico
En este punto el analizador semántico deberá comprobar varias restricciones, por
ejemplo en el lenguaje java o C# se usa la sentencia return para retornar datos, pero
antes de hacerlo hay una serie de instrucciones previas a ejecutarse.
✓ 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.
▪ Qué comprende el análisis semántico como decoración del Árbol de
Sintaxis abstracta.
El análisis semántico interviene en las pasadas que se generan durante el proceso de
compilación, aquí se producen análisis de tipo sintáctico y optimizaciones de código en cada
pasada, para el análisis semántico 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.
▪ 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.
- Es una simplificación de árbol sintáctico que representa toda la información
necesaria para el resto del procesamiento del programa de un modo más eficiente
que el árbol sintáctico original.
▪ Defina una gramática concreta para la siguiente operación 7+(4*2) * 5 /(10*2) y
finalmente genere su árbol sintáctico.
expresion: expresion '*' termino
| expresion '*' termino
| termino
;
termino: termino '*' factor
| termino '/' factor
| factor
;
Gramática abstracta:
expresion: expresionBinaria
| expresionUnaria
| constanteEntera
;
expresioBinaria: expresion ('*'|'/'|'+') expresion
; ;
constanteEntera: CTE_ENTERA
;
7|4|2|5|10 CTE_ENTERA
('*'|'/'|'+') Expresiones
AST generado para la sentencia 7+(4*2) * 5 /(10*2)

Más contenido relacionado

La actualidad más candente

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
 
Análisis semántico
Análisis semánticoAnálisis semántico
Análisis semánticoAndres Pozo
 
Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021Bryan Chasiguano
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS Infomania pro
 
Fases de los compiladores
Fases de los compiladoresFases de los compiladores
Fases de los compiladoresAlvaro Cedeño
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppInfomania pro
 
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
 
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_
 
Compiladores y analizador léxico
Compiladores y analizador léxicoCompiladores y analizador léxico
Compiladores y analizador léxicokatherine133
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintacticoAndresDvila
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladoresbachispasaca
 

La actualidad más candente (20)

Analisis semantico
Analisis semanticoAnalisis semantico
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)
 
Análisis semántico
Análisis semánticoAnálisis semántico
Análisis semántico
 
Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Fases de los compiladores
Fases de los compiladoresFases de los compiladores
Fases de los compiladores
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 
Fases de los compiladores
Fases de los compiladoresFases de los compiladores
Fases de los compiladores
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cpp
 
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo MinilenguajeCompiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
 
Lenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcionLenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcion
 
Prolog
PrologProlog
Prolog
 
Prolog2
Prolog2Prolog2
Prolog2
 
Análisis lexicográfico
Análisis lexicográficoAnálisis lexicográfico
Análisis lexicográfico
 
Analizador lexico
Analizador lexicoAnalizador lexico
Analizador lexico
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
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
 
Compiladores y analizador léxico
Compiladores y analizador léxicoCompiladores y analizador léxico
Compiladores y analizador léxico
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladores
 

Similar a Taller análisis sintáctico

Taller analisis semantico
Taller analisis semanticoTaller analisis semantico
Taller analisis semanticoAlvaro Cedeño
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintacticoAndres Pozo
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iRossana Sosa
 
Preguntas de diagnostico
Preguntas de diagnosticoPreguntas de diagnostico
Preguntas de diagnosticoJavierCR2017
 
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
 
Compiladores unidad1
Compiladores unidad1Compiladores unidad1
Compiladores unidad1X3025990
 
Alejandra gomez
Alejandra gomezAlejandra gomez
Alejandra gomezalejitaacg
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)alejandra985
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)alejandra985
 
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
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexicoJhampier_Piedra
 
Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Alex Toapanta
 
TALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOTALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOJOSSELINEMARIBEL
 

Similar a Taller análisis sintáctico (20)

Taller analisis semantico
Taller analisis semanticoTaller analisis semantico
Taller analisis semantico
 
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
 
Taller de compiladores
Taller de compiladoresTaller de compiladores
Taller de compiladores
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes i
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Preguntas de diagnostico
Preguntas de diagnosticoPreguntas de diagnostico
Preguntas de diagnostico
 
Tratamiento de errores
Tratamiento de erroresTratamiento de errores
Tratamiento de errores
 
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
 
Compiladores unidad1
Compiladores unidad1Compiladores unidad1
Compiladores unidad1
 
Alejandra gomez
Alejandra gomezAlejandra gomez
Alejandra gomez
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)
 
Alejandra gomez (1)
Alejandra gomez (1)Alejandra gomez (1)
Alejandra gomez (1)
 
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
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexico
 
Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)
 
Herramientas de software
Herramientas de softwareHerramientas de software
Herramientas de software
 
TALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOTALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICO
 
Compiladores (1) pedro vasques
Compiladores (1) pedro vasquesCompiladores (1) pedro vasques
Compiladores (1) pedro vasques
 

Más de Santiago Andrade (20)

Taller Ataque Phishing
Taller Ataque PhishingTaller Ataque Phishing
Taller Ataque Phishing
 
Taller phishing
Taller phishingTaller phishing
Taller phishing
 
Instalación VB y maquinas virtuales
Instalación VB y maquinas virtualesInstalación VB y maquinas virtuales
Instalación VB y maquinas virtuales
 
Instalacion sony vegas
Instalacion sony vegasInstalacion sony vegas
Instalacion sony vegas
 
Practica forense
Practica forensePractica forense
Practica forense
 
Segmentacion de imagenes
Segmentacion de imagenesSegmentacion de imagenes
Segmentacion de imagenes
 
Principios informatica forence
Principios informatica forencePrincipios informatica forence
Principios informatica forence
 
Analisis forence
Analisis forenceAnalisis forence
Analisis forence
 
Practica 1 imagenes matlab
Practica 1 imagenes matlabPractica 1 imagenes matlab
Practica 1 imagenes matlab
 
Perito informatico
Perito informaticoPerito informatico
Perito informatico
 
Practica 6 matlab
Practica 6 matlabPractica 6 matlab
Practica 6 matlab
 
Practica 5 matlab
Practica 5 matlabPractica 5 matlab
Practica 5 matlab
 
Practica 4 matlab
Practica 4 matlabPractica 4 matlab
Practica 4 matlab
 
Practica 3 matlab
Practica 3 matlabPractica 3 matlab
Practica 3 matlab
 
Practica 2 matlab
Practica 2 matlabPractica 2 matlab
Practica 2 matlab
 
Instalacion matlab
Instalacion matlabInstalacion matlab
Instalacion matlab
 
Pasos para solicitar firmas digitales
Pasos para solicitar firmas digitalesPasos para solicitar firmas digitales
Pasos para solicitar firmas digitales
 
Taller12 firmas digitales
Taller12 firmas digitalesTaller12 firmas digitales
Taller12 firmas digitales
 
Responsabilidad civil
Responsabilidad civilResponsabilidad civil
Responsabilidad civil
 
Delitos vs contravenciones
Delitos vs contravencionesDelitos vs contravenciones
Delitos vs contravenciones
 

Último

Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
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
 
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
 
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
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
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
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdfCristhianZetaNima
 
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
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7luisanthonycarrascos
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxbingoscarlet
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfalexquispenieto2
 

Último (20)

Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
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
 
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)
 
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
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
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...
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.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
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdfVALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptx
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdf
 

Taller análisis sintáctico

  • 1. TALLER DE ACTIVIDADES DE COMPILADORES Fecha: 7 de junio de 2019 Tema: Análisis sintáctico Resuelva cada una de las interrogantes planteadas y subir el enlace al espacio virtual con la publicación del enlace de la dirección de su blog. ▪ ¿Cuál es el objetivo principal del analizar semántico de un procesador de lenguajes? El objetivo principal del analizador semántico de un procesador de lenguajes es asegurarse de que el programa analizado satisfaga las reglas requeridas por la especificación del lenguaje, para garantizar su correcta ejecución. ▪ A qué refiere la descripción formal de la semántica de lenguajes de programación, cite 6 especificaciones más usadas. La descripción formal de la semántica de lenguajes de programación es la descrip-ción rigurosa del significado o comportamiento de programas, lenguajes de programación, máquinas abstractas o incluso cualquier dispositivo hardware. ESPECIFICACIONES MÁS USADAS: • 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 in- formació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.
  • 2. ▪ Cuáles son los puntos de vista 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: Define el significado de cada construcción sintáctica que 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. Los significados del programa son descritos en términos de operaciones, utilizando un lenguaje basado en reglas de inferencia lógicas en las que se describen formalmente las secuencias de ejecución de las diferentes instrucciones sobre una máquina abstracta. • Semántica denotacional: Define la representación del comportamiento de cada sentencia o frase del lenguaje, este se lleva a cabo mediante entidades matemáticas (de-notación) que representan el efecto de haber ejecutado las sentencia o frase asociada. • 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.
  • 3. • Semántica algebraica: Se basa en la especificación de tipos de datos abstrac- tos 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 opera- ciones constituye un álgebra, este método de descripción formal de semántica se denomina semántica algebraica.
  • 4. ▪ Cuál es la conexión directa entre el análisis semántico con el resto de fases que emplea un compilador, explique a través del organizador gráfico de Aho. El analizador semántico aporta en el proceso de compilación buscando, definiendo e identificando el significado del programa, es decir examina y clasifica los bloques de código que el analizador sintáctico no lo pudo hacer completamente. ▪ Cite de forma r á p i d a ejemplos de comprobaciones que hace el analizador semántico con respecto a: ✓ Declaración de identificadores y reglas de ámbitos: superficie = base * altura / 2; Para este ejemplo cada una de las variables usadas debieron estar declaradas anteriormente. En este caso el analizador sintáctico tendría que aplicar reglas de ámbito como la ocultación de identificadores. ✓ Comprobaciones de unicidad Un claro ejemplo es que, en pascal, un identificador debe declararse de forma única, las etiquetas en una proposición de tipo case deben ser diferentes y no se pueden repetir los elementos en un tipo escalar. ✓ Comprobaciones de enlace Por ejemplo en el lenguaje Ada, un enlace 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. ✓ Comprobaciones pospuestas por el analizador sintáctico En este punto el analizador semántico deberá comprobar varias restricciones, por ejemplo en el lenguaje java o C# se usa la sentencia return para retornar datos, pero antes de hacerlo hay una serie de instrucciones previas a ejecutarse. ✓ 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.
  • 5. ✓ 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. ▪ Qué comprende el análisis semántico como decoración del Árbol de Sintaxis abstracta. El análisis semántico interviene en las pasadas que se generan durante el proceso de compilación, aquí se producen análisis de tipo sintáctico y optimizaciones de código en cada pasada, para el análisis semántico 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. ▪ 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. - Es una simplificación de árbol sintáctico que representa toda la información necesaria para el resto del procesamiento del programa de un modo más eficiente que el árbol sintáctico original. ▪ Defina una gramática concreta para la siguiente operación 7+(4*2) * 5 /(10*2) y finalmente genere su árbol sintáctico. expresion: expresion '*' termino | expresion '*' termino | termino ; termino: termino '*' factor | termino '/' factor | factor ; Gramática abstracta: expresion: expresionBinaria | expresionUnaria | constanteEntera ; expresioBinaria: expresion ('*'|'/'|'+') expresion ; ; constanteEntera: CTE_ENTERA ; 7|4|2|5|10 CTE_ENTERA ('*'|'/'|'+') Expresiones
  • 6. AST generado para la sentencia 7+(4*2) * 5 /(10*2)