lenguaje y automatas i 5.3 y 5.4

Upload: lazaro-gonzalez-santos

Post on 11-Oct-2015

56 views

Category:

Documents


0 download

TRANSCRIPT

  • PRESENTA:Gonzlez Santos Lzaro

    Jurez Constantino Julin IsmaelLiborio Sobrevilla Abraham Isa

    CARRERA:Ing. Sistemas Computacionales

    MATERIA:Lenguajes y Autmatas I

    CATEDRATICO:M en C. Mara Alejandra Rosas Toro

    Cerro Azul, Ver., a 30 de Abril 2014

    INSTITUTO TECNOLOGICO DE CERRO AZUL

  • Tabla: conjunto de pares clave-valor, llamados elementos de la tabla. La tabla desmbolos es una componente necesaria de un compilador. Al declarar un identificador

    (normalmente una sola vez), ste es insertado en la tabla. Cada vez que se utilice el

    identificador se realizar una bsqueda en la tabla para obtener la informacin asociada

    (el valor).

    Bsqueda: dada la clave de un elemento, encontrar su valor.

    Insercin: Dado un par clave-valor, aadir un elemento nuevo a la tabla.

    Cambio de valor: Buscar el elemento y cambiar su valor.

    Borrado: Eliminar un elemento de la tabla.

    Longitud de bsqueda (o tiempo de acceso)

  • Una tabla de smbolos es una estructura de datos que contieneun registro por cada identificador, con los campos para los

    atributos del identificador. Puede manejar los nombres

    (identificadores y palabras reservadas) del cdigo fuente. la

    estructura de datos permite encontrar rpidamente el registro

    de cada identificador y almacenar o consultar rpidamente

    datos de ese registro.

  • Cada fase puede encontrar errores, sin embargo, despusde detectar un error, cada fase debe tratar de alguna forma

    ese error, para poder continuar la compilacin, permitiendo

    la deteccin de mas errores en el programa fuente. Un

    compilador que se detiene cuando encuentra el primer error,

    no resulta tan til como debiera.

  • Tipos de errores que se puedan encontrar

    Error lxico: tokens no reconocibles, los detecta el scaner (anlisislxico)

    Tokens: es un elemento o cadena del programa fuente que tienesignificado propio, como puede ser las palabras reservadas del

    lenguaje, los identificadores, los operadores, etc.

    Error sintctico: son los que no cumplen las reglas de sintaxis dellenguaje, detectndolos el parser (anlisis sintctico).

  • Como la tarea que realiza el analizador lxico es un caso especial decoincidencia de patrones, se necesitan los mtodos de especificacin

    y reconocimiento de patrones, y estos mtodos son principalmente las

    expresiones regulares y los autmatas finitos. Sin embargo, un

    analizador lxico tambin es la parte del traductor que maneja la

    entrada del cdigo fuente, y puesto que esta entrada a menudo

    involucra un importante gasto de tiempo, el analizador lxico debe

    funcionar de manera tan eficiente como sea posible.

  • Un token o componente lxico es una cadena de caracteres que tieneun significado coherente en cierto lenguaje de programacin.

    Ejemplos de tokens, podran ser palabras clave (if, while, int),

    identificadores, nmeros, signos, o un operador de varios caracteres.

    Son los elementos ms bsicos sobre los cuales se desarrolla toda

    traduccin de un programa, surgen en la primera fase, llamada

    anlisis lxico.

  • El compilador tiene que:

    Reportar clara y exactamente la presencia de errores.

    Recuperarse de cada error lo suficientemente rpido para poderdetectar errores subsiguientes:

    * Tratar de evitar mensajes falsos de error.

    * Un error que produce un token errneo.

    *Errores lxicos posibles.