Análisis Sintáctico Capítulo 4.

Slides:



Advertisements
Presentaciones similares
ÁRBOLES DE SINTAXIS ÁRBOL grafo dirigido acíclico.
Advertisements

Leonel Morales Díaz Ingeniería Simple
Análisis Sintáctico Descendente
Filminas Segunda semana
Clasificación de los compiladores
Compiladores e intérpretes Análisis Sintáctico II
Compiladores e intérpretes Generación de código intermedio II
Compiladores e intérpretes
Compiladores e intérpretes Análisis Sintáctico III
Programación de Computadores
Programación de Computadores
Cb00843 Traductores Rogelio Dávila Pérez Profesor Planta
Análisis Lexicográfico
Iteración La iteración permite modelar problemas en los cuales una secuencia de instrucciones debe ejecutarse varias veces. La cantidad de iteraciones.
Metodología de la Programación
ANALIZADOR SINTACTICO
Analizadores Sintácticos Descendentes Predictivos
Seminario de Actualización - Excel Avanzado y Macros
Unidad 1. Introducción al proceso de compilación.
Teoría de lenguajes y compiladores
Analizador Léxico. 4 scanners:
Unidad 4: Análisis de algoritmos (parte II)
Preguntas tipo test (Tema I)
Teoría de Autómatas y Lenguajes Formales Alma María Pisabarro, 2007
Traducción dirigida por la Sintaxis
ANALISIS SINTACTICO DESCENDENTE
Teoría de lenguajes y compiladores
C lase 10 COMPUTACION /17/2014Computacion - Fac. Ingeniería2  Ademas de los ya vistos (tipos simples), puede usarse como parámetros variables.
Compiladores Análisis Léxico Oscar Bonilla Universidad Galileo.
MÓDULO DE PROCEDIMIENTOS Los módulos también pueden contener subrutinas y funciones → MÓDULO DE PROCEDIMIENTOS  PROCEDIMIENTOS → son compilados como parte.
ANALISIS SINTACTICO El análisis gramatical es la tarea de determinar la sintaxis, o estructura, de un programa. Por esta razón también se le conoce como.
Teoría de lenguajes y compiladores
Analizador Sintáctico Descendente
TRAMPAS EN EL DISEÑO DE LENGUAJES CON RELACIÓN A LOS NOMBRES - REGLAS DE ALCANCE - COMPILACIÓN POR SEPARADO CONTROL DE FLUJO - EVALUACIÓN DE EXPRESIONES.
Programación de sistemas
M.C. Meliza Contreras González
Análisis sintáctico LR: SLR (LR simple)
Procesadores del Lenguaje
M.C. Juan Carlos Olivares Rojas
Teoría de lenguajes y compiladores
M.C. Juan Carlos Olivares Rojas
Análisis de Algoritmos
INGENIERIA EN SISTEMAS COMPUTACIONALES
ANALISIS SINTACTICO Parte I
Sintaxis.
Programación I Universidad Nacional de Luján
Clasificación de Gramáticas y Manejo de Errores
Resolución de Problemas y Algoritmos Uso de iteración con secuencias
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Teoría de lenguajes y compiladores
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.
Introducción al Análisis Sintáctico
Lectura 4: Compilación e Interpretación
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Bloque 1: Introduccion Unidad 3: Análisis de algoritmos (parte I)
Teoría – Alejandro Gonzalez
Módulo 8: Manejo de Errores y Excepciones
Programación de Sistemas
Tema 1. Introducción y Conceptos Básicos
Análisis Léxico Área Software de Base.
Departamento de Informática Universidad Técnica Federico Santa María Temas 2,3,4: Estructura de un Programa Pascal Declaraciones Tipos de Datos Simples.
Unidad 1. Introducción a los Compiladores.
1 Sebastián Argüello A60490 semana 3 Autómatas y compiladores CI-1322.
Autómatas y Compiladores Novena Semana. Ricardo Vargas Del Valle A35469.
Preposición: suma= var1 + var2 + 10; Análisis Léxico El analizador léxico lee los caracteres del programa fuente, y verifica que correspondan a una secuencia.
El proceso de compilación
IV. GRAMÁTICAS DISTRIBUIDAS Y TABLAS DE SÍMBOLOS
Estructuras de Control
Programación de Sistemas
REGLAS PARA ELABORAR SEUDOCODIGOS Y DIAGRAMA DE FLUJO
Estructura de Datos PILA Universidad Hispanoamericana Prof. Ing. Erick López.
Transcripción de la presentación:

Análisis Sintáctico Capítulo 4

Analizador Sintáctico Componente Léxico (Token) Arbol de Análisis Sintáctico Programa Fuente Analizador Léxico Analizador sintáctico Resto de Etapa Inicial Código Intermedio GetNextToken() Tabla de Símbolos

Errores Léxicos Sintácticos Semáticos Lógicos Escribir mal algo (fi en lugar de if) Sintácticos Paréntesis no equilibrados If sin Then Semáticos Llamada a función con parámetros de tipo incorrecto Lógicos Recursión infinita Run time error

Errores Sintácticos Objetivos Informar de los errores con claridad Lugar donde ocurrió el error Recuperarse de los errores Varias estrategias No retrasar el análisis en programas correctos

Programa ejemplo Program impmax(input, output); Var x, y : integer; Function max(i: integer; j: integer) : integer; {devuelve el máximo de los enteros i y j} Begin if i > j then max := i else max := j End; readln(x,y); writeln(max(x,y)) End.

Estrategias de recuperación de errores En modo de pánico A nivel de frase De producciones de error De corrección global

En modo de pánico Se descubre el error Se desechan símbolos de entrada Se llega a un componente de sincronización ; end loop then Se debe definir cuáles se usarán Puede desechar gran parte de la entrada Garantiza recuperación

A nivel de frase Identificar prefijo para la entrada restante Ejemplo If while not true then ... Entrada restante: not true then... Prefijo identificable: if Corrección: if not true then ... Difícil de implementar

Producciones de error Se identifican patrones de error Se incluyen producciones para esos patrones Si la producción se usa... Corregir en reglas semánticas Modificar la gramática

Corrección Global Identificar todas las posibles variaciones Evaluar la mínima Utilizarla