Pour l'apprentissage j'ai l'intention de commencer à construire un émulateur de microcontrôleur 8051. Je suis à l'aise en programmation en C/C++/C#. Ce n'est pas un projet de classe, mais une initiative d'apprentissage de mon côté.Comment faire l'émulateur 8051
J'ai trouvé beaucoup de questions à ce sujet. Cependant, je voulais le casser un peu plus sur un niveau granulaire afin que je puisse savoir sur quels domaines je dois me concentrer avant de commencer à écrire le code.
Mes exigences initiales sont:
éditeur de texte (peut utiliser le contrôle EditBox) où l'utilisateur peut écrire du code assembleur
Valider si la syntaxe est correcte
Avez petite fenêtre qui montre les valeurs de registre à l'exécution. Lorsque l'utilisateur démarre le programme, les instructions doivent être une mise à jour étape par étape des fenêtres de registre.
Plus que l'élément GUI, je suis plus intéressé de savoir comment émuler le microcontrôleur.
La façon dont je comprends que je peux encore le décomposer:
je dois avoir une table pour obtenir des instructions ou un autre moyen de stocker des instructions disponibles et valider la syntaxe. Tout pointeur sur la façon de mettre en œuvre cela, s'il vous plaît faites le moi savoir. Comment puis-je émuler chaque instruction pour 8051?
Pour les registres, je peux utiliser des entiers non signés/basés sur le type et mettre à jour la table. Comme le microcontrôleur a une mémoire RAM limitée, comment garder une vérification de la longueur du code ou plutôt le code qui s'exécute dans la mémoire pour éviter et surpasser le buffer ou d'autres problèmes.
S'il existe des projets opensource qui détaillent la façon dont un émulateur est construit à la terre, apprécierait.
@Kavitech Singh. Comment est votre projet maintenant? –