Utilisation de l'interruption $21
Fiche : Utilisation de l'interruption $21. Recherche parmi 300 000+ dissertationsPar bilal007 • 7 Mai 2013 • Fiche • 637 Mots (3 Pages) • 1 402 Vues
III. Exercices
Exercice 1:
1) Faire l'organigramme du programme qui calcule la somme des 11 premiers entiers
(0 + 1 + 2 +…+ 10 +11 ). Ecrire ensuite le programme en assembleur 8086. On utilisera pour cela les instruction MOV, CMP, JNE, ADD, DEC ou INC… On utilisera une variable R pour stocker le résultat et une variable N pour stocker le nombre 11.
2) Afficher ensuite le résultat à l'écran en utilisant l'interruption $21 puis déduire en fonction du caractère affiché la valeur numérique du résultat.
3) Même exercice mais en utilisant l'instruction LOOP
Exercice 2:
- Utilisation de l'interruption $21 en mode 9
L'interruption $21 avec ah à 9 permet d'afficher des chaînes de caractères qui se terminent par le caractère 13, 10 ,'$'. (13 retour chariot, 10 ligne suivante, $ fin de chaîne de caractères)
Pour cela, il faut définir un message avec la pseudo instruction db (voir explications de db) en terminant ce message par 13, 10, '$'.
Il faut ensuite affecter au registre dx l'adresse de ce message (mov dx, mess où mess est le nom donné au message).
Ecrire un programme qui affiche dix fois à l'écran le message suivant avec retour à la ligne et saut de ligne:
Si je travaille bien en TP, je deviendrai un dieu de l'assembleur et le prof sera fier de moi
Exercice 3:
Concevoir une application qui réalise le produit de deux nombres A = 100 et B = 170. Les nombre A et B sont codés sur 8 bits chacun.
- Quelle instruction faut il utiliser ?
- Où se trouvent les opérandes ?
- Où se trouve le résultat de l'opération.
- Afficher les octets du registre contenant le résultat de l'opération.
- Déduire le résultat numérique à partir des caractères affichés.
Mêmes questions mais avec des nombres A et B de 16 bits. Prendre A = 1642 et B = 10.
Essayer avec A=3227 et B=5.
Comment apparaît le résultat ?
Comment faire pour que des caractères imprimables apparaissent tout le temps ?
MicroInformatique
Informatique Industrielle
Assembleur 8086/8088
TP n°3
I. BUT DU TP
Maîtriser les différents types d'adressage, notamment pour accéder aux éléments de tableaux.
II. RAPPELS
Pour adresser les différents éléments d'un tableau, il faut utiliser l'adressage indexé basé en prenant le registre BX comme base et le registre DI ou SI comme indexe. Pour mettre la base du tableau (déplacement du tableau dans le segment de données) dans BX, il suffit d'écrire
MOV BX, nom du tableau.
Ensuite
...