Créer un compilateur C avec C

agsudoku Messages postés 2 Date d'inscription mercredi 8 juillet 2009 Statut Membre Dernière intervention 19 octobre 2009 - 18 oct. 2009 à 15:23
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 - 19 oct. 2009 à 14:08
Bonjour

Je suis appelée à créer un compilateur C dans le cadre d'un projet.

je connais le principe(analyse lexicale, ensuite syntaxique, analyse sémantique et enfin génération du code)

Mais je trouve un problème. Comment commencer?

Merci d'avance

3 réponses

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
19 oct. 2009 à 10:17
Procure toi dans un premier temps la grammaire du C.
Ensuite réalise les étapes suivantes:
- Lexing
- Parsing
- Binding
- Type checking
- Transformation en ASM

J'ai déjà réalise à titre personnel un compilateur, qui se trouve ici:
http://www.cppfrance.com/codes/COMPILATEUR-PSEUDO-PASCAL_49318.aspx

Les étapes sont les mêmes que ce que tu veux réaliser (seul la grammaire change).
Si tu es en C++, je ne peux que te conseiller d'utiliser Boost::spirit, ou Flex/Lex (fonctionne aussi en C pour ce dernier).
1
agsudoku Messages postés 2 Date d'inscription mercredi 8 juillet 2009 Statut Membre Dernière intervention 19 octobre 2009
19 oct. 2009 à 13:42
Bonjour

Merci pour la réponse

Mais est ce que vous avez déja la grammaire du langage C?

Si oui svp est ce que vous pouvez me l'envoyer.

Merci d'avance.
0
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
19 oct. 2009 à 14:08
Les deux premiers liens (en bonus le deuxième lien est compatible Flex/Lex):
http://lmgtfy.com/?q=grammaire+du+C
0
Rejoignez-nous