Les Principales Instructions Du 8086
Les Principales Instructions Du 8086
Les Principales Instructions Du 8086
8086
[email protected]
Les Principales Instructions du 8086
Instructions de transfert
Instructions arithmétiques
Instructions logiques
Instructions de branchement
2 16/05/2023
I. Instructions de transfert
Elles permettent de déplacer des données d’une source vers une destination:
Remarque: le microprocesseur 8086 n’autorise pas les transferts de mémoire vers mémoire
Il existe différentes façons de spécifier l’adresse d’une case mémoire dans une instruction: ce
sont les modes d’adressage.
3 16/05/2023
I. Instructions de transfert
Exemples
MOV AX,BX: Charge le contenu du registre BX dans le registre AX. Dans ce cas, le transfert se
fait de registre à registre (Mode registre).
MOV AL,12h: Charge le registre AL avec la valeur 12h. La donnée est fournie immédiatement
avec l’instruction (adressage immédiat).
MOV BL,[1200h]: Transfère le contenu de la case mémoire d’adresse effective (offset) 1200h vers le
registre BL. L’instruction comporte l’adresse de la case mémoire où se trouve la
donnée (Adressage direct).
MOV AL,[BX]: Transfère la donnée dont l’offset est contenu dans le registre de base BX
MOV AL,[BP] : le segment par défaut associé au registre de base BP est le segment de
5 16/05/2023
I. Instructions de transfert
Cas de l’adressage indexé
Semblable à l’adressage basé, sauf que l’offset est contenu dans un registre d’index SI ou
DI, associés par défaut au segment de données.
MOV AL,[SI] : Charge le registre AL avec le contenu de la case mémoire dont l’offset est
contenu dans SI .
Remarque: une valeur constante peut éventuellement être ajoutée aux registres de base ou
d’index pour obtenir l’offset.
Exemple:
division qui incluent diverses variantes. Plusieurs modes d’adressage sont possibles.
Addition:
Exemples
(Adressage direct).
Multiplication:
MUL opérande
Cette instruction effectue la multiplication du contenu de AL par une opérande sur 1 octet ou
Le résultat est placé dans AX si les données à multiplier sont sur 1 octet (résultat sur 16 bits),
8 dans (DX,AX) si elles sont sur 2 octets (résultat sur 32bits). 16/05/2023
II. Instructions arithmétiques
Exemple 1
MOV AL,51
MOV BL,32
MUL BL
AX = 51 × 32
Exemple 2
MOV BX,1689
MUL BX
DIV opérande
Cette instruction effectue la division du contenu de AX par une opérande sur 1 octet ou le contenu
Exemple 1
MOV AX,35
MOV BL,10
DIV BL
AL = 3 (quotient) et AH = 5 (reste)
10 16/05/2023
II. Instructions arithmétiques
Exemple 2
MOV DX,0
MOV AX,1234
MOV BX,10
DIV BX
Ce sont des instructions qui permettent de manipuler des données au niveau des bits. Les
- ET;
- OU;
- OU exclusif ;
- Complément à 1;
- Complément à 2;
12 16/05/2023
III. Instructions Logiques
ET logique:
Exemple
MOV AL,10010110b AL = 1 0 0 1 0 1 1 0
MOV BL,11001101b BL = 1 1 0 0 1 1 0 1
AND AL,BL AL = 1 0 0 0 0 1 0 0
Opérande1 et opérande2 doivent être de même taille. Ils peuvent être des registres de 8 ou 16
bits ou des cases mémoire.
13 16/05/2023
IV. Instructions de manipulation de bits
Ces instructions déplacent d’un certain nombre de positions les bits d’un mot vers la gauche ou vers
la droite.
- Dans les décalages, les bits qui sont déplacés sont remplacés par des zéros.
- Dans les rotations, les bits déplacés dans un sens sont réinjectés de l’autre côté du mot.
SHR opérande, n
Exemple
MOV AL,11001011b
SHR AL,1
ROR opérande, n
Cette instruction décale l’opérande de n positions vers la droite et réinjecte par la gauche les
bits sortant.
Exemple :
MOV AL,11001011b
ROR AL,1
Réinjection du bit sortant qui est copié dans l’indicateur de retenue CF.
15 16/05/2023
IV. Instructions de manipulation de bits
Rotation à droite avec passage par l’indicateur de retenue (Rotate Right through Carry)
RCR opérande, n
Cette instruction décale l’opérande de n positions vers la droite en passant par l’indicateur de
retenue CF.
Exemple
Le bit sortant par la droite est copié dans l’indicateur de retenue CF et la valeur précédente
de CF est réinjectée par la gauche.
16 16/05/2023
V. Instructions de branchement
JMP Etiquette
CALL Etiquette
Effectue l’opération: destination – source et positionne les drapeaux du registre d’état. Source
et destination ne sont pas modifiés cette instruction précède un saut conditionnel.
JE Etiquette
CMP AL,5Ah
JE suite (saut à suite si AL=5Ah)
17 16/05/2023
V. Instructions de branchement
JNE Etiquette
CMP SI,3B00h
JNE boucle (saut à boucle si SI est différent 3B00h)
JL Etiquette
CMP CL,30h
JL boucle (saut à boucle si CL< 30h)
JZ Etiquette
18 16/05/2023