/clase_automatas_2

Proyecto para la práctica 5 de la clase Lenguajes y autómatas 2.

Primary LanguageJavaScriptMIT LicenseMIT

Proyecto para la práctica 5 de la clase Lenguajes y autómatas 2.

Ver proyecto


Ingeniería en Sistemas Computacionales
Lenguajes y Autómatas II
Practicas

Práctica 5 : Simulación de la ejecución del vector de código intermedio expresiones aritméticas-lógicas-relacionales y condicionales

1. Objetivo

El alumno aplica los conceptos asociados para la ejecución del Vector de código
intermedio en expresiones aritméticas/lógica/relacionales incluyendo estructura
condicional IF-THEN-ELSE, utilizando el lenguaje de programación de su
elección.

2. Desarrollo

Modifique la práctica anterior e incorpore el código necesario utilizando el
lenguaje de programación de su elección para obtener el vector de código
intermedio, considerando lo siguiente:
  • Expresiones aritméticas-lógicas-relacionales (practica anterior)
  • Estructura condicional (IF- THEN ELSE/ SI-ENTONCES-SINO)
Maneje la prioridad vista en clase, utilice pila de operadores, pila de estatutos
y pila de direcciones, reutilice código de práctica anterior donde incluya
expresiones y manejo de estructura de control, maneje entrada de datos a partir
de un archivo de texto, considere estructuras anidadas. INCLUYA diseño de la
aplicación acorde al lenguaje de programación en el reporte y genere su
correspondiente pila de ejecución, visualice comportamiento de pilas y
resultados.
ENTRADA:
Archivo de texto que contiene las líneas de código a generar VCI, considera
líneas de código referente a estructuras a analizar (expresiones y condicionales)
SALIDA:
Vector de código intermedio (ajuste y maneje de manera conveniente
direcciones de VCI, incluya en el reporte), comportamiento de pilas y resultado
correspondiente.

Ejemplo:

ENTRADA: VCI de código fuente, por ejemplo

VCI

SALIDA: valores que va tomando la pila de ejecución y valor final de la variable asignada x.

PE

SALIDA EN PANTALLA

x=10
a=32
r=126

3. Reporte

Documento que subirá a la plataforma de EDUCATEC, que debe incluir nombre de práctica, fecha, participantes (MAXIMO 3), CADA PARTICIPANTE DEBERA SUBIR EL REPORTE DE MANERA INDIVIDUAL A LA PLATAFORMA EDUCATEC, desarrollo, conclusiones personales y bibliografía. Anexar código fuente.

En caso de detectar una copia, TODOS LOS INVOLUCRADOS tendrán las sanciones correspondientes (Competencia NO LOGRADA – Repetición del curso)

  1. Bibliografía

  2. Aho Alfred V., U. J. (2007). Compiladores. Principios, técnicas y herramientas (2da. ed.). México: Pearson Educación.

  3. Alfonseca Moreno, M. (2006). Compiladores e intérpretes: teoría y práctica (1ra ed.). España: Pearson/Prentice Hall.

  4. Lemone, K. A. (1996). Fundamentos de compiladores: cómo traducir al lenguaje de computadora. México D.F.: Compañía Editorial Continental

  5. Ruíz, J. (2009). Compiladores-Teoría e implementación. México: Alfaomega.

  6. Grune, Dick. (2007). Diseño de compiladores modernos. McGraw-Hill.