Sei sulla pagina 1di 2

TRATAMIENTO DE ERRORES

Recuperacin de emergencia (o en modo pnico): Al detectar un error, el


analizador sintctico salta todos los smbolos de entrada hasta encontrar un smbolo que pertenezca a un conjunto previamente definido de smbolos de sincronizacin.

Universidad de Guayaquil

Recuperacin por insercin, borrado y reemplazo:


ste tambin es un mtodo fcil de implantar y funciona bien en ciertos casos de error. Usemos como ejemplo una declaracin de variable en PASCAL. Cuando una coma va seguida por dos puntos, en lugar de un nombre de variable, es posible eliminar esta coma.

Carrera de ingeniera en Sistema Computacional

Recuperacin por expansin de gramtica:


El 60% de los errores en los programas fuente son errores de puntuacin, por ejemplo, la escritura de un punto y coma en lugar de una coma, o viceversa. Una forma de recuperarse de estos errores es legalizarlos en ciertos casos, introduciendo lo que llamaremos producciones de error en la gramtica del lenguaje de programacin.

Materia: Compiladores Integrantes: Manuel Cabrera Johanna Obregn Rita Riofro Cinthya Pauta Tema: Analizador Sintctico: Introduccin Manejo de errores y tratamiento de los mismos

Qu es un Anlisis Sintctico?
Es la fase del analizador que se encarga de chequear el texto de entrada en base a una gramtica dada. Y en caso de que el programa de entrada sea vlido, suministra el rbol sintctico que lo reconoce.

Construye un rbol sintctico y lo pasa al resto del compilador para que lo siga procesando

Manejo de errores Sintcticos


El analizador sintctico detecta un error de sintaxis cuando el analizador lxico proporciona el siguiente smbolo y ste es incompatible con el estado actual del analizador sintctico. Los errores sintcticos tpicos son: Parntesis o corchetes omitidos. x : = y * (1 + z; Operadores u operando omitidos x : = y (1 + z ); Delimitadores omitidos. x : = y + 1 IF a THEN y : = z.

Por qu hacemos un anlisis Sintctico?


Podemos proveer una definicin precisa y fcil de entender Una gramtica apropiada imparte estructura a un lenguaje de programacin

Qu hace el analizador Sintctico?


En la prctica puede: Acceder a la tabla de smbolos (para hacer parte del trabajo del analizador semntico). Chequeo de semntico). tipos (del analizador

Podemos construir automticamente un parser que determine si el programa es sintcticamente correcto. Ayuda en el proceso de traduccin Fcil modificar/aadir al lenguaje

Objetivos del manejador de errores


Reportar la presencia de errores con claridad y precisin. Recuperarse de cada error lo bastante rpido como para poder detectar los errores siguientes. No debe retrasar de manera significativa el procesamiento de programas correctos

Funcines
Analiza una cadena de tokens obtenida del analizador de lxico y comprueba si la misma puede ser generada por la gramtica del lenguaje fuente. El analizador sintctico cuando encuentra un error debe reportarlo y recuperarse para seguir analizando el resto del programa

Generar cdigo intermedio. Generar errores cuando se producen.

Potrebbero piacerti anche