Escolar Documentos
Profissional Documentos
Cultura Documentos
Cours
MI
1re Anne S2
1. Introduction
Un programme est gnralement crit dans un langage volu (Pascal, C, VB, Java, etc.).
fichier.
Compilation : un compilateur est un programme qui convertit le code source ( programme crit dans un
langage donn ) en un programme crit dans un langage machine ( binaire ). Une instruction en langage volu peut
tre traduite en plusieurs instructions machine.
Octobre 2013
1/9
Le temps daccs la mmoire centrale et sa capacit sont deux lments qui influent sur
le temps dexcution dun programme ( performances dune machine ).
LUC est compose dune unit arithmtique et logique (UAL) et dune unit de
contrle.
- Lunit arithmtique et logique ralise les oprations lmentaires (addition, soustraction,
multiplication, . . .) .
- Lunit de commande contrle les oprations sur la mmoire (lecture/criture) et les
oprations raliser par lUAL selon linstruction en cours dexcution.
Octobre 2013
2/9
2.2.1 LUAL
Lunit arithmtique et logique ralise une opration lmentaire (addition, ,soustraction, multiplication, . . .).
..).
LUAL regroupe les circuits qui assurent les fonctions logiques et arithmtiques de bases ( ET,OU,ADD,SUS,
LUAL comporte un registre accumulateur ( ACC ) : cest un registre de travail qui sert a stocker un oprande
(donnes )au dbut dune opration et le rsultat la fin.
LUAL comporte aussi un registre dtat : Ce registre nous indique ltat du droulement de lopration .
Ce registre est compos dun ensemble de bits. Ces bits sappels indicateurs (drapeaux ou flags).
Ces indicateurs sont mis jours ( modifis )aprs la fin de lexcution dune opration dans lUAL.
C0 C1 C2 Code Rsultat
0
ADD
A + (B + Cin)
SUB
A - (B + Cin)
MUL
A*B
Cout = 0
DIV
A/B
Cout = 0
EQ
1 si A == B sinon 0
Cout = 0
CMP
1 si A < B sinon 0
Cout = 0
LSH
A << B
RSH
Octobre 2013
A >> B
3/9
Elle assure :
la recherche ( lecture ) de linstruction et des donnes partir de la mmoire,
le dcodage de linstruction et lexcution de linstruction en cours
et prpare linstruction suivante.
Un registre instruction (RI) : contient linstruction en cours dexcution. Chaque instruction est dcoder selon
sont code opration grce un dcodeur.
Un registre qui sappel compteur ordinal (CO) ou le compteur de programme (CP ) : contient ladresse de la
prochaine instruction excuter (pointe vers la prochaine instruction excuter ). Initialement il contient ladresse de
le premire instruction du programme excuter.
Un squenceur : il organise ( synchronise ) lexcution des instruction selon le rythme de lhorloge, il gnre
les signaux ncessaires pour excuter une instruction.
Octobre 2013
4/9
Remarque
Ces registres sont considrs comme une mmoire interne ( registre de travail ) du microprocesseur.
Ces registres sont plus rapide que la mmoire centrale , mais le nombre de ces registre est limit.
Gnralement ces registres sont utiliss pour sauvegarder les donnes avant dexcuter une opration.
Gnralement la taille dun registre de travail est gale la taille dun mot mmoire
3.Jeu dinstructions
Chaque microprocesseur possde un certain nombre limit dinstructions quil peut excuter. Ces instructions sappelles
jeu dinstructions.
Le jeu dinstructions dcrit lensemble des oprations lmentaires que le microprocesseur peut excuter.
Instruction daffectation : elle permet de faire le transfert des donnes entre les registres et la mmoire
criture : registre mmoire
Lecture : mmoire registre
Octobre 2013
5/9
La taille dune instruction ( nombre de bits ncessaires pour la reprsenter en mmoire ) dpend du type de linstruction et
du type de loprande.
Code opration ( code instruction ) : un code sur N bits qui indique quelle instruction.
Code opration
--- N bits --
Oprande
--- K bits --
Machine 3 adresses
du deuxime oprande
et lemplacement du rsultat
Oprande
2
Rsultat
Exemple :
ADD A,B,C
( CB+C )
Machine 2 adresses
du deuxime oprande ,
Oprande2
Exemple :
ADD A,B
( BA+B )
Machine 1 adresses
Dans de type de machine pour chaque instruction il faut prciser uniquement ladresse du deuxime
oprande.
( ACC(ACC) + A )
Octobre 2013
6/9
4. Mode dadressage
Le code opration de linstruction comportent un ensemble de bits pour indiquer le mode dadressage.
Exemple :
ADD 150
ADD 150
Exemple :
On suppose que laccumulateur
continent la valeur 20 .
A la fin de lexcution nous allons avoir la valeur 50 ( 20 + 30 )
Exemple :
Additionner la valeur 40 avec le contenu de laccumulateur (20) et nous allons avoir la valeur 60
Octobre 2013
7/9
Chaque phase comporte un certain nombre doprations lmentaires ( microcommandes ) excutes dans
un ordre bien prcis ( elle sont gnres par le squenceur ).
La phase 1 et 3 ne change pas pour lensemble des instructions , par contre la phase 2 change selon
linstruction et le mode dadressage
Octobre 2013
8/9
Octobre 2013
ACC(ACC)+ ((ADR))
9/9