platon179
Messages postés237Date d'inscriptionlundi 20 mai 2002StatutMembreDernière intervention22 juillet 20112 5 févr. 2006 à 12:44
Salut :)
Si c'est bien ce que je pense, tu cherches à faire un mini-compilateur, qui produit des fichiers exécutables à partir de sources...
Dans ce cas, tu dois étudier le format des fichiers .EXE pour un exécutable MS-DOS, le format PE pour les exécutables Win32 ou les fichiers .ELF pour les fichiers exécutables sous Linux. Jette un coup d'oeil sur http://www.wotsit.org, ou sur http://www.xbdev.net pour le format PE de Win32, c'est bien expliqué ;) Il me semble que les fichiers .EXE de MS-DOS sont les moins compliqués.
De plus, il faut que tu étudies le format des instructions Intel, ce qui est relativement difficile. Il y a pas mal de sites qui proposent des listing d'opcodes (des codes machines correspondant aux instructions de base), mais assez peu qui expliquent de manière claire comment composer ces codes. Voici une petite liste de sites :
http://www.sandpile.org http://www.nondot.org/sabre/os http://www.osdever.net où tu pourras récupérer les 2000 pages des 3 manuels Intel pour leur processeurs :)
Attends, non, ce n'est pas tout à fait terminé... :p
Tu dois encore t'occuper de lire correctement le fichier d'entrée (réalisation d'un analyseur syntaxique, lexical etc...), mais, si tu réussis les deux tâches d'au-dessus, je pense que tu n'auras pas besoin d'aide ici... Une petite info quand meme : il existe un tutorial expliquant comment écrire un compilateur, ici : http://compilers.iecc.com/crenshaw/
mogwai93
Messages postés362Date d'inscriptionmardi 31 décembre 2002StatutMembreDernière intervention 4 novembre 2023 6 févr. 2006 à 10:14
dans ce cas utilise les ressources :
ton programme principal contient en ressource ton executable à créer, mais sans les variables
pdt l'execution du programme principal, tu extrais l'exe à creer
et tu y inseres en ressource les données à ajouter
biensur ton exe à créer devra savoir lire les ressources que tu lui donneras !