Académique Documents
Professionnel Documents
Culture Documents
processeur 8086
Programmation Assembleur
Plan de chapitre 3
1) Introduction
5) Exercices
Introduction
Le Processeur : Intel 8086
Le microprocesseur Intel 8086 est un microprocesseur 16 bits, développé par Intel en juin
1978. C’est le premier microprocesseur de la famille Intel 80x86 (8086, 8088, 80286, 80386,
80486, Pentium, ...). Il se présente sous la forme d’un boîtier DIP (Dual In-line Package) à 40
broches.
Les processeurs successifs du 8086 se sont en effet construits petit à petit en ajoutant à chaque
processeur des instructions et des fonctionnalités supplémentaires, mais en conservant à
chaque fois les spécificités du processeur précédent.
Le Processeur : Architecture externe du 8086
Le 8086 est équipé d'un bus multiplexé de 20 lignes : Le bus de données est constitué de 16
lignes D15…D0 et le bus d'adresses de 20 lignes (A19…A0) et fonctionne à des fréquences de
5,8 MHz jusqu'à 10 MHz. Le brochage et le schéma fonctionnel du 8086 sont décrits
respectivement par les figures ci-dessous.
Remarque :
MN/MX: Sélectionne entre l'un des deux modes de fonctionnement du 8086.
➢ Mode minimum: le CPU 8086 fonctionne d'une manière autonome et en monoprocesseur et il génère
par lui même les signaux de bus de commande.
➢ Mode maximum : Ces signaux sont produit par un contrôleur de bus 8288, ce qui lui permet d'opérer
dans un environnement multiprocesseur.
Architecture interne d’un Intel 8086
Le Processeur : Architecture interne du 8086
Il existe deux unités internes distinctes: l'UE (Unité
d'Exécution) et l'UIB (Unité d'Interfaçage avec le
Bus). Rôle des deux unités :
La file d'attente d'instructions contient des instructions qui attendent d'être traitées par l'UE. Le microprocesseur
8086 est capable de mémoriser jusqu'à six octets. Les microprocesseurs actuels sont bien entendu équipés d'une
file d'attente plus rapide et plus large, c'est à dire capable d'emmagasiner plus d'informations.
Les deux unités travaillent en parallèle ; c’est la naissance de l’architecture pipeline
Les Registres Intel 8086
Le Processeur : Les registres du 8086/8088
Le microprocesseur 8086 contient 14 registres répartis en 4 groupes :
❑ BP : Base Pointer, pointeur de base, utilisé pour adresser des données sur la pile.
Le Processeur : Les registres du 8086/8088
• Registres de segment : Le 8086 a quatre registres segments de 16 bits chacun : CS (code segment, DS
(Data segment), ES (Extra segment) et SS (stack segment), ces registres sont chargés de sélectionner les
différents segments de la mémoire en pointant sur le début de chacun d’entre eux.
Instruction Pointer (IP) ou Compteur de Programme (PC), contient l'adresse de l'emplacement mémoire où se
situe la prochaine instruction à exécuter. Autrement dit, il doit indiquer au processeur la prochaine instruction à
exécuter. Le registre IP est constamment modifié après l'exécution de chaque instruction afin qu'il pointe sur
l'instruction suivante.
Le Processeur : Les registres du 8086/8088
• Le registre d'état (Flag) :
Les drapeaux ou les flags sont des indicateurs qui annoncent une condition particulière suite à une
opération arithmétique ou logique.
➢ OF (Overflow Flag) : si
on a un débordement arithmétique ce bit est mis à 1.c a d le
résultat d'une opération excède la capacité de l'opérande
(registre ou case mémoire), sinon il est à 0.
➢ TF (Trap Flag) : pour que le microprocesseur exécute le programme pas à pas du.
Remarque :
Les instructions de branchements conditionnels utilisent les indicateurs (drapeaux), qui sont des bits
spéciaux positionnés par l'UAL après certaines opérations. Chaque indicateur est manipulé individuellement par
des instructions spécifiques.
Exercices
Le Processeur : Exercices
Exercice 1 :
CF = ? , AF = ? , OF = ? , SF = ? , ZF = ? , PF = ? CF = ? , AF = ? , OF = ? , SF = ? , ZF = ? , PF = ?
Le Processeur : Exercices
Exercice 2 :
CF = ? , AF = ? , OF = ? , SF = ? , ZF = ? , PF = ?
Le Processeur : UAL
Unité de traitement Arithmétique et Logique (UAL) :
Le Processeur : UAL
Unité de traitement Arithmétique et Logique (UAL) :