This shows you the differences between two versions of the page.
alf:teme:tema_1 [2021/03/12 13:11] diana.ghindaoanu [Exécution du simulateur] |
alf:teme:tema_1 [2021/03/17 16:33] (current) alexandru.radovici [Conseils d'implémentation] |
||
---|---|---|---|
Line 202: | Line 202: | ||
| 10% | instructions du registre | | | 10% | instructions du registre | | ||
| 10% | erreurs | | | 10% | erreurs | | ||
+ | |||
+ | ===== Conseils d'implémentation ===== | ||
+ | Le devoir comprend beaucoup de fonctionnalités a implémenter, donc on vous suggere de suivre les étapes: | ||
+ | - Lire le contenu du fichier dans le string s et implémenter l'erreur ''no file'' | ||
+ | - Séparer l'entrée lue par ''\n'' (''\r\n'' pour Windows, assurez-vous de l'avoir changé avant de transférer sur git), en utilisant la fonction ''split'' | ||
+ | - Séparer chaque ligne par ' ' (espace) et extraire l'instruction et ses parametres | ||
+ | - Implémenter l'erreur ''unknown instruction'' | ||
+ | - Implémenter les instructions ''push'' et ''pop'' en utilisant un array de numéros pour la pile | ||
+ | - Implémenter les fonctions mathématiques | ||
+ | - Implémenter toutes les instructions | ||
+ | |||
===== Bonus ===== | ===== Bonus ===== | ||
Line 210: | Line 221: | ||
^ Instruction ^ Paramètre ^ Détails ^ | ^ Instruction ^ Paramètre ^ Détails ^ | ||
- | | write | number | Extrait un numéro de la pile et l'écrit a l'emplacement de la mémoire défini par le paramètre | | + | | write | - | Extrait 2 numéros de la pile et écrit le premier a l'emplacement de la mémoire défini par le deuxième | |
- | | read | number | Lit un nombre à partir de l'emplacement de mémoire et l'ajoute a la pile | | + | | read | - | Extrait un numéro de la pile et lit un numéro de l'emplacement de la mémoire défini par le premier numéro, en ajoutant le deuxieme a la pile | |
<note> | <note> | ||
Line 220: | Line 231: | ||
===== Règles ===== | ===== Règles ===== | ||
- | - Vous ne pouvez pas utiliser //RegEx// ou toute autre bibliothèque qui utiliserait des expressions régulières | + | - Vous ne pouvez pas utiliser //RegEx// ou toute autre bibliothèque qui utiliserait des expressions régulières (outre \n\r? pour séparer les lignes d'entrée de la source) |
- Le code source doit être indenté (-0.1p) | - Le code source doit être indenté (-0.1p) | ||
- Vous devez expliquer en détail dans le Readme.md comment vous avez rédigé les devoirs (-1p) | - Vous devez expliquer en détail dans le Readme.md comment vous avez rédigé les devoirs (-1p) |