Vous êtes sur la page 1sur 22

3 Architecture de base dun

ordinateur
ID-IG-RT:1ere Anne Architecture des ordinateurs 1
Architecture de base dun ordinateur

Dans cette partie, nous dcrivons rapidement larchitecture de base dun ordinateur et les
principes de son fonctionnement.

- Un ordinateur: est une machine de traitement de linformation. I l est capable dacqurir de linformation, de
la stocker, de la transformer en effectuant des traitements quelconques, puis de la restituer sous une autre
forme.
Le mot informatique vient de la contraction des mots information et automatique.
Nous appelons information tout ensemble de donnes. On distingue gnralement diffrents types
dinformations : textes, nombres, sons, images, etc., mais aussi les instructions composant un programme.

3.1 Principes de fonctionnement

Les deux principaux constituants dun ordinateur sont la mmoire principale et le processeur. La
mmoire principale (MP en abrg) permet de stocker de linformation (programmes et donnes), tandis que le
processeur excute pas pas les instructions composant les programmes..





ID-IG-RT:1ere Anne Architecture des ordinateurs 2



Notion de programme
Un programme est une suite dinstructions lmentaires, qui vont tre
excutes dans lordre par le processeur.

Le processeur est capable dexcuter des programmes en langage machine.

Chaque type de processeur est capable dexcuter un certain ensemble
dinstructions.

Le processeur

Le processeur est un circuit lectronique complexe qui excute chaque
instruction trs rapidement, en quelques cycles dhorloges..
La frquence de cette horloge sexprime en MHz (millions de battements par
seconde).

Par exemple, un ordinateur PC Pentium 133 possde un processeur de type
Pentium et une horloge 133 MHz.





ID-IG-RT:1ere Anne Architecture des ordinateurs
3



Le processeur est divis en deux parties (voir figure 1.1):
- lunit de commande
- lunit de traitement :
lunit de commande est responsable de la lecture en mmoire et du dcodage des instructions ;
lunit de traitement, aussi appele Unit Arithmtique et Logique (U.A.L.), excute les instructions qui
manipulent les donnes.







ID-IG-RT:1ere Anne Architecture des ordinateurs
4
3.2 La mmoire principale (MP)
Structure de la MP
La mmoire est divise en emplacements de taille fixe (par exemple 8 bits) utiliss pour
stocker instructions et donnes.
En principe, la taille dun emplacement mmoire pourrait tre quelconque ; en
fait, la plupart des ordinateurs en service aujourdhui utilisent des emplacements mmoire
dun octet (byte en anglais, soit 8 bits, unit pratique pour coder un caractre par exemple).
Dans une mmoire de taille N, on a N emplacements mmoires, numrots de 0 N - 1. La
capacit (taille) de la mmoire est le nombre demplacements, exprim en gnral en kilo-
octets ou en mga-octets.
ISCAE ID-IG-RT:1ere Anne Architecture des ordinateurs Seance 3 5
ID-IG-RT:1ere Anne Architecture des ordinateurs
6
Oprations sur la mmoire:

Chaque emplacement mmoire conserve les informations que le processeur y
crit jusqu coupure de lalimentation lectrique, o tout le contenu est perdu
(contrairement au contenu des mmoires externes comme les disquettes et disques durs).
Les seules oprations possibles sur la mmoire sont :
criture dun emplacement : le processeur donne une valeur et une adresse, et la
mmoire range la valeur lemplacement indiqu par ladresse ;
lecture dun emplacement : le processeur demande la mmoire la valeur contenue
lemplacement dont il indique ladresse.

Unit de transfert

Notons que les oprations de lecture et dcriture portent en gnral sur plusieurs
octets contigus en mmoire : un mot mmoire. La taille dun mot mmoire dpend du type
de processeur ; elle est de
1 octet (8 bits) dans les processeurs 8 bits (par exemple Motorola 6502) ;
2 octets dans les processeurs 16 bits (par exemple Intel 8086 en 1979) ;
4 octets dans les processeurs 32 bits (par ex. Intel 80486 ou Motorola 68030).






ISCAE ID-IG-RT:1ere Anne Architecture des ordinateurs Seance 3
7
3.3 Le processeur central

Le processeur est parfois appel CPU (de langlais Central Processing
Unit) ou encore MPU (Micro-Processing Unit) pour les microprocesseurs..,

Les registres et laccumulateur

Le processeur utilise toujours des registres, qui sont des petites mmoires
internes trs rapides daccs utilises pour stocker temporairement une donne, une
instruction ou une adresse.
Le nombre exact de registres dpend du type de processeur et varie typiquement
entre une dizaine et une centaine.

Parmi les registres, le plus important est le registre accumulateur, qui est utilis
pour stocker les rsultats des oprations arithmtiques et logiques.
Laccumulateur intervient dans une proportion importante des instructions.
4 Le microprocesseur Intel 8086
4.1 Description physique du 8086
Le microprocesseur Intel 8086 est un microprocesseur 16 bits, apparu
en 1978. Cest le premier microprocesseur de la famille Intel 80x86 (8086,
80186, 80286, 80386,80486,Pentium, ...). Il se prsente sous la forme dun
boitier DIP (Dual In-line Package) 40 broches:
ID-IG-RT:1ere Anne Architecture des ordinateurs
8
208 broches
ID-IG-RT:1ere Anne Architecture des ordinateurs 9
Description physique du 8086
ID-IG-RT:1ere Anne Architecture des ordinateurs 10
4.2 Schma fonctionnel du 8086
ID-IG-RT:1ere Anne Architecture des ordinateurs
11
4.3 Description et utilisation des signaux du 8086
CLK(19) : entre du signal dhorloge qui cadence le fonctionnement du microprocesseur. Ce
signal provient dun gnrateur dhorloge : le 8284.








RESET : entre de remise zro du microprocesseur, le microprocesseur est rinitialis : il va excuter
linstruction se trouvant ladresse FFFF0H (adresse de bootstrap). Le signal de RESET est fourni par le
gnrateur dhorloge.
READY : entre de synchronisation avec la mmoire. Ce signal provient galement du gnrateur dhorloge.
AD0 `a AD15 : 16 bits de poids faible du bus dadresses, multiplexes avec 16 bits de donnes
Le bus A/D est multiplexe (multiplexage temporel) dou la ncessit dun dmultiplexage pour obtenir
sparment les bus dadresses et de donnes :
16 bits de donnes (microprocesseur 16 bits) ;
20 bits dadresses, dou 2
20
= 1 Mo despace mmoire adressable par le 8086.

RD : Read, signal de lecture dune donne.
WR : Write, signal decriture dune donne.
DT/R : Data Transmit/Receive, indique le sens de transfert des donnes :
DT/R = 1 : donnes mises par le microprocesseur (criture) ;
DT/R = 0 : donnes reues par le microprocesseur (lecture).




ID-IG-RT:1ere Anne Architecture des ordinateurs
12
4.4 - Organisation interne du 8086
Introduction au langague machine
Caractristiques du processeur tudi
Voici les caractristiques du processeur simplifi que nous tudierons :
CPU 16 bits accumulateur :
bus de donnes 16 bits ;
bus dadresse 20 bits ;
Registres :
accumulateur AX (16 bits) ;
registres auxiliaires BX et CX (16 bits) ;
pointeur dinstruction IP (16 bits) ;
registres segments CS, DS, SS (16 bits) ;
pointeur de pile SP (16 bits), et pointeur BP (16 bits).
Les registres IP et AX (accumulateur) ont dja t tudis. Les autres le seront
progressivement dans
chapitre.
Nous verrons plus loin que les registres de donnes de 16 bits peuvent parfois tre utiliss
comme deux registres
indpendants de 8 bits (AX devient la paire (AH,AL)) :

On a aussi EAX(32 bit) ; EBX(32bit) etc.
Jeu dinstruction
Types dinstructions:

Instructions daffectation

Dclenchent un transfert de donnes entre lun des registres du processeur et la mmoire
principale.
transfert CPU Mmoire Principale (MP) (= lecture en MP) ;
transfert CPU Mmoire Principale (MP) (= criture en MP) ;

Instructions arithmtiques et logiques
Oprations entre une donne et laccumulateur AX. Le rsultat est plac dans laccumulateur.
La donne peut tre une constante ou une valeur contenue dans un emplacement mmoire.
Exemples :
addition : AX AX + donne ;
soustraction : AX AX - donne ;
incrmentation de AX : AX AX + 1 ;
dcrmentation : AX AX - 1 ;
dcalages gauche et droite ;
Instructions de comparaison
Comparaison du registre AX une donne et positionnement des indicateurs.
Example: CMP AX, valeur; CMP AX, [ adr ]
Instructions de branchement
La prochaine instruction excuter est repre en mmoire par le registre IP. Les instructions
de branchement permettent de modifier la valeur de IP pour excuter une autre instruction
(boucles, tests, etc.).
On distingue deux types de branchements :
branchements inconditionnels : IP adresse dune instruction ; Ex: JMP adr
branchements conditionnels : Si une condition est satisfaite, alors branchement,
sinon passage simple linstruction suivante. Ex: JE adr

Codage des instructions et mode dadressage:
Une instruction est compose de deux champs :
le code opration, qui indique au processeur quelle instruction raliser ;
le champ oprande qui contient la donne, ou la rfrence une donne en mmoire (son adresse).

Ex: Mov AX, 1000H







Sens des mouvements de donnes
La plupart des instructions spcifient des mouvements de donnes entre la mmoire principale et le
microprocesseur. En langage symbolique, on indique toujours la destination, puis la source. Ainsi
linstruction MOV AX, [0110] transfre le contenu de lemplacement mmoire 0110H dans
laccumulateur, tandis que MOV [0112], AX transfre le contenu de laccumulateur dans
lemplacement mmoire 0112 .

Linstruction MOV (de langlais move, dplacer) scrit donc toujours :
MOV destination, source

Modes dadressage:
En adressage immdiat, on indique simplement la valeur de loprande en hexadcimal.
Exemple : MOV AX, 12
En adressage direct, on indique ladresse dun emplacement en mmoire principale
en hexadcimal entre crochets : MOV AX, [A340]
En adressage relatif, on indique simplement ladresse (hexa). Lassembleur traduit
automatiquement cette adresse en un dplacement (relatif sur un octet).
Exemple :JNE 0108 (nous tudierons linstruction JNE plus loin).



Indicateurs
Les instructions de branchement conditionnels utilisent les indicateurs, qui sont des
bits spciaux positionns par lUAL aprs certaines oprations. Les indicateurs sont
regroups dans le registre dtat du processeur. Ce registre nest pas accessible
globalement par des instructions ; chaque indicateur est manipul individuellement par des
instructions spcifiques.
Nous tudierons ici les indicateurs nomms ZF, CF, SF et OF.
ZF Zero Flag
Cet indicateur est mis 1 lorsque le rsultat de la dernire opration est zro.
Lorsque lon vient deffectuer une soustraction (ou une comparaison), ZF=1 indique
que les deux oprandes taient gaux. Sinon, ZF est positionn 0.
CF Carry Flag
Cest lindicateur de report (retenue), qui intervient dans les oprations daddition
et de soustractions sur des entiers naturels. Il est positionn en particulier par les
instructions ADD, SUB et CMP.
CF = 1 sil y a une retenue aprs laddition ou la soustraction du bit de poids fort
des oprandes. Exemples (sur 4 bits pour simplifier) :
0100 1100 1111
+ 0110 + 0110 + 0001
- ---------- ---------- ----------
CF=0 1010 CF=1 0010 CF=1 0000

SF Sign Flag
SF est positionn 1 si le bit de poids fort du rsultat dune addition ou soustraction
est 1 ; sinon SF=0. SF est utile lorsque lon manipule des entiers relatifs, car le bit
de poids fort donne alors le signe du rsultat. Exemples (sur 4 bits) :
0100 1100 1111
+ 0110 + 0110 + 0001
--------- --------- ---------
SF=1 1010 SF=0 0010 SF=0 0000
OF Overflow Flag
Indicateur de dbordement OF=1 si le rsultat dune addition ou soustraction donne
un nombre qui nest pas codable en relatif dans laccumulateur (par exemple si
laddition de 2 nombres positifs donne un codage ngatif).
0100 1100 1111
+ 0110 + 0110 + 0001
--------- --------- ---------
OF=1 1010 OF=0 0010 OF=1 0000
Lorsque lUAL effectue une addition, une soustraction ou une comparaison, les quatre
indicateurs sont positionns. Certaines autres instructions que nous tudierons plus
loin peuvent modifier les indicateurs.
Instruction CMP
Il est souvent utile de tester la valeur du registre AX sans modifier celui-ci. Linstruction
CMP effectue exactement les mme opration que SUB, mais ne stocke pas le rsultat de
la soustraction. Son seul effet est donc de positionner les indicateurs.
Exemple : aprs linstruction
CMP AX, 5
on aura ZF = 1 si AX contient la valeur 5, et ZF = 0 si AX est diffrent de 5.
Instructions STC et CLC
Ces deux instructions permettent de modifier la valeur de lindicateur CF.








ID-IG-RT:1ere Anne Architecture des ordinateurs 22
Structure interne du Microprocesseur 8086