SlideShare une entreprise Scribd logo
1  sur  54
Télécharger pour lire hors ligne
Université de Kairouan
Faculté des Sciences et Techniques de Sidi Bouzid
Architecture des calculateurs
Enseignante : Dr. Sonda BEN JDIDIA
Email : sonda.benjdidia@isimg.tn
CPI2
Année Universitaire : 2022/2023
Introduction Générale
3
Historique
Première génération d'ordinateurs (1936-1956) :
L’ENIAC (Electronic Numerical Integrator and Computer) :
C’est le premier ordinateur entièrement électronique.
◼ Il pesait près de 30 tonnes et contenait environ 19.000 lampes à
vide, 1.500 relais électriques et des centaines de milliers de
résistances électriques, condensateurs et inducteurs.
◼ Il occupait 72 m² et consommait une puissance de 160 kW, Il
tournait à 100 kHz et était composé de 20 calculateurs fonctionnant
en parallèle pouvant effectuer 100 000 additions ou 357
multiplications par seconde.
4
Historique
Deuxième génération d'ordinateurs (1956-1963) :
Elle est basée sur l'invention du transistor en 1947. Cela permit de remplacer le fragile et
encombrant tube électronique par un composant plus petit et fiable.
Troisième génération d'ordinateurs (1963-1971) :
Elle est celle des ordinateurs à circuit intégré. C'est à cette date que l'utilisation de l'informatique a
explosé.
Quatrième génération d'ordinateurs (1971 à la fin des années 1980) :
En 1971, Intel dévoile le premier microprocesseur commercial, le 4004. Les microprocesseurs
regroupent la plupart des composants de calcul (horloge et mémoire mises à part) sur un seul circuit.
5
Architecture de l’ordinateur moderne : Architecture Von Neuman :
◼ La machine est contrôlée par des programmes
◼ Les instructions du programme sont codées sous forme numérique binaire et enregistrées en
mémoire
◼ Les instructions sont normalement exécutées séquentiellement.
◼ Existance d’instructions permettant les ruptures de séquences (Interruptions)
Historique
Chapitre I : La représentation des données
7
▪ Les informations traitées par un ordinateur peuvent être de différents types (texte, nombres, etc.)
mais elles sont toujours représentées et manipulées sous forme binaire.
▪ Toute information sera traitée comme une suite de 0 et de 1. L’unité d’information est le chiffre
binaire (0 ou 1), qu’on appelle bit (pour binary digit, chiffre binaire).
Information
Données
Caractères
ASCII
UNICODE
Numériques
Entiers
Signés
Non-Signés
Réels
Instructions
La représentation des données
8
Système Base Chiffres utilisables
Binaire 2 0 1
Octal 8 0 1 2 3 4 5 6 7
Décimal 10 0 1 2 3 4 5 6 7 8 9
hexadécimal 16 0 1 2 3 4 5 6 7 8 9 A B C D E F
Remarque : pour connaître la base associée à un nombre, on le note entre parenthèse avec en indice
une lettre b,o,d ou h selon qu'il s'agit d'un codage binaire, octal, décimal ou hexadécimal. Par
exemple, (1001)b, (3F1)h ou (128)d
❑Chaque format de numérotation possède une base qui est le nombre maximal de symboles pouvant
être utilisés pour chaque position numérique.
❑Les systèmes de numérotation les plus utilisés en informatique sont: binaire, octal, décimal,
hexadécimal
La représentation des données
9
❑Un nombre binaire est un nombre en base 2 dont chaque chiffre vaut 0 ou 1
❑Les bits sont numérotés en commençant par la droite
❑Le bit situé le plus à gauche dans une représentation est appelé le bit le plus significatif, MSB (Most
Significant Bit).
❑Le bit le plus à droite est le bit le moins significatif (LSB, Least Significant Bit). On utilise
également les notions de bit de poids fort et bit de poids faible.
La représentation des données
10
On représente les nombres entiers sous forme d’une somme de puissance de base par exemple en base
10, on écrit par exemple 1996
Dans le cas général, en base b, le nombre représenté par une suite de chiffres comme suit
La représentation des données
11
Conversion décimal → binaire :
Pour convertir un nombre décimal en nombre binaire (en base B = 2), il suffit de faire des divisions
entières successives par 2 jusqu'à ce que le quotient devienne nul.
Le résultat sera la juxtaposition des restes.
Changement de bases
12
Changement de bases
Conversion décimal → hexadécimal :
En hexadécimal (la base B = 16), donc il faut maintenant diviser le nombre décimal successivement
par 16. Les restes obtenus sont alors convertis dans leur équivalent hexadécimal.
13
Conversion binaire ➔hexadecimal :
▪ le codage hexadécimal a été créé afin d'alléger l'exploitation des nombres binaires.
▪ Il permet en particulier une conversion simple par regroupement des bits par 4 en partant de la
droite, chaque paquet étant alors simple à convertir :
Changement de bases
14
Exercice 1 :
Convertir en décimal les chiffres binaires suivants :
(110)b, (1010)b, (1001 1100)b
Exercice 2 :
Convertir en binaire les chiffres décimaux suivants :
8, 12, 256, 325
Exercice 3 :
Convertir en hexadécimal les chiffres binaires suivants :
(111)b, (1010)b, (1001 1110)b
Exercice 4 :
Convertir en hexadécimal les chiffres décimaux suivants :
8, 12, 67, 256, 1023, 12341
Applications
15
➢Exercice 1 :
convertir en décimal les chiffres binaires suivants :
(110)b=(6)d / (1010)b=(10)d / (1001 1100)b=(156)d
➢Exercice 2 :
convertir en binaire les chiffres décimaux suivants :
8=(1000)2, 12=(1100)2, 256=(100000000)2, 325=(101000101)2
➢Exercice 3 :
convertir en hexadécimal les chiffres binaires suivants :
(111)b=(7)16, (1010)b=(A)16, (1001 1110)b=(9E)16
➢Exercice 4 :
convertir en hexadécimal les chiffres décimaux suivants :
8=(8)h, 12=(C)h, 67=(43)h, 256=(100)h, 1023=(3FF)h, 12341=(3035)h
Correction
16
❑Une valeur entière binaire peut être signée ou non signée :
▪ Une valeur signée peut être positive ou négative.
▪ alors qu’une valeur Non signée ne peut être que positive ou égale à 0.
Problème : Comment indiquer à la machine qu’un nombre est négatif ou positif !!!
➔Trois méthodes sont utilisées pour la représentions des nombres négatifs :
• Signe / valeur absolu
• Complément à 1 (complément restreint)
• Complément à 2 (complément vrai )
Représentation des nombres signés et non signés
17
Représentation signe/ valeur absolu (S/VA)
▪ Pour une valeur entière binaire présentée sur n bits; le bit le plus significatif (MSB) contient le signe
de la valeur et les (n-1) bits restant désignent la valeur absolue de la valeur.
▪ Si le MSB vaut 0, l’entier est positif Il est Négatif si le bit vaut 1.
▪ Exemple:
1 1 0 1 1 1 0 1
0 1 0 1 1 1 0 1
11011101 est la représentation de (-93)
01011101 est la représentation de (93)
négatif
positif
Bit de Signe Valeur absolue
Représentation des nombres signés et non signés
18
Représentation en complément à 1
▪ On appelle complément à un d’un nombre N un autre nombre N′ tel que:
N+N′=2n-1
n: est le nombre de bits de la représentation du nombre N.
Pour trouver le complément à un d’un nombre, il suffit d’inverser tous les bits de ce nombre
Exemple :
Soit N= 1010 sur 4 bits, donc son complément à 1 est : N′=(24-1)-N => N′=0101
Soit X = 11010010 sur 8 bits, donc son complément à 1 est : 00101101
Représentation des nombres signés et non signés
19
Représentation en complément à 2
▪ Le complément à 2 d’une valeur entière binaire (complément à vrai) se calcule en inversant tous les
bits puis en ajoutant 1 au résultat,
▪ Si on part d’une valeur binaire 01101010 sur 8 bits, le complément à 2 vaut comme le montre le
tableau suivant:
Valeur de départ 01101010
Étape 1 : CA1 → inversion des bits 10010101
Étape 2 : ajout de 1 10010101 + 00000001
Complément à 2 10010110
▪ L’opération de complément à 2 est réversible. Si on calcule le complément à 2 de 10010110, le
résultat sera 01101010.
Représentation des nombres signés et non signés
20
Valeur de départ 11110000
Etape 1 : inversion des bits 00001111
Etape 2 : ajout de 1 00001111 + 00000001
Etape 3 : complément à 2 00010000
Etape 4 : conversion en décimal 16
▪ Afin de connaître la valeur décimale d’un entier binaire signé, on procède comme suit :
✓ Si le bit de poids fort vaut 1, c’est qu’il est stocké en notation en complément à deux. Il faut chercher le
complément à 2 de ce propre complément pour récupérer la valeur positive. ensuite convertir cette valeur en
décimale comme il s’agit d’un entier binaire non signé.
Exemple: La valeur binaire signé 11110000 possède 1 en bit de poids fort, ce qui indique que c’est une valeur négatif.
Voici le processus pour convertir le résultat en décimal:
Puisque l’entier d’origine 11110000 était négatif, sa valeur décimal sera négative aussi. Elle est donc en réalité égale à -16
✓ Si le bit de poids fort vaut 0 , la valeur binaire sera convertie directement comme s’il s’agissait d’un entier binaire
non signé
Représentation des nombres signés et non signés
21
Exercice 1 :
Quelle est la représentation décimale non signée de chacun des entiers hexadécimaux suivants :
a) 3A b) 1BF c) 4096
Exercice 2 :
Quelle est la représentation hexadécimale sur 8 bits de chacun des entiers décimaux signés suivant:
a) -29 b) -45
Exercice 3 :
Quelle est la représentation décimale des nombres binaires signés suivants ?
a) 10110101 b) 00101010 c) 11110000
Exercice 4 :
Quelle est la représentation binaire sur 8 bits de chacun des entiers décimaux signés suivants :
a) -5 b) -36 c) -16
Applications
22
Correction
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………….………
Chapitre II : Architecture des microprocesseurs
24
❑ Un système numérique, intégrant de l’électronique, fait souvent apparaître des fonctions ayant
pour rôle le traitement d’informations : opérations arithmétiques (addition, multiplication...) ou
logiques (ET, OU...) entre plusieurs signaux d’entrée permettant de générer des signaux de sortie.
❑ Ces fonctions peuvent être réalisées par des circuits intégrés analogiques ou logiques.
❑ A l’heure actuelle, un microprocesseur regroupe sur quelques millimètres carrés des
fonctionnalités toujours plus complexes. Leur puissance continue de s’accroître et leur
encombrement diminue régulièrement respectant toujours, pour le moment, la fameuse loi de Moore
« Le nombre de transistors intégrables sur une seule puce double tous les deux ans »
C’est quoi un microprocesseur ?
25
Architecture du microprocesseur
Architecture interne :
Un microprocesseur est construit autour de deux
éléments principaux :
❑ Une unité de commande : appelé aussi Unité
de commande et de contrôle (UCC)
❑ Une unité de traitement
associés à des registres chargées de stocker les
différentes informations à traiter. Ces trois éléments
sont reliés entre eux par des bus internes permettant
les échanges d’informations.
………….
………….
……………
……………
……………
……………
………………………………………………………….
………………………………………………………….
26
Architecture interne :
Architecture du microprocesseur
………………………………………………………….
………………………………………………………….
27
• L’accumulateur:…………………………………………………………
……………………………………………………………………………
……………………………………………………………………………..
• L’Unité Arithmétique et Logique (UAL) : ……………………………...
………………………………………………………………………..……
……………………………………………………………………………..
• Le registre d'état :.......................................................................................
......................................................................................................................
......................................................................................................................
Architecture du microprocesseur
Unité de traitement :
C’est le cœur du microprocesseur. Elle regroupe les circuits qui assurent les traitements nécessaires à
l'exécution des instructions.
28
Architecture du microprocesseur
Unité de commande :
Elle permet de séquencer le déroulement des instructions. Elle effectue
la recherche en mémoire de l'instruction. Comme chaque instruction est
codée sous forme binaire, elle en assure le décodage pour enfin réaliser
son exécution puis effectue la préparation de l'instruction suivante.
Pour cela, elle est composée par :
• PC : Program Counter
• Le décodeur d'instruction
• Bloc logique de commande (séquenceur)
29
Architecture du microprocesseur
Unité de commande :
PC : Program Counter : …………………………………………………....
………………………………………………………………………..………
………………………………………………………………………..……...
……………………………..…………………………………………………
…………………..……………………………………………………………
Le décodeur d'instruction : ………………………………………………...
………………………………………………………………………..………
……………………………………………………………………….………..
Bloc logique de commande (séquenceur) : ……………………………...
………………………………………………………………………..………
………………………………………………………………………………...
30
(1) ……………………………………………………………
(2) ……………………………………………………………
(3) ……………………………………………………………
(4) ……………………………………………………………
Architecture du microprocesseur
Le déroulement d’une opération de calcul :
31
Architecture du microprocesseur
Architecture Von Neumann :
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………….……………………………………………………………………………………………
……………………..……………………………………………………………………………………………
32
Architecture Harvard :
Architecture du microprocesseur
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………….……………………………………………………………………………………………
……………………..……………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………….……………………………………………………………………………………………
……………………..……………………………………………………………………………………………
Chapitre III : Architecture du processeur 8086
34
Architecture interne du microprocesseur 8086
 Il se présente sous la forme d’un boîtier DIP (Dual In‐line
Package) à 40 broches.
 Le microprocesseur 8086 se caractérise par :
- Un processeur CISC (Complex Instruction Set Computer)
- ……………………………………………………………..
- 16 lignes de données
- 1 mot mémoire = 2 octets
- 20 lignes d’adresses
- ……………………………………………………………..
- 14 registres internes de 16 bits.
- ……………………………………………………………..
- Opérations sur des bits, des octets, des mots et des chaînes de
caractères.
- Arithmétique signée ou non signée.
- Arithmétique binaire ou BCD, sur 8 ou 16 bits.
35
Architecture interne du microprocesseur 8086
Il se compose de 2 unités séparées :
36
Architecture interne du microprocesseur 8086
L’unité d’exécution comporte :
 …………………………………………………………….
 …………………………………………………………….
 …………………………………………………………….
 …………………………………………………………….
 …………………………………………………………….
 …………………………………………………………….
Fonctions de l’UE (Unité d‘Exécution) :
 ……………………………………………………………………………
…………………………………………………………………………….
 ……………………………………………………………………………
…………………………………………………………………………….
37
Architecture interne du microprocesseur 8086
L’unité UIB : unité d’interfaces de bus comporte essentiellement :
 ……………………………………………………………………………
 ……………………………………………………………………………
 ……………………………………………………………………………
Fonctions de l’UIB (Unité d'Interface de Bus) :
 ……………………………………………………………………………
……………………………………………………………………………
 ……………………………………………………………………………
 ……………………………………………………………………………
38
Architecture interne du microprocesseur 8086
La mémoire :
 La mémoire se comporte comme un grand tableau d'octets
 Accéder à la mémoire consiste à accéder à une case du tableau en indiquant son indice, appelé
adresse.
 Un accès mémoire se fait selon une certaine taille : on peut accéder à plusieurs octets
contiguës en une seule fois
 On peut lire l'octet situé à l'adresse 123h
 On peut écrire deux octets situés à l'adresse 456h : Le premier va dans la case 456h et le
deuxième dans la case 457h
39
Architecture interne du microprocesseur 8086
La mémoire (big –endian ou little-endian)
Supposons qu'on veut stocker la valeur A035h dans la mémoire, on a deux possibilités :
 Stocker d'abord l'octet A0h, puis l'octet 35h à la suite, c'est le mode …………………
 Stocker d'abord l'octet 35h, puis l'octet A0h à la suite, c'est le mode …………………
 Le 8086 et ses successeurs sont ………………………….
40
Gestion et segmentation de la mémoire
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
20
41
Gestion et segmentation de la mémoire
Adresse physique et adresse logique :
 ………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
 ………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
……………………………………………………………………….
42
Gestion et segmentation de la mémoire
Adresse physique et adresse logique :
 La correspondance entre l’adresse logique et l’adresse physique est représentée sur la figure
suivante :
 Ainsi, l’adresse physique se calcule par l’expression :
Adresse physique
=
………………………………………………….
Remarque : Injecter 4 zéros (en binaire) en poids faible de l’adresse du segment revient à effectuer un
décalage de 4 positions (4bits) vers la gauche, c’est-à-dire une multiplication par 16
43
Gestion et segmentation de la mémoire
 Exemple :
Calculer les adresses physiques à partir des adresses logiques données :
a) 08F1h : 0100h b) 3100h:27EEh
Solution (a)
44
Les registres du 8086
Généraux
……….
……….
……….
……….
D’adressage
……….
……….
……….
……….
De
segments
……….
……….
……….
……….
De
commande
……….
……….
De cette façon, nous pouvons utiliser une partie du registre si nous désirons y stocker une valeur
n'excédant pas 8 bits. Si, au contraire, la valeur que nous désirons y ranger excède 8 bits, nous
utiliserons le registre complet, c'est à dire 16 bits.
Les registres généraux :
 Les registres généraux peuvent être utilisés dans……………………………………………………..
……………………………………………………………………………………………………………
 .......................................................................................................................................................................
.......................................................................................................................................................................
 Il existe 4 registres généraux : AX, BX, CX, DX
45
Les registres du 8086
Les registres généraux :
 Le registre………………………………………………………………………………………………….
……………………………………………………………………………………………………………
……………………………………………………………………………………………………………
…………………………………………………………………………………………………………….
 Le registre………………………………………………………………………………………………….
……………………………………………………………………………………………………………
……………………………………………………………………………………………………………
…………………………………………………………………………………………………………….
 Le registre………………………………………………………………………………………………….
……………………………………………………………………………………………………………
……………………………………………………………………………………………………………
…………………………………………………………………………………………………………….
 Le registre………………………………………………………………………………………………….
……………………………………………………………………………………………………………
……………………………………………………………………………………………………………
…………………………………………………………………………………………………………….
46
Les registres du 8086
47
Les registres du 8086
Les registres d’adressage :
 ……………………………………………………………………………………………………………….
 ……………………………………………………………………………………………………………...
 Ils sont en général munis de propriétés d'incrémentation et de décrémentation.
✓ Ils sont utilisés pour les transferts de chaînes d’octets entre deux zones mémoire.
✓ Ils contiennent des adresses de cases mémoire
48
Les registres d’adressage :
 Pointeurs
✓ ……………………………..: pointeur de pile (la pile est une zone de sauvegarde de données en
cours d’exécution d’un programme)
✓ ……………………………… : pointeur de base, utilisé pour adresser des données sur la pile.
 Index
Ils sont utilisés pour les transferts de chaînes d’octets entre deux zones mémoire
✓ …………………………………………………: il pointe sur la source.
✓ ………………………………………………….: il pointe sur la destination.
Les registres du 8086
49
Les registres de segment :
 Le 8086 a quatre registres segments de 16 bits chacun :
✓…………………………………
✓…………………………………
✓…………………………………
✓………………………………….
 ……………………………………………………………………………………………………………
……………………………………………………………………………………………………………...
 ……………………………………………………………………………………………………………
Les registres du 8086
50
Les registres de segment :
 Le registre ………………………….: Il pointe sur le segment qui contient les codes des instructions
du programme en cours
 Le registre ………………………….: Le registre segment de données pointe sur le segment des
variables globales du programme.
 Le registre ………………………….: Le registre de données supplémentaires ES est utilisé par le
microprocesseur lorsque l'accès aux autres registres est devenu difficile ou impossible pour
modifier des données, de même ce segment est utilisé pour le stockage des chaînes de caractères
 Le segment ………………………….: Le registre SS pointe sur la pile : la pile est une zone
mémoire ou on peut sauvegarder les registres ou les adresses ou les données pour les récupérer
après l'exécution d'un sous‐programme ou l'exécution d'un programme d'interruption.
Les registres du 8086
51
✓ ………………………….: (Pointeur d’instruction / Le compteur de programme): Il 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.
✓ …………………………………………….: sert à contenir l'état de certaines opérations effectuées
par le processeur. Le registre d'état du 8086 est formé par les bits suivants :
Les registres de commande :
 2 registres de 16 bits : un pointeur d’instruction et un indicateur :
→ 6 bits d’état reflètent les résultats d'une opération arithmétique ou logique et 3 participent au contrôle du
processeur.
Les registres du 8086
52
 ……………………………………: cet indicateur est positionné à 1 lorsqu’il y a une retenue du résultat
à 8 ou 16 bits. Il intervient dans les opérations d'additions (retenue) et de soustractions (emprunt) sur
des entiers naturels.
 ……………………………………..: ce bit est égal à 1 si on a une retenue du quarter (4 bits) de poids
faible dans le quarter de poids plus fort.
 …………………………………….: si le résultat de l'opération contient un nombre pair de 1, cet
indicateur est positionné à 1, sinon zéro.
Drapeaux de contrôle Drapeaux d’états
TF DF IF OF SF ZF AF PF CF
Les registres de commande :
Les drapeaux sont des indicateurs qui annoncent une condition particulière suite à une opération
arithmétique ou logique.
Les registres du 8086
53
Les registres de commande :
 …………………………………: Cet indicateur est positionné à 1 quand le résultat d'une opération est
égal à zéro.
 …………………………………: SF est positionné à 1 si le bit de poids fort du résultat d'une addition
ou soustraction est 1 ; sinon SF = 0. SF est utile lorsque l'on manipule des entiers signés, car le bit de
poids fort donne alors le signe du résultat.
 …………………………………………………: si on a un débordement arithmétique ce bit est
positionné à 1, c’est à dire le résultat d'une opération excède la capacité de l'opérande (registre ou case
mémoire), sinon il est à 0.
 ………………………………… : utilisé par les instructions de traitement des chaînes de caractères pour
auto incrémenter ou auto décrémenter le SI et le DI.
Les registres du 8086
54
Les registres de commande :
 ………………………………………………………… : pour masquer les interruptions venant de
l'extérieur ce bit est mis à 0, dans le cas contraire (IF = 1) le microprocesseur reconnaît l'interruption de
l'extérieur.
 …………………………………: pour que le microprocesseur exécute le programme pas à pas.
Les registres du 8086

Contenu connexe

Similaire à architecture des calculateurs (2).pdf

Ch1 systemenumeration
Ch1 systemenumerationCh1 systemenumeration
Ch1 systemenumerationmickel iron
 
Ch1 systemenumeration
Ch1 systemenumerationCh1 systemenumeration
Ch1 systemenumerationmickel iron
 
Chapitre2 (les systèmes de numération)
Chapitre2 (les systèmes de numération)Chapitre2 (les systèmes de numération)
Chapitre2 (les systèmes de numération)killua zoldyck
 
Nombres réels et négatifs en binaire
Nombres réels et négatifs en binaireNombres réels et négatifs en binaire
Nombres réels et négatifs en binairevalentin Victoire
 
Tp transcodage logique combinatoire
Tp transcodage logique combinatoireTp transcodage logique combinatoire
Tp transcodage logique combinatoirebilal001
 
Codage de l'information
Codage de l'informationCodage de l'information
Codage de l'informationPeronnin Eric
 
Info1 cours 3-vf-mi-v1
Info1  cours 3-vf-mi-v1Info1  cours 3-vf-mi-v1
Info1 cours 3-vf-mi-v1linuxscout
 
Tp1 architecture m.zarboubi
Tp1 architecture m.zarboubiTp1 architecture m.zarboubi
Tp1 architecture m.zarboubiMOHAMED ZARBOUBI
 
Chap7 simulation numérique
Chap7 simulation numériqueChap7 simulation numérique
Chap7 simulation numériqueMariem ZAOUALI
 
Circuits logiques combinatoire
Circuits logiques combinatoireCircuits logiques combinatoire
Circuits logiques combinatoirelinuxscout
 
0. les réseaux le code binaire-hexa
0. les réseaux   le code binaire-hexa0. les réseaux   le code binaire-hexa
0. les réseaux le code binaire-hexaTruc Much
 
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...SamiraElMargae1
 
Info1 cours 4- bcd-gray v3
Info1  cours 4- bcd-gray v3Info1  cours 4- bcd-gray v3
Info1 cours 4- bcd-gray v3linuxscout
 
Conversion d'un nombre du système décimal (base 10) vers un système de numéra...
Conversion d'un nombre du système décimal (base 10) vers un système de numéra...Conversion d'un nombre du système décimal (base 10) vers un système de numéra...
Conversion d'un nombre du système décimal (base 10) vers un système de numéra...ATPENSC-Group
 

Similaire à architecture des calculateurs (2).pdf (20)

Ch1 systemenumeration
Ch1 systemenumerationCh1 systemenumeration
Ch1 systemenumeration
 
Ch1 systemenumeration
Ch1 systemenumerationCh1 systemenumeration
Ch1 systemenumeration
 
Td1 architecture
Td1 architectureTd1 architecture
Td1 architecture
 
Chapitre2 (les systèmes de numération)
Chapitre2 (les systèmes de numération)Chapitre2 (les systèmes de numération)
Chapitre2 (les systèmes de numération)
 
Nombres réels et négatifs en binaire
Nombres réels et négatifs en binaireNombres réels et négatifs en binaire
Nombres réels et négatifs en binaire
 
Ch2 representation
Ch2 representationCh2 representation
Ch2 representation
 
Codage_Information.pptx
Codage_Information.pptxCodage_Information.pptx
Codage_Information.pptx
 
Tp transcodage logique combinatoire
Tp transcodage logique combinatoireTp transcodage logique combinatoire
Tp transcodage logique combinatoire
 
Codage de l'information
Codage de l'informationCodage de l'information
Codage de l'information
 
Info1 cours 3-vf-mi-v1
Info1  cours 3-vf-mi-v1Info1  cours 3-vf-mi-v1
Info1 cours 3-vf-mi-v1
 
Td02
Td02Td02
Td02
 
Tp1 architecture m.zarboubi
Tp1 architecture m.zarboubiTp1 architecture m.zarboubi
Tp1 architecture m.zarboubi
 
Chap7 simulation numérique
Chap7 simulation numériqueChap7 simulation numérique
Chap7 simulation numérique
 
Circuits logiques combinatoire
Circuits logiques combinatoireCircuits logiques combinatoire
Circuits logiques combinatoire
 
0. les réseaux le code binaire-hexa
0. les réseaux   le code binaire-hexa0. les réseaux   le code binaire-hexa
0. les réseaux le code binaire-hexa
 
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
dokumen.tips_cours-3-chiffrement-par-bloc-cole-normale-ferradi-1997-le-des-co...
 
Info1 cours 4- bcd-gray v3
Info1  cours 4- bcd-gray v3Info1  cours 4- bcd-gray v3
Info1 cours 4- bcd-gray v3
 
Conversion d'un nombre du système décimal (base 10) vers un système de numéra...
Conversion d'un nombre du système décimal (base 10) vers un système de numéra...Conversion d'un nombre du système décimal (base 10) vers un système de numéra...
Conversion d'un nombre du système décimal (base 10) vers un système de numéra...
 
Td logique
Td logiqueTd logique
Td logique
 
chap4 codes-en-ligne
chap4 codes-en-lignechap4 codes-en-ligne
chap4 codes-en-ligne
 

Plus de informatiquehageryah (13)

Cours-Intelligence-artificielle-55.pdf
Cours-Intelligence-artificielle-55.pdfCours-Intelligence-artificielle-55.pdf
Cours-Intelligence-artificielle-55.pdf
 
cours1-2-vision-bklog.pdf
cours1-2-vision-bklog.pdfcours1-2-vision-bklog.pdf
cours1-2-vision-bklog.pdf
 
chapitre 1 SI.pdf
chapitre 1 SI.pdfchapitre 1 SI.pdf
chapitre 1 SI.pdf
 
Processus_Unifie_et_Approche_Agile chapitre 1.pptx
Processus_Unifie_et_Approche_Agile chapitre 1.pptxProcessus_Unifie_et_Approche_Agile chapitre 1.pptx
Processus_Unifie_et_Approche_Agile chapitre 1.pptx
 
Fortinet [Enregistrement automatique].pptx
Fortinet [Enregistrement automatique].pptxFortinet [Enregistrement automatique].pptx
Fortinet [Enregistrement automatique].pptx
 
fortinet et sécurité.pdf
fortinet et sécurité.pdffortinet et sécurité.pdf
fortinet et sécurité.pdf
 
01-introduction.ppt
01-introduction.ppt01-introduction.ppt
01-introduction.ppt
 
Plan_GE_22_06.docx
Plan_GE_22_06.docxPlan_GE_22_06.docx
Plan_GE_22_06.docx
 
Algebre-de-Boole-et-Simplifications.pdf
Algebre-de-Boole-et-Simplifications.pdfAlgebre-de-Boole-et-Simplifications.pdf
Algebre-de-Boole-et-Simplifications.pdf
 
c4.pdf
c4.pdfc4.pdf
c4.pdf
 
c5.pdf
c5.pdfc5.pdf
c5.pdf
 
c2.pdf
c2.pdfc2.pdf
c2.pdf
 
c1.pdf
c1.pdfc1.pdf
c1.pdf
 

architecture des calculateurs (2).pdf

  • 1. Université de Kairouan Faculté des Sciences et Techniques de Sidi Bouzid Architecture des calculateurs Enseignante : Dr. Sonda BEN JDIDIA Email : sonda.benjdidia@isimg.tn CPI2 Année Universitaire : 2022/2023
  • 3. 3 Historique Première génération d'ordinateurs (1936-1956) : L’ENIAC (Electronic Numerical Integrator and Computer) : C’est le premier ordinateur entièrement électronique. ◼ Il pesait près de 30 tonnes et contenait environ 19.000 lampes à vide, 1.500 relais électriques et des centaines de milliers de résistances électriques, condensateurs et inducteurs. ◼ Il occupait 72 m² et consommait une puissance de 160 kW, Il tournait à 100 kHz et était composé de 20 calculateurs fonctionnant en parallèle pouvant effectuer 100 000 additions ou 357 multiplications par seconde.
  • 4. 4 Historique Deuxième génération d'ordinateurs (1956-1963) : Elle est basée sur l'invention du transistor en 1947. Cela permit de remplacer le fragile et encombrant tube électronique par un composant plus petit et fiable. Troisième génération d'ordinateurs (1963-1971) : Elle est celle des ordinateurs à circuit intégré. C'est à cette date que l'utilisation de l'informatique a explosé. Quatrième génération d'ordinateurs (1971 à la fin des années 1980) : En 1971, Intel dévoile le premier microprocesseur commercial, le 4004. Les microprocesseurs regroupent la plupart des composants de calcul (horloge et mémoire mises à part) sur un seul circuit.
  • 5. 5 Architecture de l’ordinateur moderne : Architecture Von Neuman : ◼ La machine est contrôlée par des programmes ◼ Les instructions du programme sont codées sous forme numérique binaire et enregistrées en mémoire ◼ Les instructions sont normalement exécutées séquentiellement. ◼ Existance d’instructions permettant les ruptures de séquences (Interruptions) Historique
  • 6. Chapitre I : La représentation des données
  • 7. 7 ▪ Les informations traitées par un ordinateur peuvent être de différents types (texte, nombres, etc.) mais elles sont toujours représentées et manipulées sous forme binaire. ▪ Toute information sera traitée comme une suite de 0 et de 1. L’unité d’information est le chiffre binaire (0 ou 1), qu’on appelle bit (pour binary digit, chiffre binaire). Information Données Caractères ASCII UNICODE Numériques Entiers Signés Non-Signés Réels Instructions La représentation des données
  • 8. 8 Système Base Chiffres utilisables Binaire 2 0 1 Octal 8 0 1 2 3 4 5 6 7 Décimal 10 0 1 2 3 4 5 6 7 8 9 hexadécimal 16 0 1 2 3 4 5 6 7 8 9 A B C D E F Remarque : pour connaître la base associée à un nombre, on le note entre parenthèse avec en indice une lettre b,o,d ou h selon qu'il s'agit d'un codage binaire, octal, décimal ou hexadécimal. Par exemple, (1001)b, (3F1)h ou (128)d ❑Chaque format de numérotation possède une base qui est le nombre maximal de symboles pouvant être utilisés pour chaque position numérique. ❑Les systèmes de numérotation les plus utilisés en informatique sont: binaire, octal, décimal, hexadécimal La représentation des données
  • 9. 9 ❑Un nombre binaire est un nombre en base 2 dont chaque chiffre vaut 0 ou 1 ❑Les bits sont numérotés en commençant par la droite ❑Le bit situé le plus à gauche dans une représentation est appelé le bit le plus significatif, MSB (Most Significant Bit). ❑Le bit le plus à droite est le bit le moins significatif (LSB, Least Significant Bit). On utilise également les notions de bit de poids fort et bit de poids faible. La représentation des données
  • 10. 10 On représente les nombres entiers sous forme d’une somme de puissance de base par exemple en base 10, on écrit par exemple 1996 Dans le cas général, en base b, le nombre représenté par une suite de chiffres comme suit La représentation des données
  • 11. 11 Conversion décimal → binaire : Pour convertir un nombre décimal en nombre binaire (en base B = 2), il suffit de faire des divisions entières successives par 2 jusqu'à ce que le quotient devienne nul. Le résultat sera la juxtaposition des restes. Changement de bases
  • 12. 12 Changement de bases Conversion décimal → hexadécimal : En hexadécimal (la base B = 16), donc il faut maintenant diviser le nombre décimal successivement par 16. Les restes obtenus sont alors convertis dans leur équivalent hexadécimal.
  • 13. 13 Conversion binaire ➔hexadecimal : ▪ le codage hexadécimal a été créé afin d'alléger l'exploitation des nombres binaires. ▪ Il permet en particulier une conversion simple par regroupement des bits par 4 en partant de la droite, chaque paquet étant alors simple à convertir : Changement de bases
  • 14. 14 Exercice 1 : Convertir en décimal les chiffres binaires suivants : (110)b, (1010)b, (1001 1100)b Exercice 2 : Convertir en binaire les chiffres décimaux suivants : 8, 12, 256, 325 Exercice 3 : Convertir en hexadécimal les chiffres binaires suivants : (111)b, (1010)b, (1001 1110)b Exercice 4 : Convertir en hexadécimal les chiffres décimaux suivants : 8, 12, 67, 256, 1023, 12341 Applications
  • 15. 15 ➢Exercice 1 : convertir en décimal les chiffres binaires suivants : (110)b=(6)d / (1010)b=(10)d / (1001 1100)b=(156)d ➢Exercice 2 : convertir en binaire les chiffres décimaux suivants : 8=(1000)2, 12=(1100)2, 256=(100000000)2, 325=(101000101)2 ➢Exercice 3 : convertir en hexadécimal les chiffres binaires suivants : (111)b=(7)16, (1010)b=(A)16, (1001 1110)b=(9E)16 ➢Exercice 4 : convertir en hexadécimal les chiffres décimaux suivants : 8=(8)h, 12=(C)h, 67=(43)h, 256=(100)h, 1023=(3FF)h, 12341=(3035)h Correction
  • 16. 16 ❑Une valeur entière binaire peut être signée ou non signée : ▪ Une valeur signée peut être positive ou négative. ▪ alors qu’une valeur Non signée ne peut être que positive ou égale à 0. Problème : Comment indiquer à la machine qu’un nombre est négatif ou positif !!! ➔Trois méthodes sont utilisées pour la représentions des nombres négatifs : • Signe / valeur absolu • Complément à 1 (complément restreint) • Complément à 2 (complément vrai ) Représentation des nombres signés et non signés
  • 17. 17 Représentation signe/ valeur absolu (S/VA) ▪ Pour une valeur entière binaire présentée sur n bits; le bit le plus significatif (MSB) contient le signe de la valeur et les (n-1) bits restant désignent la valeur absolue de la valeur. ▪ Si le MSB vaut 0, l’entier est positif Il est Négatif si le bit vaut 1. ▪ Exemple: 1 1 0 1 1 1 0 1 0 1 0 1 1 1 0 1 11011101 est la représentation de (-93) 01011101 est la représentation de (93) négatif positif Bit de Signe Valeur absolue Représentation des nombres signés et non signés
  • 18. 18 Représentation en complément à 1 ▪ On appelle complément à un d’un nombre N un autre nombre N′ tel que: N+N′=2n-1 n: est le nombre de bits de la représentation du nombre N. Pour trouver le complément à un d’un nombre, il suffit d’inverser tous les bits de ce nombre Exemple : Soit N= 1010 sur 4 bits, donc son complément à 1 est : N′=(24-1)-N => N′=0101 Soit X = 11010010 sur 8 bits, donc son complément à 1 est : 00101101 Représentation des nombres signés et non signés
  • 19. 19 Représentation en complément à 2 ▪ Le complément à 2 d’une valeur entière binaire (complément à vrai) se calcule en inversant tous les bits puis en ajoutant 1 au résultat, ▪ Si on part d’une valeur binaire 01101010 sur 8 bits, le complément à 2 vaut comme le montre le tableau suivant: Valeur de départ 01101010 Étape 1 : CA1 → inversion des bits 10010101 Étape 2 : ajout de 1 10010101 + 00000001 Complément à 2 10010110 ▪ L’opération de complément à 2 est réversible. Si on calcule le complément à 2 de 10010110, le résultat sera 01101010. Représentation des nombres signés et non signés
  • 20. 20 Valeur de départ 11110000 Etape 1 : inversion des bits 00001111 Etape 2 : ajout de 1 00001111 + 00000001 Etape 3 : complément à 2 00010000 Etape 4 : conversion en décimal 16 ▪ Afin de connaître la valeur décimale d’un entier binaire signé, on procède comme suit : ✓ Si le bit de poids fort vaut 1, c’est qu’il est stocké en notation en complément à deux. Il faut chercher le complément à 2 de ce propre complément pour récupérer la valeur positive. ensuite convertir cette valeur en décimale comme il s’agit d’un entier binaire non signé. Exemple: La valeur binaire signé 11110000 possède 1 en bit de poids fort, ce qui indique que c’est une valeur négatif. Voici le processus pour convertir le résultat en décimal: Puisque l’entier d’origine 11110000 était négatif, sa valeur décimal sera négative aussi. Elle est donc en réalité égale à -16 ✓ Si le bit de poids fort vaut 0 , la valeur binaire sera convertie directement comme s’il s’agissait d’un entier binaire non signé Représentation des nombres signés et non signés
  • 21. 21 Exercice 1 : Quelle est la représentation décimale non signée de chacun des entiers hexadécimaux suivants : a) 3A b) 1BF c) 4096 Exercice 2 : Quelle est la représentation hexadécimale sur 8 bits de chacun des entiers décimaux signés suivant: a) -29 b) -45 Exercice 3 : Quelle est la représentation décimale des nombres binaires signés suivants ? a) 10110101 b) 00101010 c) 11110000 Exercice 4 : Quelle est la représentation binaire sur 8 bits de chacun des entiers décimaux signés suivants : a) -5 b) -36 c) -16 Applications
  • 22. 22 Correction …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………….………
  • 23. Chapitre II : Architecture des microprocesseurs
  • 24. 24 ❑ Un système numérique, intégrant de l’électronique, fait souvent apparaître des fonctions ayant pour rôle le traitement d’informations : opérations arithmétiques (addition, multiplication...) ou logiques (ET, OU...) entre plusieurs signaux d’entrée permettant de générer des signaux de sortie. ❑ Ces fonctions peuvent être réalisées par des circuits intégrés analogiques ou logiques. ❑ A l’heure actuelle, un microprocesseur regroupe sur quelques millimètres carrés des fonctionnalités toujours plus complexes. Leur puissance continue de s’accroître et leur encombrement diminue régulièrement respectant toujours, pour le moment, la fameuse loi de Moore « Le nombre de transistors intégrables sur une seule puce double tous les deux ans » C’est quoi un microprocesseur ?
  • 25. 25 Architecture du microprocesseur Architecture interne : Un microprocesseur est construit autour de deux éléments principaux : ❑ Une unité de commande : appelé aussi Unité de commande et de contrôle (UCC) ❑ Une unité de traitement associés à des registres chargées de stocker les différentes informations à traiter. Ces trois éléments sont reliés entre eux par des bus internes permettant les échanges d’informations. …………. …………. …………… …………… …………… …………… …………………………………………………………. ………………………………………………………….
  • 26. 26 Architecture interne : Architecture du microprocesseur …………………………………………………………. ………………………………………………………….
  • 27. 27 • L’accumulateur:………………………………………………………… …………………………………………………………………………… …………………………………………………………………………….. • L’Unité Arithmétique et Logique (UAL) : ……………………………... ………………………………………………………………………..…… …………………………………………………………………………….. • Le registre d'état :....................................................................................... ...................................................................................................................... ...................................................................................................................... Architecture du microprocesseur Unité de traitement : C’est le cœur du microprocesseur. Elle regroupe les circuits qui assurent les traitements nécessaires à l'exécution des instructions.
  • 28. 28 Architecture du microprocesseur Unité de commande : Elle permet de séquencer le déroulement des instructions. Elle effectue la recherche en mémoire de l'instruction. Comme chaque instruction est codée sous forme binaire, elle en assure le décodage pour enfin réaliser son exécution puis effectue la préparation de l'instruction suivante. Pour cela, elle est composée par : • PC : Program Counter • Le décodeur d'instruction • Bloc logique de commande (séquenceur)
  • 29. 29 Architecture du microprocesseur Unité de commande : PC : Program Counter : ………………………………………………….... ………………………………………………………………………..……… ………………………………………………………………………..……... ……………………………..………………………………………………… …………………..…………………………………………………………… Le décodeur d'instruction : ………………………………………………... ………………………………………………………………………..……… ……………………………………………………………………….……….. Bloc logique de commande (séquenceur) : ……………………………... ………………………………………………………………………..……… ………………………………………………………………………………...
  • 30. 30 (1) …………………………………………………………… (2) …………………………………………………………… (3) …………………………………………………………… (4) …………………………………………………………… Architecture du microprocesseur Le déroulement d’une opération de calcul :
  • 31. 31 Architecture du microprocesseur Architecture Von Neumann : ………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………… …………………….…………………………………………………………………………………………… ……………………..……………………………………………………………………………………………
  • 32. 32 Architecture Harvard : Architecture du microprocesseur ………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………… …………………….…………………………………………………………………………………………… ……………………..…………………………………………………………………………………………… ………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………… …………………….…………………………………………………………………………………………… ……………………..……………………………………………………………………………………………
  • 33. Chapitre III : Architecture du processeur 8086
  • 34. 34 Architecture interne du microprocesseur 8086  Il se présente sous la forme d’un boîtier DIP (Dual In‐line Package) à 40 broches.  Le microprocesseur 8086 se caractérise par : - Un processeur CISC (Complex Instruction Set Computer) - …………………………………………………………….. - 16 lignes de données - 1 mot mémoire = 2 octets - 20 lignes d’adresses - …………………………………………………………….. - 14 registres internes de 16 bits. - …………………………………………………………….. - Opérations sur des bits, des octets, des mots et des chaînes de caractères. - Arithmétique signée ou non signée. - Arithmétique binaire ou BCD, sur 8 ou 16 bits.
  • 35. 35 Architecture interne du microprocesseur 8086 Il se compose de 2 unités séparées :
  • 36. 36 Architecture interne du microprocesseur 8086 L’unité d’exécution comporte :  …………………………………………………………….  …………………………………………………………….  …………………………………………………………….  …………………………………………………………….  …………………………………………………………….  ……………………………………………………………. Fonctions de l’UE (Unité d‘Exécution) :  …………………………………………………………………………… …………………………………………………………………………….  …………………………………………………………………………… …………………………………………………………………………….
  • 37. 37 Architecture interne du microprocesseur 8086 L’unité UIB : unité d’interfaces de bus comporte essentiellement :  ……………………………………………………………………………  ……………………………………………………………………………  …………………………………………………………………………… Fonctions de l’UIB (Unité d'Interface de Bus) :  …………………………………………………………………………… ……………………………………………………………………………  ……………………………………………………………………………  ……………………………………………………………………………
  • 38. 38 Architecture interne du microprocesseur 8086 La mémoire :  La mémoire se comporte comme un grand tableau d'octets  Accéder à la mémoire consiste à accéder à une case du tableau en indiquant son indice, appelé adresse.  Un accès mémoire se fait selon une certaine taille : on peut accéder à plusieurs octets contiguës en une seule fois  On peut lire l'octet situé à l'adresse 123h  On peut écrire deux octets situés à l'adresse 456h : Le premier va dans la case 456h et le deuxième dans la case 457h
  • 39. 39 Architecture interne du microprocesseur 8086 La mémoire (big –endian ou little-endian) Supposons qu'on veut stocker la valeur A035h dans la mémoire, on a deux possibilités :  Stocker d'abord l'octet A0h, puis l'octet 35h à la suite, c'est le mode …………………  Stocker d'abord l'octet 35h, puis l'octet A0h à la suite, c'est le mode …………………  Le 8086 et ses successeurs sont ………………………….
  • 40. 40 Gestion et segmentation de la mémoire ………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………… 20
  • 41. 41 Gestion et segmentation de la mémoire Adresse physique et adresse logique :  ……………………………………………………………………… ……………………………………………………………………… ……………………………………………………………………… ………………………………………………………………………  ……………………………………………………………………… ……………………………………………………………………… ……………………………………………………………………… ……………………………………………………………………….
  • 42. 42 Gestion et segmentation de la mémoire Adresse physique et adresse logique :  La correspondance entre l’adresse logique et l’adresse physique est représentée sur la figure suivante :  Ainsi, l’adresse physique se calcule par l’expression : Adresse physique = …………………………………………………. Remarque : Injecter 4 zéros (en binaire) en poids faible de l’adresse du segment revient à effectuer un décalage de 4 positions (4bits) vers la gauche, c’est-à-dire une multiplication par 16
  • 43. 43 Gestion et segmentation de la mémoire  Exemple : Calculer les adresses physiques à partir des adresses logiques données : a) 08F1h : 0100h b) 3100h:27EEh Solution (a)
  • 44. 44 Les registres du 8086 Généraux ………. ………. ………. ………. D’adressage ………. ………. ………. ………. De segments ………. ………. ………. ………. De commande ………. ……….
  • 45. De cette façon, nous pouvons utiliser une partie du registre si nous désirons y stocker une valeur n'excédant pas 8 bits. Si, au contraire, la valeur que nous désirons y ranger excède 8 bits, nous utiliserons le registre complet, c'est à dire 16 bits. Les registres généraux :  Les registres généraux peuvent être utilisés dans…………………………………………………….. ……………………………………………………………………………………………………………  ....................................................................................................................................................................... .......................................................................................................................................................................  Il existe 4 registres généraux : AX, BX, CX, DX 45 Les registres du 8086
  • 46. Les registres généraux :  Le registre…………………………………………………………………………………………………. …………………………………………………………………………………………………………… …………………………………………………………………………………………………………… …………………………………………………………………………………………………………….  Le registre…………………………………………………………………………………………………. …………………………………………………………………………………………………………… …………………………………………………………………………………………………………… …………………………………………………………………………………………………………….  Le registre…………………………………………………………………………………………………. …………………………………………………………………………………………………………… …………………………………………………………………………………………………………… …………………………………………………………………………………………………………….  Le registre…………………………………………………………………………………………………. …………………………………………………………………………………………………………… …………………………………………………………………………………………………………… ……………………………………………………………………………………………………………. 46 Les registres du 8086
  • 47. 47 Les registres du 8086 Les registres d’adressage :  ……………………………………………………………………………………………………………….  ……………………………………………………………………………………………………………...  Ils sont en général munis de propriétés d'incrémentation et de décrémentation. ✓ Ils sont utilisés pour les transferts de chaînes d’octets entre deux zones mémoire. ✓ Ils contiennent des adresses de cases mémoire
  • 48. 48 Les registres d’adressage :  Pointeurs ✓ ……………………………..: pointeur de pile (la pile est une zone de sauvegarde de données en cours d’exécution d’un programme) ✓ ……………………………… : pointeur de base, utilisé pour adresser des données sur la pile.  Index Ils sont utilisés pour les transferts de chaînes d’octets entre deux zones mémoire ✓ …………………………………………………: il pointe sur la source. ✓ ………………………………………………….: il pointe sur la destination. Les registres du 8086
  • 49. 49 Les registres de segment :  Le 8086 a quatre registres segments de 16 bits chacun : ✓………………………………… ✓………………………………… ✓………………………………… ✓………………………………….  …………………………………………………………………………………………………………… ……………………………………………………………………………………………………………...  …………………………………………………………………………………………………………… Les registres du 8086
  • 50. 50 Les registres de segment :  Le registre ………………………….: Il pointe sur le segment qui contient les codes des instructions du programme en cours  Le registre ………………………….: Le registre segment de données pointe sur le segment des variables globales du programme.  Le registre ………………………….: Le registre de données supplémentaires ES est utilisé par le microprocesseur lorsque l'accès aux autres registres est devenu difficile ou impossible pour modifier des données, de même ce segment est utilisé pour le stockage des chaînes de caractères  Le segment ………………………….: Le registre SS pointe sur la pile : la pile est une zone mémoire ou on peut sauvegarder les registres ou les adresses ou les données pour les récupérer après l'exécution d'un sous‐programme ou l'exécution d'un programme d'interruption. Les registres du 8086
  • 51. 51 ✓ ………………………….: (Pointeur d’instruction / Le compteur de programme): Il 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. ✓ …………………………………………….: sert à contenir l'état de certaines opérations effectuées par le processeur. Le registre d'état du 8086 est formé par les bits suivants : Les registres de commande :  2 registres de 16 bits : un pointeur d’instruction et un indicateur : → 6 bits d’état reflètent les résultats d'une opération arithmétique ou logique et 3 participent au contrôle du processeur. Les registres du 8086
  • 52. 52  ……………………………………: cet indicateur est positionné à 1 lorsqu’il y a une retenue du résultat à 8 ou 16 bits. Il intervient dans les opérations d'additions (retenue) et de soustractions (emprunt) sur des entiers naturels.  ……………………………………..: ce bit est égal à 1 si on a une retenue du quarter (4 bits) de poids faible dans le quarter de poids plus fort.  …………………………………….: si le résultat de l'opération contient un nombre pair de 1, cet indicateur est positionné à 1, sinon zéro. Drapeaux de contrôle Drapeaux d’états TF DF IF OF SF ZF AF PF CF Les registres de commande : Les drapeaux sont des indicateurs qui annoncent une condition particulière suite à une opération arithmétique ou logique. Les registres du 8086
  • 53. 53 Les registres de commande :  …………………………………: Cet indicateur est positionné à 1 quand le résultat d'une opération est égal à zéro.  …………………………………: SF est positionné à 1 si le bit de poids fort du résultat d'une addition ou soustraction est 1 ; sinon SF = 0. SF est utile lorsque l'on manipule des entiers signés, car le bit de poids fort donne alors le signe du résultat.  …………………………………………………: si on a un débordement arithmétique ce bit est positionné à 1, c’est à dire le résultat d'une opération excède la capacité de l'opérande (registre ou case mémoire), sinon il est à 0.  ………………………………… : utilisé par les instructions de traitement des chaînes de caractères pour auto incrémenter ou auto décrémenter le SI et le DI. Les registres du 8086
  • 54. 54 Les registres de commande :  ………………………………………………………… : pour masquer les interruptions venant de l'extérieur ce bit est mis à 0, dans le cas contraire (IF = 1) le microprocesseur reconnaît l'interruption de l'extérieur.  …………………………………: pour que le microprocesseur exécute le programme pas à pas. Les registres du 8086