Diseño de compiladores

Páginas: 5 (1140 palabras) Publicado: 2 de febrero de 2014
Diseño de
Compiladores I

Trabajo práctico de cursada

GRUPO N° 22
Integrantes:
● Padilla, Juan Martin
○ E-mail: martin22padilla@gmail.com
○ Libreta: 247093


Moran , Jonathan Ezequiel
○ E-mail: moran.j.e99@gmail.com
○ Libreta: 246922.

GRUPO 22 – Padilla Juan Martin , Moran Jonathan Ezequiel – Diseño de compiladores I

1

Índice
Temas Asignados
Introducción
Decisiones deimplementación y diseño
Implementación
Autómata
Matriz de transición de estados
Lista de acciones semánticas
Descripción del proceso de desarrollo del Analizador sintáctico
Lista de no terminales
Lista de errores léxicos y sintácticos
Conclusión

GRUPO 22 – Padilla Juan Martin , Moran Jonathan Ezequiel – Diseño de compiladores I

3
3
3
3
5
5
6
7
7
8
9

2

TemasAsignados
Funciones de tipo 4, pasaje de parámetros por referencia. Tipos definido “ulongint”.
Comentarios que pueden ocupar más de una línea, multilínea. Cadenas que ocupan como
máximo una linea, 1 linea. Iteraciones de tipo 1, estas se definen con loop y until.

Introducción
En este documento contiene una descripciones de características del compilador que se esta
desarrollando por parte de losalumnos del grupo. El objetivo de esto es facilitar la comprensión
del compilador que se entrega en conjunto con dicho documento. Ofrece una serie de
aclaraciones las cuales facilitan la lectura del código, descripciones de clases, con su
estructura y funcionalidad. Aclaración de los “no terminales” los cuales puede que su nombre
por más representativos que sean lo suficientemente claros.
Enel también se reflejan decisiones tomadas para que el lector entienda el porqué de cada
una, y problemas que surgieron a partir de estas decisiones, y como se soluciono cada uno de
los problemas que surgieron.

Decisiones de implementación y diseño
En esta sección se va a dar una breve descripción del porqué se tomaron ciertas decisiones de
implementación y diseño.
El lenguaje en el que seimplementó el compilador fue C++, la razón principal es su sencillez,
así como su potencia. Un lenguaje como este es más que suficientemente potente para
realizar un trabajo como este y los integrantes del grupo se encuentran familiarizados con este
lenguaje. Otra razón es la gran cantidad de documentación que existe de este lenguaje en
internet, el cual resulta útil al momento de desarrollarsoftware nuevo.

Implementación
Se definió una clase llamada “Archivo” esta es la encargada de
manipular el código fuerte, implica leer el mismo para retornar el carácter
correspondiente cuando se le pide que lea. Esta clase también permite
“retractar” la posición de lectura, para volver a leer algun caracter
nuevamente cuando es necesario. Para poder trabajar con Archivos se
incluyo lalibrería “fstream”.

GRUPO 22 – Padilla Juan Martin , Moran Jonathan Ezequiel – Diseño de compiladores I

3

La clase ActionSem, es la cual define la
estructura principal de toda acción
semántica. Esta contiene el
comportamiento general de todas las
acciones y de ella heredan el resto de las
distintas acciones que más adelante se
define el objetivo y función.
ActionSem tiene un bufferinterno que le
permite ir almacenando los caracteres
hasta que se identifica un token, y también
un valor entero que sirve como índice
dentro de ese buffer. Los métodos que
contiene son en su mayoría métodos para
manipular el buffer. En particular hay que
destacar el método “Activar()” este es un
método virtual que cada una de las acciones semántica que heredan de esta definan con susparticularidades.
Otra de las clases importantes fue “main”, en ella es la encargada de
utilizar las clases antes mencionadas. También se encarga de llevar el
control de número de línea, y llevar un control de los errores que
ocurren (que son identificados).
Esta tiene la responsabilidad de crear todas las estructuras e inicializar
todo, en ella se define cada una de las acciones semánticas, y...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Analisi-diseño-compiladores
  • Compiladores
  • Compiladores
  • Compilador
  • COMPILADORES
  • Compiladores
  • Compiladores
  • Compiladores

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS