SlideShare una empresa de Scribd logo
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

Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semantico
JOSSELINEMARIBEL
 
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ántico
Andres Pozo
 
Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021Taller n13 compiladores_10_junio_2021
Taller n13 compiladores_10_junio_2021
Bryan Chasiguano
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
Pablo Guerra
 
Fases de los compiladores
Fases de los compiladoresFases de los compiladores
Fases de los compiladores
Santiago Andrade
 
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 compiladores
Alvaro Cedeño
 
Clase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cppClase6 ejemplo analisis lexico dev cpp
Clase6 ejemplo analisis lexico dev cpp
Infomania pro
 
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo MinilenguajeCompiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Pedro Antonio Villalta (Pavillalta)
 
Lenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcionLenguajes lógicos definicion y funcion
Lenguajes lógicos definicion y funcion
Israel Castillo Cruz
 
Análisis lexicográfico
Análisis lexicográficoAnálisis lexicográfico
Análisis lexicográfico
Eraclio Castillo Vidal
 
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 sintactico
AndresDvila
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladores
bachispasaca
 

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 semantico
Alvaro Cedeño
 
Lenguaje de programacion mike alvarado
Lenguaje de programacion mike alvaradoLenguaje de programacion mike alvarado
Lenguaje de programacion mike alvarado
Luis José Bello Mendoza
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
Andres Pozo
 
Taller de compiladores
Taller de compiladoresTaller de compiladores
Taller de compiladores
Anthony Benalcazar
 
Grupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iGrupo 1 proceso de lenguajes i
Grupo 1 proceso de lenguajes iRossana Sosa
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
DanielRosero23
 
Preguntas de diagnostico
Preguntas de diagnosticoPreguntas de diagnostico
Preguntas de diagnostico
JavierCR2017
 
Tratamiento de errores
Tratamiento de erroresTratamiento de errores
Tratamiento de errores
JOSSELINEMARIBEL
 
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 2
Universidad
 
Compiladores analisis lexico
Compiladores analisis lexicoCompiladores analisis lexico
Compiladores analisis lexico
Jhampier_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ÁCTICO
JOSSELINEMARIBEL
 
Compiladores (1) pedro vasques
Compiladores (1) pedro vasquesCompiladores (1) pedro vasques
Compiladores (1) pedro vasques
Pitter Antony Vasquez Castellanos
 

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

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

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

Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de IloPlan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
AlbertoRiveraPrado
 
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptxDesbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
ValGS2
 
Becas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdfBecas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdf
UOC Estudios de Informática, Multimedia y Telecomunicación
 
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptxMedicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
gabrielperedasanchez
 
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
CarlitosWay20
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
mirellamilagrosvf
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Medias
arielemelec005
 
Diagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdfDiagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdf
joseabachesoto
 
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
HaroldKewinCanaza1
 
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
FRANCISCOJUSTOSIERRA
 
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
JuanChaparro49
 
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
JhonatanOQuionesChoq
 
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaaEspecificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
ssuserebb7f71
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
mesiassalazarpresent
 
Aletas de Transferencia de Calor o Superficies Extendidas.pdf
Aletas de Transferencia de Calor o Superficies Extendidas.pdfAletas de Transferencia de Calor o Superficies Extendidas.pdf
Aletas de Transferencia de Calor o Superficies Extendidas.pdf
JuanAlbertoLugoMadri
 
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOLNORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
Pol Peña Quispe
 
choro ciclo de vida anatomía y fisiología
choro ciclo de vida anatomía y fisiologíachoro ciclo de vida anatomía y fisiología
choro ciclo de vida anatomía y fisiología
elvis2000x
 
Sesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdfSesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdf
DeyvisPalomino2
 
Vehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebralVehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebral
everchanging2020
 
Clasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de BartonClasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de Barton
edujunes132
 

Último (20)

Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de IloPlan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
 
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptxDesbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
 
Becas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdfBecas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdf
 
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptxMedicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
 
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Medias
 
Diagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdfDiagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdf
 
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
 
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
 
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
 
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
 
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaaEspecificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
 
Aletas de Transferencia de Calor o Superficies Extendidas.pdf
Aletas de Transferencia de Calor o Superficies Extendidas.pdfAletas de Transferencia de Calor o Superficies Extendidas.pdf
Aletas de Transferencia de Calor o Superficies Extendidas.pdf
 
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOLNORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
 
choro ciclo de vida anatomía y fisiología
choro ciclo de vida anatomía y fisiologíachoro ciclo de vida anatomía y fisiología
choro ciclo de vida anatomía y fisiología
 
Sesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdfSesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdf
 
Vehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebralVehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebral
 
Clasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de BartonClasificacion geomecanica de Q de Barton
Clasificacion geomecanica de Q de Barton
 

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)