Comment Voulez-Vous Faire Un Assembleur?
Je voudrais faire un simple assembleur x86. Je me demande si il y a des tutoriels pour faire votre propre assembleur. Ou si il y a un simple assembleur que j'ai pu étudier.
Aussi, je me demande quels sont les outils utilisés dans la recherche et la manipulation de l'option binaire/hexadécimal de programmes.
- Je préfère le développement de l'assembleur en C.
- Certaines des références citées dans stackoverflow.com/questions/1669/learning-to-write-a-compiler probablement répondre à cette phase de compilation (et certains le font probablement pas). [[À ce sujet, pas un doublon.]]
- Jetez aussi un oeil @ "Comment écrire un désassembleur?" stackoverflow.com/questions/924303/how-to-write-a-disassembler
- Ceci est valable et pas trop large, l'OP est juste à la recherche de tutoriels ou de ressources à ce sujet. L'écriture est un assembleur trop large pour Stack Overflow? Haut niveau les gars..
Vous devez vous connecter pour publier un commentaire.
C'est ce que vous cherchez:
Les Monteurs Et Les Chargeurs - Par David, Salomon. Publié En Février, 1993 - Librement disponibles (télécharger ici)
Bien sûr, vous allez avoir besoin de l'suivantes:
Vous pouvez toujours vous référer à des implémentations de l'Opensource Assembleurs:
Juste un très petit morceau de code en Delphi 7.
L'assembleur comprend trois différents codes assembleur "mov eax,immed32", "add eax,immed32", "et eax,immed32" et pas de données ni d'étiquettes. Il va produire une petite de Windows PE exécutable qui sorties eax dans l'hex à la fin.
Attention: Dans mon cas, avira free antivirus n'aime pas la sortie. C'est un faux positif. J'ai dû désactiver la protection en temps réel. Vérifier le résultat avec un débogueur si vous êtes incertain si c'est des logiciels malveillants (Il n'est pas!)
Aussi loin que l'exemple de code va...
Je ne sais pas du tout "simple" assembleurs, si.
J'ai écrit un il y a longtemps. C'est aussi simple que d'obtenir l'assembleur x86 réf guide d'Intel, et écrit les octets à un .com fichier (pour windows). Je souhaite que je pourrais trouver mon ancien post sur le forum j'ai fait sur elle. Il a été écrit en D++. Va juste pour montrer que vous pouvez le faire dans n'importe quelle langue. Juste marquer votre texte et de le traduire.