Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   C/C++ (http://www.forosdelweb.com/f96/)
-   -   como hacer un compilador en C (http://www.forosdelweb.com/f96/como-hacer-compilador-c-580069/)

tuangello 25/04/2008 16:55

como hacer un compilador en C
 
Hola Quisiera Saber Como Se Debe Hacer Una Gramatica Con Nuentra Propia Sintaxis Alguien De Ustedes Me Puede Ayudar

JavierB 26/04/2008 02:32

Re: como hacer un compilador en C
 
Hola tuangello. Bienvenid@ al foro.

Para hacer preguntas es preferible utilizar el foro que mejor se adapte a tu duda, así podrán ayudarte más usuarios.

Muevo tu mensaje al foro de C/C++ desde Bienvenida a Foros del Web.

Saludos, :adios:

alasarr 26/04/2008 02:41

Re: como hacer un compilador en C
 
tendrias que usar flex (analizador morfologico) y bison (analizador sintactico)

despues tendras que generar el codigo ensamblador a partir de tu gramatica...

si quieres dame tu mail y te mando un compilador que hice utilizando estas dos funciones

nikolog 28/04/2008 12:20

Re: como hacer un compilador en C
 
[email protected]
alasarr
si puedes me lo mandas a mi tambien por que me llama mucho la atencion

ocampokevin91 14/06/2011 12:17

Respuesta: como hacer un compilador en C
 
me podrias enviar a mi tambien eso, este es mi correo :D
[email protected]

jevangelista 14/06/2011 13:20

Respuesta: como hacer un compilador en C
 
Tu pregunta es complicada e intervienen muchos temas, es difícil verlo en un solo post, te recomiendo ir poco a poco con los temas.

En un principio lo primero que debes hacer es planear tu analizador léxico mediante un autómata finito.

He visto que recomiendan mucho Flex, yo no lo he usado y soy creyente de tener todo el control mediante lenguaje C aunque ello implique mucho más trabajo, es cuestion de preferencias.

Te renvio algo que contesté en otro post:

Dadas las posibles cosas que se deben hacer en el desarrollo de un compilador yo recomendaría usar C o C++.

Mas que un lenguajes requieres aprender técnicas variadas como estructuras de datos que van desde arreglos hasta árboles en memoria. Es decir que necesitas una herramienta que te permita alojar, usar y liberar memoria de manera intensiva.

En cuanto a las técnicas específicas requieres manejo de autómatas, grafos, diagramas de sintaxis. Estas serían tus herramientas para planificar y diseñar tu lenguaje.

Si quieres llegar hasta el compilador necesitas amplio conocimiento de ensamblador.

Actualmente hay varios proyectos de código abierto que te pueden inspirar, te dejo una liga de un lenguaje que tiene renombre y del que puedes descargar el código para que lo estudies: http://www.lua.org/home.html

Te menciono algunos libros (de mi bilbioteca particular):

Lenguajes de programación, diseño e implementación. Prant Zelkowitz
Introducción a la teoría de autómatas,lenguajes y computación. Hopcroft, Ullman
Compiladores, principios, técnicas y herramientas. Aho, Sethi, Ullman.
Compiladores teoría e implementación. Jacinto Ruiz Catalan.

Y por ultimo te recomiendo sacar credencial de biblioteca de externo en alguna universidad donde tengan carreras de informática, ahí tienen de todo y seguro encuentras de entrada libre.

Espero mucho te sirva y mucha suerte con tus proyectos.!

sam90 14/06/2011 15:22

Respuesta: como hacer un compilador en C
 
mira por ejemplo esta pagina:

http://gnuu.org/2009/09/18/writing-y...ompiler/all/1/


La zona horaria es GMT -6. Ahora son las 04:00.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.