ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

LABORATORIO TEORÍA DE LA COMPUTACIÓN - GRUPO B


Enviado por   •  4 de Agosto de 2021  •  Documentos de Investigación  •  1.094 Palabras (5 Páginas)  •  75 Visitas

Página 1 de 5

UNIVERSIDAD NACIONAL DE SAN AGUSTIN DE AREQUIPA FACULTAD DE INGENIERIA DE PRODUCCION Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERIA DE SISTEMAS

[pic 1]

Curso: LABORATORIO TEORÍA DE LA COMPUTACIÓN
- GRUPO B

Trabajo:        Laboratorio 7

Elaborado por:

-        Flores Valdivia Denilson Edgardo


UNIVERSIDAD NACIONAL DE SAN AGUSTIN

FACULTAD DE INGENIERÍA DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

[pic 2]

GUÍA DE LABORATORIO

TEORÍA DE LA COMPUTACIÓN 2021 A

EDITH PAMELA RIVERO TUPAC

Ing. Informática y de Sistemas Magister en Seguridad Informática

COMPETENCIAS[pic 3]

Al finalizar la asignatura el estudiante podrá aplicar de forma transformadora conocimientos de teoría de la computación como herramienta para evaluar, sintetizar y mostrar información como fundamento de sus ideas y perspectivas para la resolución de problemas.

Gramáticas independientes de contexto con Bison[pic 4]

  • Utilizar bison para crear gramáticas independientes de contexto
  • Manejar los errores al evaluar una gramática

I OBJETIVOS

II[pic 5][pic 6]

  • Gramáticas independientes o libres de contexto
  • Manejo de errores
  1. Gramáticas Independientes del Contexto

TEMAS A TRATAR

III MARCO TEÓRICO[pic 7]

Una Gramática independientes del contexto (GIC) es una gramática formal en la que cada regla de producción es de la forma:

Exp → x

Donde Exp es un símbolo no terminal y x es una cadena de terminales y/o no terminales. El término independiente del contexto se refiere al hecho de que el no terminal Exp puede siempre ser sustituido por x sin tener en cuenta el contexto en el que ocurra. Un lenguaje formal es independiente de contexto si hay una gramática libre de contexto que lo genera, este tipo de gramática fue creada por Backus-Naur y se utiliza para describir la mayoría de los lenguajes de programación.

Una GIC está compuesta por 4 elementos:

  1. Símbolos terminales (elementos que no generan nada)
  2. No terminales (elementos del lado izquierdo de una producción, antes de la flecha "->")
  3. Producciones (sentencias que se escriben en la gramática)
  4. Símbolo inicial (primer elemento de la gramática)

  1. Manejo de errores en Bison

El analizador de Bison detecta un "error de análisis" o un "error de sintaxis" siempre que lee un token que no puede satisfacer ninguna regla de sintaxis. Una acción en la gramática también puede proclamar explícitamente un error, usando la macro YYERROR. El analizador de Bison espera informar el error llamando a un función de error denominada 'yyerror', esta da un informe que debe proporcionar. Está llamado por 'yyparse' cada vez que se encuentra un error de sintaxis, y recibe un argumento. Para un error de análisis, la cadena es normalmente "error de análisis".

Si define la macro 'YYERROR_VERBOSE' en las declaraciones de Bison, entonces Bison proporciona una cadena de mensaje de error más detallada y específica en lugar de simplemente "error de análisis".

El analizador puede detectar otro tipo de error: desbordamiento de pila. Esta sucede cuando la entrada contiene construcciones que son muy profundamente anidadas. No es probable encontrar esto, ya que el Bison el analizador extiende su pila automáticamente hasta un límite muy grande. Pero si se produce un desbordamiento, el error observado contiene el argumento "desbordamiento de pila de analizador".

  1. Codificación de error en programas simples:

La siguiente definición es suficiente en programas simples:

[pic 8]

Es posible agregarle el macro de YYERROR_VERBOSE, de la siguiente manera:

[pic 9]

IV[pic 10]

ACTIVIDADES

  1. Crear programas de manera evolutiva, iniciando desde los conceptos más sencillos.

V EJERCICIOS RESUELTOS[pic 11]

  1. Ejercicio 1:

Crear un programa que reconozca un pronombre. Al inicio del programa, debe presentar un mensaje "Ingrese la cadena" y en caso de presentar un error, mostrar el mensaje "cadena invalida".

  1. Archivo pronombre.l

[pic 12]

  1. Archivo pronombre.y

[pic 13]

  1. Ejercicio 2:

Crear las siguientes reglas de producción de gramáticas A => aA, A=>a

  1. Archivo prog2.l

[pic 14]

  1. Archivo prog2.y

[pic 15]

  1. Ejercicio 3:

Crear las siguientes reglas de producción de gramáticas en para que reconozca cadenas que acepten las letras a o b o la combinación de ambos

...

Descargar como (para miembros actualizados) txt (7 Kb) pdf (780 Kb) docx (549 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com