This shows you the differences between two versions of the page.
alf:laboratoare:13 [2020/05/12 15:32] diana.ghindaoanu [Exercises] |
alf:laboratoare:13 [2021/05/30 12:45] (current) diana.ghindaoanu |
||
---|---|---|---|
Line 45: | Line 45: | ||
- 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**) | - 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**) | ||
- | - Écrivez 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**) |
- | - Ecrivez 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**) |
- | - Ecrivez 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**) |
- | - Écrivez 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**) |
- | - 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**) | + | - 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 ==== | ||