Bonjour,
Je développe actuellement un simulateur pour assembleur et je rencontre quelques difficultés pour atteindre une classe dans mon architecture.
D'un côté, j'ai un parseur qui identifie les instructions codées dans le fichier .asm + une Interface Instruction, avec la méthode abstraite executer(). D'un autre côté, j'ai une classe Porcesseur qui contient tous les registres. Mon idée était de parser le fichier, et de conserver dans une List le contenu du fichier en terme d'instructions. Mon code source est donc muni d'autant de classes d'instruction qu'il en existe dans le jeu d'instructions du processeur : chaque classe d'instruction est alors une implémentation de mon Interface Instruction. La méthode executer() de chacune des classes d'instruction doit pouvoir atteindre les différents attributs du processeur. C'est là que je coince...
J'ai pensé à mettre un objet Processeur en paramètre à la méthode executer() et d'accéder au processeur par le biais d'accesseurs mais, cela m'empêcherait d'exécuter les instructions dans une méthode à l'intérieur même de la classe Processeur.
L'idéal serait que je puisse exécuter les instructions dans une méthode du processeur, tout en gardant mon architecture actuelle : Interface Instruction & classes d'implémentation + classe Parseur.
Un moyen de résoudre ce problème en appliquant à la fois les règles de programmation Java vous est-il connu ?
Merci par avance :-)
Partager