Lex_Yacc | ||
Tables | ||
.gitignore | ||
Makefile | ||
ReadMe.md |
Processeur sécurisé - Interpreteur
Afin de pouvoir tester le code que nous avons compilé depuis le C avec notre compilateur, nous avons crée un interpreteur pour simuler l'execution du code assembleur
Utilisation du cross assembleur
Un Makefile a été inclus au sous module Interpreteur afin de simplifier son utilisation. Ainsi, afin de compiler tout l'Interpreteur, il suffit de de rentrer la commande.
make build
Pour lancer l'Interpretation du code qui aura été préalablement généré avec notre compilateur, il suffit de lancer la commande
cat FicherASM | ./rondoudou_interpreter
Les prints et gets du programme auront lieu dans le terminal.
NB : Il est possible de rester au niveau du projet général. Un Makefile est aussi présent. Pour compiler l'Interpreteur uniquement :
make compile QUOI="interpreteur"
Pour compiler le projet en entier :
make compile QUOI="all"
Pour interpreter le fichier file_name.memasm :
make exec SOURCE="file_name" QUOI="interprete"
Pour compiler, cross assembler et interpreter le fichier file_name.c et générer les fichiers file_name.memasm, file_name.regasm, file_name.bin, et, copier le code binaire dans le fichier ../Processeur/Processeur.srcs/sources1/new/MemoireInstructions.vhd :
make exec SOURCE="file_name" QUOI="all"
Implémentation
L'implémentation a été réalisée grâce à Lex/Yacc. Le parseur charge le programme dans un buffer, puis une méthode d'execution est lancée.