An open API service indexing awesome lists of open source software.

https://github.com/fabiannorbertoescobar/compilador

TP de Lenguajes y Compiladores
https://github.com/fabiannorbertoescobar/compilador

asm assembler batch bison c compiladores compiler flex intermediate-code-generation intermediate-language lex lexical-analyzer parser polish-notation reverse-polish-notation sintaxis-analyzer yacc

Last synced: 3 months ago
JSON representation

TP de Lenguajes y Compiladores

Awesome Lists containing this project

README

        

# Compilador
NOTACIÓN INTERMEDIA EN POLACA INVERSA

## TP de Lenguajes y Compiladores

### Integrantes del equipo

* Fabián Escobar ([FabianNorbertoEscobar](https://github.com/FabianNorbertoEscobar))

* Pablo López ([pabloL0pez](https://github.com/pabloL0pez))

* Ricky Salva ([rnsalva](https://github.com/rnsalva))

* Ivo Strficek ([ivostrficek](https://github.com/ivostrficek))

* Gustavo Céspedes ([gtemporalis](https://github.com/gtemporalis))

Un compilador es un programa informático que traduce o compila un programa que ha sido escrito en un lenguaje de programación a un lenguaje común, usualmente lenguaje de máquina, aunque también puede ser traducido a un código intermedio o a texto y que reúne diversos elementos o fragmentos en una misma unidad. Tiene dos fases:

### Análisis del programa fuente:
Se trata de la comprobación de la corrección del programa fuente, e incluye las fases correspondientes al análisis léxico (que consiste en la descomposición del programa fuente en componentes léxicos), análisis sintáctico (agrupación de los componentes léxicos en frases gramaticales ) y análisis semántico (comprobación de la validez semántica de las sentencias aceptadas en la fase de análisis sintáctico).

### Síntesis del programa objeto:
Su objetivo es la generación de la salida expresada en el lenguaje objeto y suele estar formado por una o varias combinaciones de fases de generación de código (normalmente se trata de código intermedio o de código objeto) y de optimización de código (en las que se busca obtener un código lo más eficiente posible).

## Instructivo:

- Instalar:

•Flex

•Bison

•MinGW

- Crear las variables de entorno:

• bison (ruta hacia bison.exe ..\GnuWin32\bin\bison.exe)

• flex (ruta hacia flex.exe ..\GnuWin32\bin\flex.exe)

• gcc (ruta hacia gcc.exe ..\MinGW\bin\gcc.exe)

• m4 (ruta hacia m4.exe ..\GnuWin32\bin\m4.exe)

- Agregar ..\MinGW\bin a la variable de entorno Path