This shows you the differences between two versions of the page.
alf:laboratoare:13 [2020/05/12 15:31] diana.ghindaoanu [Exercises] |
alf:laboratoare:13 [2021/05/30 12:45] (current) diana.ghindaoanu |
||
---|---|---|---|
Line 43: | Line 43: | ||
==== Exercises ==== | ==== Exercises ==== | ||
- Installez "was". Montrer l'aide de "was". (**1p**) | - Installez "was". Montrer l'aide de "was". (**1p**) | ||
- | - Ecrire un programme wat qui importe les fonctions readint et writeint à partir du module "io". Utilisez les fonctions et lisez un numéro du clavier et affichez sa deuxième puissance. (**1p**) | + | - Ecrivez un programme wat qui importe les fonctions readint et writeint à partir du module "io". Utilisez les fonctions et lisez un numéro du clavier et affichez sa deuxième puissance. (**1p**) |
- Désassemblez le programme précédent dans un fichier nommé program_disassemble.wat. Essayez de faire la même chose en utilisant les options --debug, --names et --fold. (note: assembler le fichier program.wat en utilisant l'option --debug). (**1p**) | - Désassemblez le programme précédent dans un fichier nommé program_disassemble.wat. Essayez de faire la même chose en utilisant les options --debug, --names et --fold. (note: assembler le fichier program.wat en utilisant l'option --debug). (**1p**) | ||
- | - Écrire un programme qui lit un caractère en minuscule du clavier et affiche son caractère majuscule. (indice: utilisez le code ASCII) (**1p**) | + | - Écrivez un programme qui lit un caractère en minuscule du clavier et affiche son caractère majuscule. (**1p**) |
- | - Ecrire un programme qui importe une mémoire avec 1 page. En utilisant l'instruction data, ajoutez votre nom à la mémoire à la position 0 suivi d'un 0 (\00). Utilisez la fonction writestr de la bibliothèque io pour imprimer votre nom. (**1p**) | + | - Ecrivez un programme qui importe une mémoire avec 1 page. En utilisant l'instruction //data//, ajoutez votre groupe à la mémoire à la position 0 suivi d'un 0 (\00). Utilisez la fonction //writestr// de la bibliothèque //io// pour imprimer votre nom. (**1p**) |
- | - Ecrire une fonction "print" qui fait la même chose que la fonction writestr. Il obtient un paramètre, l'adresse où un sttring est situé dans la mémoire. (indice: commencez à la position initiale et écrivez des caractères de la mémoire jusqu'à ce que vous trouviez un 0) (**2p**) | + | - Ecrivez une fonction "afficher" qui fait la même chose que la fonction //writestr//. Elle obtient un paramètre, l'adresse où un string est situé dans la mémoire. (indice: commencez à la position initiale et écrivez des caractères de la mémoire jusqu'à ce que vous trouviez un 0) (**2p**) |
- | - Écrire un programme qui lit une adresse mémoire (sous forme de nombre), lit une chaîne à cette adresse mémoire (maximum 50 caractères) et imprime la chaîne à l'aide de la fonction de l'exercice précédent. (**1p**) | + | - Écrivez un programme qui lit une adresse mémoire (sous forme de nombre), lit une chaîne à cette adresse mémoire (maximum 10 caractères) et imprime la chaîne à l'aide de la fonction de l'exercice précédent. (**1p**) |
- | - Ecrire une fonction de lecture qui fait la même chose que readstr. La fonction prend comme premier paramètre l'adresse mémoire où il doit lire la chaîne et un autre paramètre avec la longueur maximale de la chaîne. (**2p**) | + | - Ecrivez une fonction de lecture qui fait la même chose que //readstr//. La fonction prend comme premier paramètre l'adresse mémoire où il doit lire la chaîne et un autre paramètre avec la longueur maximale de la chaîne. (**2p**) |
- | ==== Solutions ==== | ||