Vous êtes sur la page 1sur 4

TP n°1 : ETUDE DES REGISTRES GENERAUX ET DES REGISTRES D'ETATS

DU MICROPROCESSEUR 8086

RAMDANE
NOM :…………..…………………….. Soumia
PRENOM :………………………………….
GROUPE : 1…………………………….SOUS-GROUPE :……………………………
2

MOHAND AMER
NOM :…………..……………………...PRENOM Hadjer
:………………………………….
GROUPE : 1…………………………….SOUS-GROUPE :……………………………
2

TP réalisé par : H.HALHEIT


I. ETUDE DES REGISTRES GENERAUX

a- Comparer les 2 premières instructions.


la premiere instruction permet d'affecter à l’accumulateur AX la valeur 03E8 en
………………………………………………………………………………………
hexa et BX vide
……………………………………………………………………………………….
la deuxième instruction sert a affecter la valeur decimal 1000 qui est égale a
b- Comparer la 1ère et la 4ème instruction.
03E8 en hexadecimal au registre AX cela nous donne les deux registres AX et BX
la 4ieme instruction
valeur.permet d'affecter au registre BX la valeurs 0016 en hexa
………………………………………………………………………………………
avec la même
dans les deux instruction les valeurs sont les mêmes pour AX mais différente pour
……………………………………………………………………………………….
le registre BX
c- Comparer la 3ère et la 4ème instruction.
pour la troisième et quatrième instructions les registre AX contient la même
………………………………………………………………………………………
valeur 03E8 alors que le contenu de registre BX passe de 03E8h a 0016h
……………………………………………………………………………………….
d- Quel est le rôle de IP ?
il point a l'adresse physique lors de la fin de chaque instruction
………………………………………………………………………………………
……………………………………………………………………………………….
e- Relever le code de chaque instruction :

Adresse 07100 07101 07102 07103 07104 07105 07106 07107 07108 07109 0710A
Code B8 E8 03 BB E8 03 C6 06 50 01 17
Adresse 0710B 0710C 0710D 0710E 0710F 07110 07111 07112 07113 07114 07115
Code BB 16 00 8B D1 4A A1 50 01 C3 90

f- Donner la taille en octets de chaque instruction :

Instructions Taille
MOV AX,03E8H 3 octets
MOV BX,1000 3 octets
MOV [150H],17H 5 octets
MOV BX,16H 3 octets
MOV DX,CX 2 octets
DEC DX 1 octet
MOV AX,[150H] 3 octets

g- Donner la taille totale de la mémoire utilisée : 20 octets


II. ETUDE DES REGISTRES D’ETAT (FLAGS)
- Exécuter et comparer les programmes suivants. Relever les valeurs des registres d’états.

1) Exemple n°1 :

MOV AL,9DH MOV AX,9DH 1 0

MOV BL,8DH MOV BX,8DH 0 1


0 0
ADD AL,BL ADD AX,BX
1 0
0 0
le premier programme établi une addition sur 8 bit en
1 1
utilisant les AH et BH d'ou l'apparition d'un over flow
et du bit de carry a 1 1 1
pour le deuxième programme nous effectuant la même 0 0
addition mais sur 16 bits en utilisant AX et BX on a pas
d'overflow et pas de carry

2) Exemple n°2 :

MOV AL,00001000B MOV AL,00000101B 0 0


AND AL,00000001B AND AL,00000001B
1 0
0 0

le premier programme l'instruction and entre 08h et 0 0


01h nous donne AL=00H d'ou le 1 sur le flag de parité 1 0
des 1 ZF indicateur de 0 est a 1 lorsque 0 0
l'accumulateur vaut 0 1 1
quant au deuxième programme l'instruction and entre 0 0
05h et 01 h nous donnes 01h d'ou le 0 au PF

3) Exemple n°3 :

MOV AL,00001111B MOV AL,00001111B 0 0


AND AL,11110000B OR AL,11110000B 1 0
0 1
0 0
Dans le premier programme l'operation and entre 0Fh
1 0
et F0h nous donne 0 d'ou le ZF et PF a 1
0 0
le deuxième programme on a une addition entre 0Fh et
F0hqui donne 1111 1111 qui donne alors le bit de 1 1
signe (poid le plus fort a 1) d'ou le SF a 1 0 0
4) Exemple n°4 :

MOV AL,00001111B MOV AL,00001111B 0 1


AND AL,00000000B XOR AL,00001111B 1 1
0 0

dans le premier programme on a une operation and 0 0


ente 0Fh et 00h qui donne 00h d'ou le ZF et le PF a 1 1 1
dans le deuxième le XOR entre 0Fh et 0Fh donne 00h 0 0
d'ou le ZF et PF a 1 1 1
0 0

5) Exemple n°5 :
- Ecrire dans les tableaux les résultats en binaire des opérations suivantes. Relever à chaque
exécution les valeurs de l’indicateur de retenue CF (carry). Comparer.

____________ ____________
1

____________ 1
MOV AL,81H
SHR AL,3 ____________ 0

____________ 0

____________ ____________ ____________


0

____________ ____________ 1
MOV AL,91H
ROL AL,3 ____________ ____________ ____________
0

____________ ____________ ____________ 0

l'instruction SHR opère un décalage a droite incluant le


CF en introduisant des zéros a l'accumulateur
le ROL effectue une rotation des bit de l'accumulateur de
droite vers la gauche en prenant compte le CF et on
utilisant les bit de l'accumulateur et le CF uniquement

Vous aimerez peut-être aussi