Vous êtes sur la page 1sur 7

I – 2 / Débuter avec Emu8086 :

1 – Ouvrir l’émulateur emu8086. 6 - Deux fenêtres s’afficheront. Une fenêtre (Original souce code) contient le code
qu’on vient d’écrire.
Une seconde fenêtre (emulator) qui nous permettra d’exécuter le code, de voir les
contenus des différents registres et beaucoup d’autres choses qu’on verra en fur et à
mesure.

2 – Choisir un nouveau document en cliquant sur New dans le menu affiché.

7 - exécuter le code ainsi écrit en cliquant sur run.


8 – Que remarquez-vous sur le contenu des différents registres ?
………………………………………………………………………………………………….
………………………………………………………………………………………………….
………………………………………………………………………………………………….
………………………………………………………………………………………………….
………………………………………………………………………………………………….
3 – En suite, cliquer sur empty workspace dans la liste affichée afin d’avoir un ………………………………………………………………………………………………….
document vide. ………………………………………………………………………………………………….
4 – Saisir, alors, le code assembleur suivant : ………………………………………………………………………………………………….

MOV AL, 10H 9 - Maintenant, sur la fenêtre emulator, cliquer sur reload afin de recharger le code
MOV AH, 09H (c.à.d : Le mettre à nouveau en mémoire pour le ré-exécuter). Puis cliquer plusieurs
fois sur single step et remarquer à chaque fois les changements dans les registres.
5 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches
principale.
10 - Donner les résultats dans le tableau suivant.
II – 3 / Manipulation des registres et de la mémoire :
1 – Saisir, alors, le code assembleur suivant :

mov ax, 05h


mov [100], ax

2 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale.
3 - exécuter le code ainsi écrit en cliquant sur run.
4– Que remarquez-vous sur le contenu des différents registres ?
………………………………………………………………………………………………….………
………………………………………………………………………………………….………………
………………………………………………………………………………….………………………
………………………………………………………………………….………………………………
………………………………………………………………….………………………………………
………………………………………………………….………………………………………………
………………………………………………….………………………………………………………
………………………………………………………………………………………....……………….
………………………………………………………………………………………....……………….
*-
………………………………………………………………………………………....……………….

-
5– Que remarquez-vous sur la mémoire ?
10 – quel est le rôle de single step ? ………………………………………………………………………………………………….………
…………………………………………………………………………………………………. ………………………………………………………………………………………….………………
…………………………………………………………………………………………………. ………………………………………………………………………………….………………………
…………………………………………………………………………………………………. ………………………………………………………………………….………………………………
…………………………………………………………………………………………………. ………………………………………………………………….………………………………………
…………………………………………………………………………………………………. ………………………………………………………….………………………………………………
…………………………………………………………………………………………………. ………………………………………………….………………………………………………………
………………………………………………………………………………………....……………….
11 – Enregistrer ce code sous le nom : monprog1.asm. ………………………………………………………………………………………....……………….
………………………………………………………………………………………....……………….
………………………………………………………………………………………....……………….
Indication:
Après exécution, on aura la fenêtre suivante (fenêtre de l’émulateur), plusieurs
informations sont présentes : sur les registres, la mémoire, sur le programme … 6– Taper maintenant 100 dans la zone indiquant l’adresse mémoire et appuyer sur
entrée du clavier.
Registres mémoire Programme

7– Observer maintenant la case correspondant à 01001 et compléter le tableau .

Valeur Signification

01100

05

Adresse physique Hexadécimal Décimal Code ASCII 005

- Remarquer qu’il existe plusieurs lignes de codes qui se termine par HLT, et
l’adresse correspondante est 0101A. Ceci est simplement dû au fait que le
programme lui-même est stocké en mémoire.

(pour la dernière .. consulter l’annexe 1 : Code ASCII)


8 – Saisir, alors, le code assembleur suivant :

mov ah, 05h


Valeur 1er cas 2eme cas
mov [100], ah
Adresse physique
9 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale.
10 - exécuter le code ainsi écrit en cliquant sur run. Valeur en Hexadécimal
11- quelle est la différence entre l’utilisation de ax et ah ?
………………………………………………………………………………………………….……… Valeur en Décimal
………………………………………………………………………………………….………………
………………………………………………………………………………….………………………
Valeur en Code ASCII
………………………………………………………………………….………………………………
………………………………………………………………….………………………………………
………………………………………………………….………………………………………………
………………………………………………….……………………………………………………… 20 – Commentaire :
………………………………………………………………………………………....………………. ………………………………………………………………………………………………….………
………………………………………………………………………………………….………………
12- Saisir, alors, le code assembleur suivant : ………………………………………………………………………………….………………………
………………………………………………………………………….………………………………
mov ax, 55h ………………………………………………………………….………………………………………
mov [100], ax ………………………………………………………….………………………………………………
………………………………………………….………………………………………………………
13 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale. ………………………………………………………………………………………....……………….
14 - exécuter le code ainsi écrit en cliquant sur run. ………………………………………………………………………………………………….………
15 – Compléter le tableau ci-après. ………………………………………………………………………………………….………………
………………………………………………………………………………….………………………
16- Saisir, alors, le code assembleur suivant : ………………………………………………………………………….………………………………
………………………………………………………………….………………………………………
mov ax, 55
mov [100], ax
21- Saisir, alors, le code assembleur suivant et refaite le même travail.

17 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale. mov al, 55h
18 - exécuter le code ainsi écrit en cliquant sur run. mov ah, 36
19 – Compléter le tableau ci-après. mov [100h], al
mov [104h], ah
22- Expliquer le résultat obtenu en complétant le tableau suivant :
24- Saisir, alors, le code assembleur suivant et refaite le même travail.

mov ax, 55h


mov [100h], ax
mov bx, 100h
mov cx, [bx]

Valeur 25- Expliquer le résultat obtenu en complétant les deux tableaux suivants :

Adresse physique Registres modifiées Cases mémoires modifiées

Valeur en Hexadécimal ………………….. …………………..


…………………. ………………….
Valeur en Décimal ………………….. …………………..
………………….. …………………..
Valeur en Code ASCII ………………… …………………

instruction Description
23 – Commentaire :
………………………………………………………………………………………………….………
………………………………………………………………………………………….………………
………………………………………………………………………………….………………………
………………………………………………………………………….………………………………
………………………………………………………………….………………………………………
………………………………………………………….………………………………………………
………………………………………………….………………………………………………………
………………………………………………………………………………………....……………….
………………………………………………………………………………………………….………
………………………………………………………………………………………….………………
………………………………………………………………………………….………………………
26- Saisir, alors, le code assembleur suivant et refaite le même travail.
29 – Décrire ce que fait chaque instruction.
mov [100h], 36h
mov [104h], 52h instruction Description
mov [106h], 69h

mov bx, 100h

mov cx, [bx]


mov dx, [bx+4]
mov ax, [bx]+6

27- Afficher les cases mémoires modifiées et compléter le tableau suivant :

Registres modifiées Cases mémoires modifiées

………………….. …………………..
…………………. ………………….
………………….. …………………..
………………….. …………………..
………………… …………………

28 – Commentaire :
………………………………………………………………………………………………….……… 30 –Conclusion :
………………………………………………………………………………………….……………… ………………………………………………………………………………………………….………
………………………………………………………………………………….……………………… ………………………………………………………………………………………….………………
………………………………………………………………………….……………………………… ………………………………………………………………………………….………………………
………………………………………………………………….……………………………………… ………………………………………………………………………….………………………………
………………………………………………………….……………………………………………… ………………………………………………………………….………………………………………
………………………………………………….……………………………………………………… ………………………………………………………….………………………………………………
………………………………………………………………………………………....………………. ………………………………………………….………………………………………………………
………………………………………………………………………………….……………………… ………………………………………………………………………………………....……………….

Vous aimerez peut-être aussi