(1+5*5)+(3*2); El análisis semántico en ANTLR se hace de forma descendente, por ello se va desarrollando el árbol completo desde el inicio para su explicación.

Slides:



Advertisements
Presentaciones similares
Ejemplo Práctico de un Compilador Pequeño
Advertisements

Traductor DDS en CUP Expresiones lógicas.
Animación del Traductor DDS con CUP
A NIMACIONES PL-P RÁCTICA 12 CUP. A NÁLISIS CON CUP Introducción. La expresión que va a ser analizada es la siguiente: Se utilizará la misma nomenclatura.
Animación del segundo ejercicio de la práctica 12 opcional (herramienta ANTLR)
Evaluar el efecto de un tratamiento (1)
Filminas Octava Semana CI-1322 Autómatas y Compiladores Elaborado por: Sergio Pastrana Espinoza A33888.
Compiladores e intérpretes Generación de código intermedio II
Compiladores e intérpretes
Problemas resueltos de áreas e integrales definidas
Aprendizaje de Microsoft® Access® 2010
DOM ( Document Object Model) Prof. Franklin Cedeño.
Organización de Lenguajes y Compiladores 1
ANALIZADOR SINTACTICO
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
Traducción dirigida por la Sintaxis
CÁLCULO DIFERENCIAL.
Teoría de lenguajes y compiladores
Se le llama iniciador de cuadro de dialogo a:
Analizadores semánticos: DDS y EDT
VISUAL BASIC CONSOLA Todas las ordenes o instrucciones se digitan dentro de sub Main() y End Sub ÁREA DE TRABAJO: Las aplicaciones de consola son aquellas.
Tema 3. Optimización de Código
Presentación telemática de declaraciones tributarias en la Oficina Virtual Subdirección General De Gestión Tributaria Octubre de 2014.
Representación gráfica de funciones explícitas[1].
Razón de Cambio Promedio Razón de Cambio instantánea (la derivada)
Teoría de lenguajes y compiladores
Analizador Sintáctico Descendente

Algoritmos para calcular el Conjunto Primero y el Conjunto Siguiente
Traductores EDT con ANTLR. Introducción Los siguientes pasos facilitarán el seguimiento de la animación:  Primero se mostrará la expresión aritmética.
Sucesiones..
ANALISIS SINTACTICO Parte I
WHILE Estructuras Repetitivas
Informática Tema 5 - Estructuras de Control Estructuras de Repetición.
Todo traductor esta basado en una gramática para el lenguaje fuente. Todo traductor esta basado en una gramática para el lenguaje fuente. Una gramática.
Manual El programa no se instala es portable. Se ejecuta desde el archivo Information.exe.
(false and (74 >= 34)) xor 45 < 78 ; El análisis semántico en CUP se hace de forma ascendente, por ello se parte del árbol completo para su explicación.
FORMULAS ESTADISTICAS.

TUTORIAL PARA LA ELABORACIÓN DE UN P3E 2014 EN LA NUEVA INTERFAZ DEL SIIAU. SA/COPLAN/23 Septiembre 2013.
COMPONENTES PRINCIPALES DE LA PANTALLA DE POWER POINT 2007
EDT con ANTLR a e; e1t )e ( f Entrada: (1+5)*5; 1 a t1 f OPMULT numerote1 ft1 numero e1t OPSUMA ft1 numero En esta diapositiva se muestra el árbol.
Restricciones de Integridad
Traductores DDS con CUP. Introducción Los siguientes pasos facilitarán el seguimiento de la animación:  Primero se mostrará la expresión lógica que se.
Términos algoritmo diseñar algoritmo implementar algoritmo
1 Sebastián Argüello A60490 semana 3 Autómatas y compiladores CI-1322.
Teoría de lenguajes y compiladores
Procesos ITS - Informática Sistemas Operativos II Javier Sellanes.
FRANÇAIS BACHILLERATO
DEV- C++ ·include <iostream> Int x x=x+2(x)
Edward Barrera Barrera Cristian Anderson Isacc
Instituto Tecnológico de las Américas (ITLA)
Hoja de Cálculo EXCEL Introducción a la informática
Utilizar Costo Promedio Ponderado en el Software Administrativo SAW
Estructuras de Decisión
Universidad Mexicana en Línea Carrera: Administración Pública Asignatura: Estadística Tutor: Leonardo Olmedo Alumno: Alfredo Camacho Cordero Matrícula:
Análisis cinemático: ACELERACION
Marzo de 2010Dos Ideas - La visión de Sistemas desde el Desarrollo Uso de Procedimiento y Funciones Conceptos básicos.
Programación de Sistemas
Clase #3 de Access. Temario Consultas Consultas Creación y manejos de consultas Creación y manejos de consultas Macros Macros Relaciones Relaciones.
Para aplicaciones.   Una variable es un espacio de memoria en donde se almacenan datos 1. VARIABLES.
Matemáticas, juego,...fortuna: ¿Jugamos?
Autómatas y Compiladores. Segunda Semana. Ricardo Vargas Del Valle A35469.
Autómatas y Compiladores Semana 13. Ricardo Vargas Del Valle A35469.
Definición Partes Fundamentales Documento Word Libro de Excel Video Fuente:
Programación en Visual Basic Laboratorio #4 Por Antonio F. Huertas Modificado por: Nelliud D. Torres.
 Excel es un programa de aplicaciones que modifica tus habilidades para grabar datos y luego extraer resultados de la misma.  Con Excel puede ingresar.
Curso de programación Visual Chart 6 (1ªEd.) FLUJO DE TRABAJO.
Ciclos condicionales y exactos Estructura de control de ciclos
Transcripción de la presentación:

(1+5*5)+(3*2); El análisis semántico en ANTLR se hace de forma descendente, por ello se va desarrollando el árbol completo desde el inicio para su explicación. Las acciones semánticas se ejecutan una vez se procesan los terminales o no terminales inmediatamente anteriores en la gramática a dichas acciones. Los atributos heredados se pasan hacia los niveles inferiores del árbol, mientras que los sintetizados se pasan hacia los niveles superiores. En la animación se indicarán estos sucesos adecuadamente para su comprensión. NOTA – en la animación los no terminales D y U corresponden con los no terminales E1 y T1 respectivamente en la gramática.

Al procesar el no terminal F se pasa al antecedente T como atributo sintetizado el atributo “res” de F (que contiene el valor numérico asociado). A continuación se procesa el no terminal U al que se le pasa como atributo heredado el que subió de F a T para que sea utilizado si es necesario en los calculos de las derivaciones sucesivas antes de terminar de procesar el antecedente T.

El no terminal U deriva en lambda por lo que se devuelve hacia arriba como atributo sintetizado el valor que se le pasó como atributo heredado.

Al terminar de procesar el no terminal T se devuelve como atributo sintetizado a su antecedente E. A continuación se pasa a procesar el no terminal D al que se le pasa el resultado subido a E desde T como atributo heredado.

La entrada del no terminal D tiene el valor que se le pasa como atributo heredado venido del resultado del procesamiento del no terminal T. Este se utilizará para calcular la operación “+” una vez se procese el nuevo no terminal T. Para procesarlo se sigue el proceso explicado anteriormente donde se pasa como atributo sintetizado a T el resultado de F y se pasa como atributo heredado a U el valor que sube de F a T.

La entrada del no terminal D tiene el valor que se le pasa como atributo heredado del resultado del procesamiento del no terminal T. Se utilizará para calcular la operación “+” una vez se procese el nuevo no terminal T. Al procesar el no terminal T que deriva de U se devuelve como atributo sintetizado su valor. A continuación se utiliza para calcular la operación “*” con el valor de la entrada de F que llego como atributo heredado de T dando como resultado 25.

El no terminal U deriva en lambda por lo que se devuelve como atributo sintetizado el que le llego como atributo heredado sin modificar. Este valor va ascendiendo como atributo sintetizado de los distintos no terminales que van finalizando su procesamiento hasta llegar al no terminal D.

Al llegar a D el atributo “res” del no terminal T (al terminar su procesamiento) se calcula la suma con la entrada que llegó a D desde su antecedente E, con resultado 26. Este valor se pasa como atributo heredado al no terminal D inferior para continuar el procesamiento del antecedente D.

Al ir finalizando los procesamientos de los no terminales lo valores del cálculo se van pasando hacia los antecedentes como atributos sintetizados. El proceso continua con el mismo esquema hasta que el antecedente A se procesa por completo, momento en el cual se mostrará por pantalla el resultado.

El resultado de la expresión (3 El resultado de la expresión (3*2) se calcula en los niveles más bajos del árbol ascendiendo a continuación como atributo sintetizado al finalizar los procesamientos de los no terminales.

Finalmente el resultado de la expresión llega a la raiz donde se mostrará el resultado por pantalla.