Académique Documents
Professionnel Documents
Culture Documents
-I-
Avant Propos
Cet ouvrage est destin en premier lieu aux lves techniciens suprieurs des coles
publiques ou prives (universits, centres de formation professionnelle, cole prives
dinformatique), et en second lieu aux lves ingnieurs (grandes coles et universits). Il peut
tre galement utilis avec profit par les toutes les personnes non spcialistes, souhaitant
entreprendre une action de formatio4n continue.
Il a pour but de leur donner les bases pour la comprhension du fonctionnement
interne dun ordinateur, en vue de son exploitation et de sa maintenance ventuelle.
Ce que nous proposons nest pas un cours classique. En effet, la comprhension de la
structure interne dun ordinateur ncessite des connaissances aussi bien en informatique quen
lectronique. Si cela ne pose pas de problmes aux lves ingnieurs (compte tenu de leurs
acquis antrieurs l'tude de cette matire), par contre les lves techniciens suprieurs (en
premire anne informatique) nont pas le minimum (ni en lectronique ni en informatique)
facilitant la comprhension. Cest pour cela que nous avons essay de simplifier au maximum,
en exploitant surtout le volet pratique avec un recours minimum la thorie. Ainsi certains
paragraphes qui sont normalement de nature trs technique, ont t prsents sous un aspect
descriptif avec des exemples pratiques. Cest pour cela quau lieu de dtailler
technologiquement la constitution des composants, nous avons prfr nous limiter un
aspect purement fonctionnel tout en donnant les principales caractristiques avec des ordres
de grandeur des valeurs utilises dans la pratique. Nous esprons ainsi toucher un large
public, et que ce document serve de rfrence consulter en cas de besoin.
Cet ouvrage est-il la traduction fidle de nos intentions pdagogiques ? Nous le
souhaitons vivement, et remercions par avance toutes les personnes qui auront lamabilit de
nous faire part de leurs critiques ou de leurs conseils, afin den amliorer le contenu dans les
prochaines ditions.
Dr Hamdi Hocine
Charg de cours
1
2
3
5
7
8
9
12
15
17
18
20
22
25
29
32
35
37
41
44
58
59
61
64
66
68
70
74
75
PAGE
-I-Terminologie de base
83
Informatique, hardware et software, systme dexploitation, processeur, carte mre, bus, entres sorties,
interfaces.
-II-Langages et environnement de programmation
85
Les langages, les traducteurs, environnement de programmation.
-III-Les logiciels
61
Editeurs, traitements de texte, tableurs, gestionnaires de bases de donnes,
CHAPITRE 2 : REPRESENTATION DES INFORMATIONS EN MEMOIRE ET CODAGE
Ex 1 & 2 : Rappel sur les systmes de numration et conversions
94
Rappels de cours (notions de base, bit, quartet, octet, mot) ; codage, dcodage, transcodage de nombres
entiers et fractionnaires
Ex 3 & 4 : Reprsentation des nombres en mmoire
99
Codage des entiers naturels, des entiers relatifs, complment 2, nombres fractionnaires en virgule fixe,
nombres fractionnaires en virgule flottante
Ex 5, 6, 7 : Oprations lmentaires en arithmtique non signe
101
Additions binaire, hexadcimale, BCD ; soustraction en complment 2 ; multiplication et division
binaires.
Ex 8 & 9 : Codage, transmission et impression
104
Codage de messages en code baudot, iso, ascii, ebcdic ; transmission : bits de parit, start, stop ;
impression : caractres imprimables et caractres de contrle.
CHAPITRE 3 : LES MEMOIRES
Ex 1, 2, 3 : Bus dadresses, bus de donnes, taille de lespace adressable
107
Ex 4 : Stockage de nombres et de caractres
108
Ex 5 & 6 : Mmoire organise en octets et mmoire organise en mots, techniques de stockage big endian et
little endian
108
Ex 7 : Mmoire segmente
110
Ex 8 & 9 : Ralisation physique de mmoires
110
Ex 10 : Synthse des notions prcdentes
115
Ex 11&12&13&14 : Antmmoire, mmoire pagine, et mmoire virtuelle
118
Ex 15 & 16 : Unit de disque dur : pistes, secteurs, cylindre, capacit, taux de transfert
121
CHAPITRE 4 : LE PROCESSEUR OU CPU
Partie 1 : Rappels de cours
Ex1 Ex5 : Notions de CPU, UC, UAL ; Registres PC, ACC, RI, PSW, SP
Partie 2 : Exercices
Ex6 : Adresses symboliques et adresses physiques, langage assembleur de mimosa
Ex 7 & 8 : Assemblage et dsassemblage
Ex9 : Programmation en langage assembleur
Ex10 : Fetch et excution
Ex11 : Exercice de synthse : assembleur, fetch et excution
Ex12 : Pile et sous programme
Ex13 : Utilisation des bits ou indicateurs zro (Z), carry (C), signe (N)
Ex14 : Algorithmie et programmation en assembleur
Partie 3 : Contrle des connaissances
Ex3-1 : Adressage relatif sur Mimosa
Ex3-2 : Pile et sous programme (mmoire organise en octets)
Ex3-3 : Dsassemblage et excution de programme.
Ex3-4 : Programmation en assembleur et assemblage
125
127
129
132
133
135
137
138
139
-1-
Alimentations
ROM
(BIOS)
Systme
dExploitation
RAM
Horloges
Mmoire
Centrale
U.C.T ou CPU
Unit Centrale de
Traitement
(microprocesseur)
BUS
Priphriques
dEntre
-clavier
-souris
-scanner
-etc
Interfaces
dEntre
Interfaces
de Sortie
Priphriques
de
Sortie
-cran
-imprimante
-etc
Mmoire
de Masse
-disquette
-disque dur
-compact
disque
-cassette
-etc..
-2-
-II-LES PERIPHERIQUES
-IV-LES MEMOIRES
-3-
Remarque:
La ram-cmos est une petite partie de mmoire ram indpendante de la zone de travail,
et fabrique dans la technologie cmos. A lextinction de lordinateur, son rle est de conserver
les informations sur la configuration de lordinateur (priphriques disponibles, interfaces
etc..), ainsi que sur lenvironnement de travail de lutilisateur: clavier franais (azerty) ou
anglais (qwerty), date dans le format franais ou anglais, etcSon contenu est sauvegard en
permanence par une pile ou un un accumulateur.
-2-Mmoires auxiliaires
On classe dans cette catgorie tout ce qui est en plus de la mmoire centrale (ou
principale). On distingue deux types: la mmoire cache et les mmoires de masse.
-Chapitre 1 : Structure dun ordinateur-
-4-
processeur
mmoire
mmoire
mmoire
disque
disque
cache
cache
centrale
dur
compact
de niveau 1
de niveau 2
(processeur)
(ram cache)
disquette
Imprimante
(ram)
-5-
-V-LES BUS
-6-
Dans une opration dcriture ou de lecture en mmoire centrale, on sollicite les trois
bus la fois.
Exemple1 : Pour crire la donne 33 lemplacement mmoire qui a pour adresse 55, la
succession des oprations est la suivante :
-
Exemple2 : Pour lire le contenu de lemplacement mmoire qui a pour adresse 54 (et qui
contient la valeur 42), la succession des oprations est la suivante :
-
Contenu des
emplacements
Mmoire
50
---
51
---
---
---
---
---
54
42
55
33
---
---
-7-
-8-
-VIII-HORLOGES ET ALIMENTATIONS
Les lments de lordinateur utilisent des tensions de travail diffrentes; un bloc
dalimentation (botier) fournit les diffrentes tensions ncessaires (+5V,-5V,+12V,-12V, ).
Les diffrents lments travaillant des vitesses diffrentes, les horloges fournissent
les frquences ncessaires chaque lment, pour que chacun travaille son propre rythme.
La frquence de base est celle du bus systme (autour de 100Mhz), les autres sont des sous
multiples ou des multiples de cette frquence, la plus leve tant celle du processeur.
-1-Bus systme
Il regroupe les bus de donnes, dadresses, de commande, ainsi que les lignes (fils)
dalimentations et dhorloges. Il est disponible sur la carte mre sous forme de slots
dextension (connecteurs dupliqus) pour enficher les cartes dextension ou cartes filles.
Dans le monde du PC, lorigine il sappelait bus IBM. Puis avec le dveloppement
de la technologie et lapparition dautres constructeurs, des bus normaliss sont apparus et les
plus courants sont: le bus ISA (Industry Standard Architecture), le bus EISA (Extended ISA)
moins courant et destin aux ordinateurs serveurs, MCA (Micro Channel Architecture) pour
les ordinateurs PS/2 dIBM, PCMCIA sur les ordinateurs portables.
-2-Bus local
Cest un bus reli directement au processeur pour acclrer les transferts
dinformation. Les plus courants dans le monde du PC sont : le bus PCI (Peripheral
Component Interconnect) qui sert connecter des cartes filles et joue donc le mme rle que
le bus ISA, les bus VESA (Video Electronics Standards Association) et AGP (Accelerated
Graphics Port) ddis au transport rapide des informations graphiques, et qui servent
connecter des cartes graphiques (communment appeles cartes vido).
-Chapitre 1 : Structure dun ordinateur-
-9-
Cest la partie vitale de lordinateur. Cest sur cette carte que viennent se fixer les
composants lectroniques indispensables (processeurs, cartes mmoire, circuits dhorloges,
etc) et les cartes filles dextension correspondant chacune une application dtermine.
Le schma de la carte mre dun compatible PC, par exemple, reprend la structure de
base dun ordinateur donne au paragraphe I. On y remarque un certain nombre de slots ou
bus pour y enficher des cartes filles dextension, et des connecteurs relier des prises
externes par des nappes de fils pour connecter des priphriques. Sur certaines cartes mres
(Xcel2000_ATX par exemple) les nappes ont tendance tre supprimes, et les prises
externes sont directement montes sur la carte mre.
Il ny a quun nombre limit de constructeurs de cartes mres dans le monde, et la
technologie des cartes volue trs rapidement. On remarque ainsi que plusieurs fonctions
assures auparavant par des cartes filles dextension, sont devenues des standards et sont
maintenant intges la carte mre:
-
la fonction modem (carte fax modem) pour la tlphonie et la fonction rseau (en
gnral au standard ethernet), ne sont pas encore intgres 100% lheure
actuelle. Mme si lessentiel de ces fonctions est intgr, il subsiste quand mme
de petites cartes enfiches directement sur la carte mre dans des ports spcifiques.
-10-
-1-BUS DEXTENSION
Les slots ou bus dextension que lon peut rencontrer sur la carte mre dun PC sont:
ISA: de couleur noire, c'est une extension du bus systme pour connecter des cartes filles
dextension. Il peut tre 8 bits ou 16 bits de donnes, et travaille la frquence de 8
mgahertz. La frquence du bus d'extension est diffrente de celle du bus systme.
EISA: identique au prcdent, il arrive 11 mgahertz, mais prsente lavantage majeur de
travailler avec un bus de donnes 32 bits, do un fort gain en vitesse.
PCI: de couleur blanche, il joue le mme rle que le bus ISA, avec lavantage de travailler
la frquence du bus systme de la carte mre (comprise entre 66 et 133 MHz).
BANK RAM ou BUS MEMOIRE: de couleur noire, ce sont les slots du bus mmoire, pour
enficher les barrettes de mmoire ram. Ces slots sont diffrents en fonction de la
technologie de la mmoire: Simm, Dimm, Edo,Rdr. Par exemple la carte mre TXpro2
possde des slots pour les mmoires Simm et Dimm.
VESA et AGP: de couleur marron, ils permettent de connecter des cartes d'applications
graphiques.
SOCKET OU BUS PROCESSEUR: On rencontre gnralement trois types de supports (ou
sockets) pour enficher le processeur dont la frquence varie aujourdh'ui entre 500 MHz et
1GHz, certaines cartes mres en possdant deux de types diffrents:
-le socket 7: support carr et de couleur marron, il est destin aux processeurs "bas de
gamme" (486DX, pentium, cyrix,amd586). On le rencontre gnralement sur des cartes
mres dont le bus systme a une frquence de 66MHz;
-le socket SLOT1: de couleur marron galement, il a une forme longitudinale et reoit "la
carte processeur", sur laquelle se trouvent le processeur, de la mmoire cache de niveau1 et
des composants d'adaptation. Il a t invent spcialement pour les processeurs pentium II et
PIII. Il quipe gnralement les cartes mres dont le bus systme a une frquence de 100MHz.
-le socket PGA 370: galement de forme carre il a une couleur blanche qui le distingue du
socket7. Il est destin recevoir des processeurs Intel-Celeron et des AMD_K6. Actuellement
les recherches d'Intel s'orientent vers ce support pour en faire un bus processeur universel.
Certains processeurs PIII de nouvelle gnration sont destins tre enfichs sur ce support.
-11-
-2-CONNECTEURS DINTERFACE
-12-
ISA1
ISA2
ISA3
SUPPORT
CPU
ALIM2
-13-
-14-
-12-
-I-1- Principe
Tout nombre N crit dans une base b peut se mettre sous la forme:
N (b) ( N ) b = a n b n + a n1b n1 + a n 2 b n 2 + ...... + a 0 b 0 + a 1b 1 + a 2 b 2 ...... + a n b n
partie entire
partie fractionnaire
-2-1-a- Codage: il sagit de transcrire un nombre N exprim en base dix dans une base
b quelconque. La mthode consiste procder par divisions successives par la base, on
s'arrte quand le dernier quotient est nul. Le rsultat sera donn par les restes successifs
obtenus dans l'ordre, en les crivant de droite gauche en fonction des puissances croissantes
de la base, selon la formule suivante (o n est le nombre de divisions et les Ri les restes
successifs) :
( N )b = Rnb n 1 + Rn 1b n 2 + Rn 2b n 3 + ...... + R1b 0
R6 R5 R4 R3 R2 R1
(44)10
(1 0 1 1 0 0)2
(543)10
(1037)8
-2-1-b- Dcodage : cela consiste crire un nombre N exprim dans une base b dans la
base dix. Le rsultat est obtenu en appliquant directement la formule donne dans le principe.
Exemple : (300) 8 = ( 3x82 + 0x81 + 0x80 )10 = 3x64 = (192)10
-13-
-2-1-c- Transcodage : il consiste transcrire un nombre N crit dans une base b1 vers
une autre base b2, b1 et b2 tant quelconques.
*Cas gnral: cette mthode est valable quelles que soient les bases b1 et b2. Un
transcodage se fera d'abord par dcodage puis par codage.
Dcodage
Codage
base b1
base 10
base b2
(3)8 = (011)2
(5)8 = (101)2
(7)8 = (111)2
Remarque :
Pour passer du binaire vers une base b1 qui est une puissance de 2 (b1 = 2 n ),
on regroupe les bits n par n pour obtenir N cod dans la base b1.
Exemple :
*Cas du BCD : un cas particulier intressant cest quand la base b1 est gale dix.
Dans ce cas si on applique la mme mthode que prcdemment, chaque chiffre du nombre N
sera cod sur 4 bits. Le rsultat obtenu n'est pas du binaire mais du dcimal cod en binaire
(BCD pour Binary Coded Decimal). Pour marquer la diffrence avec le binaire et viter les
erreurs dinterprtation, on utilise soit une mise entre parenthses avec une indication de la
base, soit on spare chaque groupe de 4 bits par un point.
On remarque que les nombres (10)10 et (10)16 qui correspondent deux valeurs
dcimales diffrentes (10 et 16 respectivement) donnent la mme suite de bits, do lintrt
de les diffrencier.
-14-
-2-2-Nombres fractionnaires
-2-2-a-Dcodage
Pour passer dun nombre fractionnaire N crit dans une base b vers la base 10, il suffit
dappliquer la formule donne par le principe gnral (cf -I-1-).
Exemples :
-2-2-b-Codage
Pour coder un nombre fractionnaire N crit en base 10 dans une base b quelconque, il
faut traiter sparment les parties entire et fractionnaire.
Pour la partie entire il faut procder par divisions successives par la base comme pour
le codage des nombres entiers.
Pour la partie fractionnaire, il faut au contraire procder par multiplications
successives par la base. Les parties entires successives obtenues constituent le rsultat, crit
dans lordre des puissances croissantes de la base.
On arrte les multiplications quand la prcision voulue est obtenue. La prcision dans
la base darrive ne peut pas tre suprieure celle de la base dpart (base10).
Exemple : coder (4,345)10 en base deux avec une prcision de 2-5 (5 chiffres aprs la virgule).
Partie entire : (4)10 = (100)2
Partie fractionnaire : (0,345)10 = (01011)2 .
En effet en procdant par multiplications successives on trouve :
0,345 x 2 = 0,690 partie entire du rsultat gale 0
0,69 x 2 = 1,38 partie entire du rsultat gale 1
0,38 x 2 = 0,76 partie entire du rsultat gale 0
0,76 x 2 = 1,52 partie entire du rsultat gale 1
0,52 x 2 = 1,04 partie entire du rsultat gale 1
Par consquent (4,345)10 = (100,01011)2 .
-15-
-II-1-Nombres entiers
On dit quun ordinateur traite des mots de n bits sil utilise n bits pour coder les
donnes.
Dans ce cas le plus grand nombre non sign (ou plus grande valeur absolue) que lon
peut coder est gal 2n 1 .
-16-
Exemple 2: le tableau qui suit donne pour chaque srie de bits, sa signification dans les trois
techniques de codage des nombres entiers, avec un codage sur 4 bits.
Srie de bits
Equivalent dcimal
Equivalent dcimal
Equivalent dcimal
Techn.valeur absolue
Tech.val.abs.+ signe
Tech.complment 2
0000
+0
+0
0001
+1
+1
0010
+2
+2
----
--
--
--
----
--
--
--
0111
+7
+7
1000
-0
-8
1001
-1
-7
1010
10
-2
-6
----
--
--
--
----
--
--
--
1110
14
-6
-2
1111
15
-7
-1
-17-
-II-2-Nombres fractionnaires
1 bit
Exposant
e bits
Mantisse
m-1 bits
Rserv lextension
de la mantisse
23 bits
Ainsi dans lexemple prcdent, la prcision est gale 2-23 (car mantisse purement
fractionnaire), alors que lexposant en complment 2 cod sur 8 bits varie de 128 (-2(8-1) )
+127 (+2(8-1) 1). Ce qui donne pour valeurs extrmes des nombres Nmin = (- 0,1111). 2-128
et Nmax = (+ 0,1111). 2+127 .
23fois
23 fois
Lintrt de la technique de la virgule flottante est donc double : dune part pour le
mme nombre de bits que pour la virgule fixe, on augmente de manire considrable la
prcision, dautre part le nombre le plus lev que lon peut coder est beaucoup plus grand.
-18-
T O T O 5 9 O U 7 9 , la srie de
-19-
CODE
CODE ASCII
LETTRES
CHIFFRES
BAUDOT
18
41
2D
13
42
3F
0E
43
3A
12
44
--
10
45
33
16
46
--
0B
47
25
05
48
--
0C
49
38
1A
4A
--
H
I
code Lettres
code Chiffres
1E
4B
28
09
4C
29
07
4D
2E
06
4E
2C
03
4F
39
0D
50
30
1D
51
31
0A
52
34
14
53
27
01
54
35
1C
55
37
0F
56
3D
19
57
32
17
58
2F
15
59
36
11
5A
2B
CR (retour chariot)
02
0D
--
LF (saut de ligne)
08
0A
--
SP (espace)
04
20
--
00
--
--
Code chiffres
1B
--
--
Code lettres
1F
--
--
-20-
Code ASCII
Hexadcimal international
Version
Signification
franaise
du symbole
23
ou #
24
$ ou
40
Libre
5B
Libre
5C
Libre
5D
Libre
5E
Ev.libre
60
Ev.Libre
7B
Libre
7C
Libre
7D
Libre
7E
Ev.libre
montaire
degr
paragraphe
micro
trma
-21-
-22-
Remarque :quand la ligne de communication est au repos, elle est ltat logique 1. Ainsi on
peut dtecter une coupure de la ligne de transmission si elle reste ltat logique zro pendant
longtemps. En gnral le bit de start est ltat logique zro (bstart = 0) pour permettre la
dtection du dbut de la transmission (changement dtat par rapport au repos). Quant au bit
de stop il est ltat logique un (bstop = 1) pour ramener la ligne de transmission son tat de
repos (tat logique un), et dtecter ainsi le dbut de la transmission dun nouveau caractre.
Dans tous les cas, lmetteur et le rcepteur dcident dun commun accord du mode de
communication choisi : avec ou sans bit de parit, un ou 2 bits de stop. La transmission
asynchrone (caractre par caractre) standard utilise 8 bits, sans parit, 1 bit start et 1 bit
stop.
1000001
0 .
1000011
0 .
-23-
Solutions
-a-(102)3( ? )10
(11)10
-b-(321)10 ( ?)4
(11001) 4
-c-(543)10 ( ?)8
(1037) 8
-d-(22)16 ( ?) 8
(42) 8
-e-(16)7 ( ?) 3
(111) 3
-f-(7F)16 ( ?) 8
-g-(177)8 ( ?) 16
(7F) 16
-h-(7F)16 ( ?) BCD
-2-2-Nombres fractionnaires
Solutions
-a-DcimalBinaire : (9,375) ( ?)
(1001,011)
(4,345)10 ( ?)
-b-BinaireDcimal : (101,101) ( ?)
(100,01011)2 .
(5,625)
+7,+9,+13,-7,-9,-13
-24-
-4-Nombres fractionnaires
-41-Technique de la virgule fixe : Si on utilise 16 bits pour coder les nombres, dont
12 pour la partie entire et 4 pour la partie fractionnaire, donner la prcision, et les valeurs
Nmin et Nmax des nombres que lon peut coder.
-4-2-Technique de la virgule flottante : Si on utilise 16 bits pour coder les nombres
( 4 pour lexposant et 12 pour la mantisse), donner la prcision, les valeurs Nmin et Nmax des
nombres que lon peut coder.
-25-
-26-
organise en mots, alors que les ordinateurs gnralistes ont une mmoire organise en
octets.
Il existe deux techniques de stockage et de lecture des informations en mmoire :
big endian et little endian .
Pour stocker une donne dans la technique big endian, on commence par lcriture des
bits de poids les plus forts de la donne dans les positions des bits de poids les plus forts de
lemplacement mmoire.
Dans la seconde technique on fait linverse, cest dire quon traite les bits de poids
les plus faibles en premier.
00 --
--
--
--
--
--
--
--
00 --
--
--
--
--
--
--
--
01 a8
a7
--
--
--
a3
a2
a1
01 a8
a7
--
--
--
a3
a2
a1
02 b8
b7
--
--
--
b3
b2
b1
02 b32 b31 --
--
--
b27
b26
b25
03 b16 b15 --
--
--
b11
b10
b9
03 b24 b23 --
--
--
b19
b18
b17
04 b24 b23 --
--
--
b19
b18
b17
04 b16 b15 --
--
--
b11
b10
b9
05 b32 b31 --
--
--
b27
b26
b25
05 b8
--
--
--
b3
b2
b1
06 f8
--
--
--
f3
f2
f1
06 f8
--
--
--
f3
f2
f1
b7
07 g8
g7
--
--
--
g3
g2
g1
07 g8
g7
--
--
--
g3
g2
g1
08 h8
h7
--
--
--
h3
h2
h1
08 h8
h7
--
--
--
h3
h2
h1
09 --
--
--
--
--
--
--
--
09 --
--
--
--
--
--
--
--
-27-
On remarque galement que dans le cas dune mmoire organise en octets, on est
amen regrouper plusieurs emplacements pour reprsenter un nombre ou une chane de
caractres. Ladresse du nombre ou de la chane est celle du premier emplacement quelle
occupe. On dira ainsi que ladresse du nombre b est 02 et ladresse de la chane fgh est 06.
----
----
01
----
00 ----
a8-----a1
01 a8-----a1
----
----
03
04 ----
----
04 ----
----
----
----
----
----
----
On remarque ici galement, que pour le nombre entier cod sur 32 bits, dans le cas
dune mmoire organise en mots de 32 bits, le rsultat est le mme dans les 2 techniques de
codage. Cela confirme bien que chaque organisation de mmoire est mieux adapte pour un
type de donnes.
On observe enfin que dans le cas dune mmoire organise en mots, il y a une perte
despace et un fractionnement de la mmoire: ds quon crit une donne dans un
emplacement mmoire, mme si la donne ne fait quun bit, les bits (de lemplacement)
inutiliss sont perdus et on ne peut rien y crire dautre.
-28-
Mmoire centrale
Systme de stockage
Processeur
Buffers tampons
Bus de commande
Contrleur de mmoire
Bus de donnes
Bus dadresses
-29-
Notion de bus mmoire : cest lensemble des lignes dalimentation de la mmoire, des bus de
donnes et dadresses, et des lignes du bus de commande destines la mmoire. On parle
parfois du temps de cycle du bus (Bus Cycle Time) o tous les lments interviennent, en
particulier la taille du bus de donnes qui joue un rle important. Pour acclrer les
traitements, on rajoute des buffers tampons (registres intermdiaires) au contrleur de
mmoire.
-3-Espace adressable
Si le bus dadresses comporte n bits, on peut donc adresser 2n emplacements mmoire
(chaque emplacement faisant un octet ou un mot). Lespace adressable est alors de
2n adresses.
-a-Espace dadresses physique et capacit de la mmoire centrale
Le processeur dpose sur le bus dadresses l'adresse physique (ou relle) de la donne.
Cette adresse correspond soit un emplacement en mmoire centrale, soit une adresse
d'unit d'entre/sortie.
Si le bus dadresses est rserv uniquement la communication entre le processeur et
la mmoire centrale, toute adresse sur le bus est une adresse mmoire. Si d'autres units sont
connectes sur le mme bus on distingue deux cas:
- soit c'est la valeur mme de l'adresse qui indique s'il s'agit d'une adresse mmoire ou d'une
adresse externe (par exemple adresses hautes pour E/S et basses pour la mmoire),
-
soit une ligne spciale du bus indique la nature de l'adresse transmise: adresse mmoire ou
adresse d'entre/sortie (par exemple bit = 0 pour adresse E/S et 1 pour adresse mmoire).
Espace de mmoire
Espace
dentre/sortie
limite
de
lespace
adressable
mmoire
centrale.
On
utilise
de
Deuxime
cas :
les
adresses
lespace
adressable
-30-
oprande ou Signification
adresse
lire_a
Si E est vrai, aller lire_a
a_prt
SAUT
lire_a :
ENTREE
STOCKER
ENTREE
STOCKER
FIN
Aller a_prt
Lire a sur le priphrique dentre
Mettre a en mmoire
Lire b sur le priphrique dentre
Mettre b en mmoire
-31-
emplacements
mmoire
0
1
numros de
pages (ou
segments)
0
Ladresse de lemplacement mmoire qui
contient la donne 5F est (1,2) : numro de
page (ou segment) suivi de loffset.
0
1
2
5F
3
0
1
2
---
----
-32-
Mmoire
Interne
Trs Rapide
adresses
donnes
Petite
Mmoire
Rapide
adresses
donnes
Grande
Mmoire
Lente
-33-
-34-
-c-Mmoire Virtuelle
Cette technique permet de rsoudre le problme de taille physique de mmoire ram
infrieure lespace dadresses logiques (cas des gros programmes et de petite ram).
On place tout ou une partie de lespace adressable sur disque. Les programmes de
lutilisateur ne sont plus limits par la taille de la ram, mais par lespace disponible en
mmoire de masse. On peut dire que la ram se comporte comme une antmmoire pour la
mmoire virtuelle sur disque.
Associe la pagination, la technique de la mmoire virtuelle consiste changer
dynamiquement des pages entre la mmoire virtuelle (espace dadresses logique) et la
mmoire centrale (espace physique), et cela en fonction des besoins du programme en cours
dexcution. Ces changes de pages sont effectus par un programme appel gestionnaire de
pages.
La stratgie dappel de page la demande sappelle swapping. A chaque appel une
adresse logique du programme, on vrifie dabord si la page qui contient ladresse physique
correspondante se trouve en mmoire centrale, en faisant appel au buffer ou tampon de
traduction dadresses. Si oui on peut continuer lexcution du programme. Si non, on dit
quil sest produit un dfaut de page (page fault). Le systme de mappage mmoire envoie un
signal dinterruption au processeur (le processeur sarrte de travailler), et lexcution du
programme est alors suspendue, en attendant que le gestionnaire de pages ramne la page
demande de la mmoire virtuelle vers la ram. Le processeur est ensuite de nouveau activ
pour quil continue lexcution du programme.
Contrairement au cas de la mmoire cache, la nouvelle mmoire (mmoire virtuelle)
est ici plus lente que la mmoire ram. Par consquent on a un ralentissement des traitements.
On peut quantifier le ralentissement introduit par la technique de mmoire virtuelle
(associe la pagination). Considrons par exemple une mmoire ram de temps de cycle
500ns, et un tampon de traduction dadresses de temps de cycle 100ns, et un disque dur de
temps de cycle 20 ms. Si on suppose que le taux de russite est de 80%, cest dire que 8 fois
sur 10, quand le processeur veut accder une donne, il accde au tampon o la traduction
de ladresse logique lui fournit une adresse physique en ram ; il accde alors la donne en
ram. Dans les 20% des cas qui restent, l'adresse logique ne possde pas d'quivalent physique
en ram (la donne n'est pas en ram). Il accde alors au disque dur (mmoire virtuelle) pour
transfrer vers la ram le bloc de donnes (une page) contenant la donne cherche (voir dtails
du mcanisme l'exercice 13 du chapitre 3).
-35-
Ainsi le temps daccs moyen une donne en mmoire centrale ou temps de cycle
apparent sera gal : 0,8 (100 + 500) + 0,2 (100 + 20000 + 500) = 4600 ns. On remarque que
la vitesse sest dgrade considrablement et la perte relative de vitesse est gale 8,2 soit
820% (|500 4600|) / 500 = 8,2). La vitesse a t divise par un coefficient suprieur 8.
Exemple : dans le schma qui suit, on a ralis une mmoire de un mgaoctets laide de 16
modules ou botiers mmoire de 64k x 1 octet (64 k emplacements mmoires de 1 octet
chacun), chaque botier tant muni dune ligne de slection CS (Chip Select).
-Chapitre 3 : Les mmoires-
-36-
D0
D1
D7
Module 0
64K
x
1 octet
CS0
CS1
Module 1
64K
x
1 octet
CS15
Module 15
64K
x
1 octet
Dcodeur
4 vers 16
A19
A18
A17
A16
A15
A1
A0
-37-
-a-Support et conditionnement
Le support est constitu dun disque en matire souple, le plus souvent du mylar,
recouvert dune fine couche de matire magntisable. Si les deux surfaces du disque sont
utilisables, on parle de disquette double face (il faut alors deux ttes de lecture/criture).
On fait souvent suivre le terme gnrique (disquette) du diamtre exprim en pouces :
8, 5 , 3 . Le format standard le plus rpandu est le 3 .
Protection
contre
lcriture
Disque souple
Trous
dentranement
(au verso du
botier)
Botier rigide
Ouverture pour
la tte de
lecture/criture
Dplacement
du volet pour
fermeture
(par ressort
de rappel)
Volet coulissant
(en position
ouverte)
Disquette 3
-b-Formatage
La surface de la disquette est divise en cercles concentriques constituant des pistes
( track), dont le nombre moyen avoisine la centaine. Les pistes sont numrotes et possdent
donc une adresse physique. La densit radiale sexprime en pistes par pouce : tpi (track per
inch). Les valeurs courantes sont 48, 96 et 135 tpi. Prcisons toutefois que les pistes ne sont
pas matrialises physiquement, il sagit simplement dun partage logique; cest pourquoi on
peut reformater une disquette.
-38-
Chaque piste est constitue du mme nombre de cellules mmoire. Ce nombre dpend
de la densit longitudinale exprime en bits par pouce : bpi (bits per inch). Cette valeur varie
de 300 10000 bpi. Lenregistrement se fait en simple, double ou quadruple densit. Le
format le plus courant est la haute densit (HD).
Le dbut des pistes concide avec le rayon passant par le trou dindex, ce trou est
dtect par un capteur optique.
Chaque piste est divise en secteurs ou blocs. Les secteurs dune mme piste sont
donc numrots, ce qui permet de dfinir leurs adresses. Deux secteurs conscutifs sont
toujours spars par un espace appel espace inter-blocs (zone blanche sur la figure), dont le
contenu ne peut pas tre confondu avec une donne. Le contenu dun secteur est constitu de
deux parties : un entte qui contient des informations de service (adresse de la piste, adresse
du secteur lintrieur de la piste) et les donnes proprement dites. La taille dun secteur
varie gnralement de 128 512 octets. Le nombre de secteurs par piste varie de 8 28.
Le nombre de pistes par surface, la longueur moyenne dune piste, et la densit
longitudinale, dterminent la capacit brute ou non formate dune disquette.
La capacit brute ou non formate dune disquette est le produit :
Capacit brute/ face = Nombre pistes /face x Nombre secteurs /piste x Capacit dun secteur
Le formatage consiste donc inscrire magntiquement sur la surface vierge du disque,
la structuration en pistes et secteurs. Il sagit essentiellement dcrire les espaces inter-blocs et
des informations de service dans les enttes. En raison des espaces inter-blocs et des
informations de service, la capacit formate est donc infrieure la capacit brute ou non
formate dune disquette.
espaces
inter-blocs
entte
(zone de service)
secteur
zone de
donnes
pistes
Disquette formate
-39-
Densit
Nombre de
Nombre de
Taille dun
Densit
Capacit
pistes/face
secteurs/piste
secteur
radiale
disquette
(en octets)
( en tpi)
Simple
40
512
Double
40
512
48
360 Ko
Double:3 80
512
96
720 Ko
Haute :5 80
15
512
Haute :3 90
16
512
1,2 Mo
135
1,44 Mo
Zone
utilisateur
( partir du
cluster deux)
Cluster
zro
Cluster
un
Boot
area
FAT
Copie FAT
File
directory
La notion de secteur ou bloc trouve son importance dans le fait que cest la plus petite
unit dchange de donnes. Pour les fichiers lunit dallocation et de stockage est appele
cluster. Un cluster peut contenir 1, 2, 4 ou 8 secteurs.
Dun point de vue logique, les donnes enregistres sur une disquette sont organises
en fichiers, auxquels sajoutent des informations de service :
-nom de la disquette (volume), date de premire utilisation, nombre de secteurs libres,
-rpertoire des fichiers rsidents sur la disquette,
-pointeurs sur les secteurs appartenant un mme fichier.
-40-
On admet gnralement que quand on veut lire une donne sur une disquette, pour trouver
la bonne piste il faut parcourir 1/3 des pistes. De mme une fois quon a trouv la piste, pour
accder au bon secteur, on parcourt en moyenne la moiti de la piste (1/2 tour). Une fois que
cest fait, il faut alors dposer la tte de lecture/criture sur le support.
Par consquent le temps de positionnement moyen de la tte sur une donne (ou temps de
lecture dun secteur) est gal la somme de trois termes:
Temps daccs moyen la piste + temps de recherche du secteur + temps de dpt de la tte.
Exemple : Si on utilise les valeurs moyennes, et quon dsigne par A, B, C les 3 termes, on
dsire calculer le temps de transfert (lecture) dun fichier de 1920 caractres cods sur 8 bits.
-41-
Remarque:
On observe que ce dbit thorique, gnralement mis en avant par les publicits
commerciales, est trs loin du dbit rel ou utile qui tient compte de tous les paramtres
(recherche de la piste et du secteur, et dpt de la tte sur les pistes).
-42-
axe de
rotation
plateau
daluminium
recouvert dune
fiche couche
magntisable
2 faces du
disque ou
plateau
ttes de
lecturecriture
servosurface
face de
protection
peigne
-43-
-44-
Exemple 2 : considrons un fichier de 1920 caractres cods sur 8 bits, stock sur un disque
dur tournant la vitesse de 6000 tpm. Tous les secteurs du fichier sont stocks sur un mme
cylindre, et chaque piste comprend 40 secteurs. Chaque secteur a une taille de 1024 bits dont
64 bits sont rservs des informations de gestion (un pointeur vers le secteur suivant).
-a-
-b-
Vr = 6000 tr/mn = 100 tr/s il faut 10 ms pour faire un tour, soit 10 ms pour lire 40
secteurs il faut 0.25 ms pour lire un secteur.
-c-
Le temps moyen de positionnement sur le bon secteur (une fois que la piste est
trouve) correspond en moyenne au temps pour faire tour (on parcourt la moiti des
secteurs de la piste), soit 5 ms.
-d-
Le temps moyen de transfert dun secteur est gal au temps de recherche du secteur
plus le temps de lecture du secteur, soit 5.25 ms.
-e-
Comme tous les secteurs sont sur un mme cylindre, on na pas besoin de changer de
piste donc de cylindre. La recherche du cylindre ou de la piste se fait donc une seule
fois, sa dure est gale 20 ms.
-f-
-g-
Remarques :
-1-On observe que pour le transfert dun secteur de donnes, on passe 20 fois plus de
temps trouver le bon secteur qu lire le secteur proprement dit (5ms contre 0,25 ms). Il est
donc intressant de stocker les donnes dun fichier qui sont sur une mme piste sur des
secteurs contigus.
-2-La recherche dun cylindre (ou dune piste) prend 4 fois plus de temps que la
recherche dun secteur (20 ms contre 4 ms). Il est donc plus intressant de stocker les donnes
dun fichier sur un minimum de cylindres, pour conomiser les dplacements entre pistes.
-3-On remarque que pour le mme fichier stock peu prs dans les mmes conditions
sur un lecteur de disquettes, la transfert du disque dur est environ dix fois plus rapide par
rapport la disquette (dure 10 fois plus courte).
-4- Grce aux progrs technologiques, les densits radiale et longitudinale sont de plus
en plus grandes, et on a tendance diminuer le nombre de plateaux (de 2 4) et augmenter
le nombre de ttes par face (jusqu 32), ce qui augmente les taux de transfert.
-45-
-46-
Certaines units rcentes permettent lexploitation aussi bien en mode continu, quen
accs slectif aux donnes enregistres. Par ailleurs lvolution technologique aidant, on a de
en plus tendance remplacer les bandes isoles par des cartouches de plus petite taille, o les
deux bobines et la bande sont enfermes dans un support en plastique comme pour les
cassettes audio.
Compte tenu de lvolution technologique et de la capacit de plus en plus grande des
supports de stockage sur disque amovible du type disque compact (de lordre de la vingtaine
de gigaoctets), on sachemine terme vers le remplacement de la bande magntique par le
support en plastique car le stockage des donnes est plus fiable en raison de lutilisation du
laser (pas de contact entre le la tte de lecture et le support), et la dure de stockage garantie
peut aller jusqu 50 ans.
a-2-Les lecteurs de cartouches :
Toutes les solutions proposes sont des solutions propritaires , cest dire
que ce sont des technologies propres chaque constructeur et quil ny a pas de norme
standard. Cependant quatre acteurs principaux (Fujitsu, Castlewood, Iomega et Imation)
mergent et se battent pour imposer leur technologie comme standard. Toutefois, en raison de
leurs capacits, la plupart des solutions sont destines un usage personnel (pour remplacer le
lecteur de disquettes de 1,44 Mo), et bien peu sont destines un archivage intensif de
donnes au sein dun groupe de travail.
La technologie magntique est utilise par IOMEGA, depuis dj plusieurs annes,
avec ses lecteurs de cartouche ZIP et JAZ. Les cartouches ZIP sont lues par des lecteurs
diffrents en fonction de la capacit (100 ou 250 Mo). Quant aux cartouches JAZ, elles sont
plus grandes (format 5 1/4 ) et permettent de stocker jusqu 2 Go. Enfin les cartouches
Click ! renferment un mini-disque mtallique (50 x 55 mm) de 40 Mo, qui est une solution
pratique pour linformatique mobile (portables, appareil photo, camescope). Aucun de ces
lecteurs ne permet de lire les disquettes aux anciens formats (1,44 Mo).
Comme les disques durs, les appareils de chez ORB utilisent la technologie magntorsistive, avec des supports pouvant atteindre une capacit de 2,2 Go.
La technologie laser-servo utilise par Imation permet de stocker 120 Mo sur une
cartouche (ce qui est largement suffisant pour une sauvegarde ponctuelle), tout en conservant
la compatibilit avec les supports existants de 1,44 Mo ou 720 Ko. Elle utilise une
mcanique dorigine Matsushita qui supporte des mdias au format disquette classique ou
cartouche.
-Chapitre 3 : Les mmoires-
-47-
technologie est improprement appele magntique car les informations sont crites et lues par
un laser. Dun point de vue technique les donnes sont stockes sur un disque magntooptique (enferm dans une cartouche) en changeant la polarit de la couche denregistrement.
Tourn dans une direction, le ple nord de la charge magntique quivaut un 1 ; tourn
dans lautre il quivaut un 0 . Si la fiabilit des donnes est ingale et les disques
certifis pour une longvit suprieure 30 ans (car lenregistrement se fait au moyen dun
laser contrairement lenregistrement magntique o la tte de lecture est en contact direct
avec la cartouche), les performances sont cependant infrieures celles des dispositifs
magntiques.
Le lecteur de disque optique numrique effaable PD de matsushita est trs peu
diffrent du lecteur magnto-optique de Fujitsu. Apparu il y a environ cinq ans, ce lecteur
enregistreur utilisait des cartouches de 250 640 Mo. Il avait la particularit de pouvoir lire
galement les cd-rom classiques de taille 640 Mo.
-48-
CD-DA ou CD-audio : anctre de tous les cd, il permet denregistrer 74mn de musique en
stro, avec une rsolution 16 bits, une frquence d'chantillonnage maximale de 44,1 khz.
CD-texte : il sagit dune amlioration apporte par sony au format cd-audio. En plus des
pistes de son, diverses informations (les titres des morceaux, le nom des interprtes, etc..) sont
enregistres. Ce format nest pas encore reconnu par tous les graveurs, ni par tous les
logiciels, et peu de platines de salon sont en mesure de le lire.
CD-extra : la premire partie (ou session) contient de la musique et peut donc tre lue par un
lecteur de cd-audio. La deuxime partie qui contient des donnes informatiques (paroles de
chansons, photos,) ncessite un lecteur de cd-rom pour tre lue.
Une session sur un cd est un ensemble de donnes (informatiques, audio ou vido)
dlimit par une plage (un espace sans donnes) de dbut et une plage de fin. Ces plages
gaspillent 15 Mo despace environ.
CD-rom xa : ce format permet de mlanger son, squences vido et donnes informatiques. Il
est lorigine de lexplosion du multimdia dans le monde du PC. Il permet de stocker au
maximum 650 Mo de donnes (au format ISO9660), tendu aprs jusqu 800 Mo.
CD-vido : il contient environ 75 mn de squences vido comprimes au format MPEG-1
(352 x 288 pixels, 25 images par seconde). Au format vido MPEG-2, on peut stocker une
douzaine de minutes dimages de haute qualit (mais ncessit dune carte de dcodage).
CD-R et CD-RW : la diffrence des cdR (compact disc recordable) qui ne peuvent tre
gravs quune fois, les cd-RW (rewritable) peuvent tre gravs jusqu 1000 fois. Un graveur
de cd-rw peut crire des cd-R (alors que linverse nest pas vrai). Les CD-R doivent tre
gravs avec une vitesse infrieure 6X, et les CD-RW avec une vitesse infrieure 6X. Au
del il faut utiliser des CD prvus pour la gravure grande vitesse.
CD-photo : format invent par kodak permettant de stocker jusqu 100 photos de trs haute
rsolution (3072x2048 pixels).
-49-
650 MB
Donnes
Espace libre
Piste 1
Session 1
Dbut
Fin
Exemple: CD audio
0
650 MB
Audio
Audio
Audio
Audio
Piste 1
Piste2
Piste 3 Piste 4
Audio
Audio
Audio
Espace libre
Session 1
Dbut
Fin
Remarque: les zones de dbut et de fin ne font pas partie des donnes, mais contiennent des
informations sur la session.
Track-at-once (TAO)
Ce mode est utilis lors de l'criture de donnes sur un disque piste par piste. D'autres
piste peuvent tre ajoutes par la suite s'il reste suffisamment d'espace sur le disque. C'est
pourquoi le mode track-at-once est quelquefois appel Multisession.
0
650 MB
Donnes
Donnes
Donnes
Piste 1
Piste2
Piste 3
Session 1
Dbut
Session 2
Fin/Dbut
Session3
Fin/Dbut
Espace libre
Fin
-50-
Remarque: Seule la premire session d'un disque multisession peut tre lue sur un lecteur de
Cd audio conventionnel (lecteur de salon ou balladeur). Les disques monosession sont lus
intgralement.
Session-at-once (SAO)
Ce mode est utilis lors de l'criture de chaque session en une seule fois et sans pause.
D'autres sessions peuvent tre ajoutes par la suite s'il reste suffisamment d'espace sur le
disque.
0
650 MB
Audio
Audio
Audio
Piste 1
Piste2
Piste 3
Donnes
Session 1
Session 2
Dbut
Espace libre
Fin
Remarque: avec les CD-Extra, l'audio est crit lors de la premire session, et les donnes lors
de la deuxime. 99 pistes au maximum peuvent tre crites.
Packet Writing
Ce mode est utilis lors de l'criture, sur la piste d'un disque, de petits blocs de
donnes appels paquets, comme pour les disquettes ou les disques durs. Ce mode est utile
lorsqu'on fait de petites sauvegardes incrmentales de donnes. Il faudra pour cela utliser un
logiciel supportant expressment le mode criture par paquets (comme le Direct CD de la
firme Adaptec par exemple).
1
Paquet
Remarque: les disques doivent tre formats avant de pouvoir tre utiliss pour l'criture par
paquets. Avec les CD-RW, les donnes effaces peuvent tre remplaces tant que le disque
n'est pas plein. Avec les CD-R, l'espace utilis par les donnes effaces ne peut tre rutilis,
et il est masqu de manire ne plus tre visible.
-51-
Lecteurs de dvd :
Les lecteurs de deuxime ou troisime gnration sont multiread , cest dire quils
permettent de lire les dvd-rom et dvd-vido, ainsi que les cd-rom et cd-audio. Ils sont presque
tous la norme atapi (standard de transfert de donnes pour les priphriques, qui sont
automatiquement reconnus par lordinateur) et peuvent donc tre branchs sur un connecteur
EIDE, SCSI, USB ou parallle dun ordinateur. De la mme manire que pour les cd-rw, la
compatibilit avec le format UDF (universal disc format ) permet de lire et dcrire des
donnes sur un mdia par simple glisser/dplacer de la souris.
La dcompression dun fichier mpeg-2 est effectue par un circuit spcialis qui
reconstruit les squences dimage et les convertit en signaux vido. Il faut donc, en plus du
lecteur de dvd, une carte de dcompression mpeg-2 brancher sur un bus PCI de lordinateur.
Toutes les cartes mpeg-2 sont munies dune entre vido ( relier la sortie svga de la carte
graphique de lordinateur), dune sortie svga ( relier au moniteur) et dune sortie s-vido (
relier un tlviseur). Quant la partie son, elle dispose galement dune entre marque cd
( relier la sortie son du lecteur de dvd), et dune sortie marque audio ( relier lentre
audio de la carte son).
Dvd-rom : en simple ou en double face, il permet une capacit de 4,7 17 Go. On peut
y stocker tout document numris (logiciels, texte, vido compresse au format mpeg-2).
Dvd-vido : il permet de stocker des squences vido numrises au format mpeg-2,
qui est le premier procd de compression vido numrique en qualit broadcast
(conforme aux exigences de la qualit de diffusion tv ). On peut y stocker au moins un film de
135 mn avec la bande son en stro en plusieurs langues, ou la bande son dvd , cest dire
simultanment en trois formats diffrents : stro de base (accessible toutes les cartes son
-Chapitre 3 : Les mmoires-
-52-
standards), mpeg-2, et enfin AC3. Le format AC3 autorise huit bandes son distinctes par
squence, car on utilise la technique de codage du son dite multivoies (ou norme 5.1), o
chacun des huit canaux numriques est indpendant des 7 voisins. On peut ainsi reconstituer
la bande son en qualit cinma , par lintermdiaire de six (5+1) hauts parleurs : gauche,
droit, central, surround gauche, surround droit, et enfin le caisson de graves extrmes pour les
effets sonores complexes (chocs et explosions).
Lecteurs enregistreurs de dvd :
Le dvd ram est fabriqu depuis au moins 3 ans alors que les autres dvd commencent
peine apparatre sur le march. Il est remarquer que pour les dvd +rw lappelation dvd a
t refuse par le dvd forum .
Si aujourdhui chaque groupe de constructeurs propose ses dvd avec une capacit
propre, dans une anne les dvd rinscriptibles disponibles sur le march auront une capacit
normalise de 4,7 Go par face (soit 9,4 Go en double face).
DVD R : il est conu pour tre enregistr seulement une fois. Cest le successeur
naturel du cd-R. Actuellement de capacit 3,95 Go, les dvd de 4.7 Go attendent leur
normalisation. Le premier fabricant avoir propos ce type de support la fin de l'anne 1999
est Pioneer.
DVD RAM : soutenu par trois constructeurs japonais (hitachi, toshiba et matsushita)
runis sous la marque panasonic, ce support a une capacit de 2, 6 Go par face en simple
couche et 5,2 Go en double couche. Un dvd ram est constitu de deux couches de mtal
recouvertes dune enveloppe en plastique, le tout enferm dans une cartouche en plastique
rigide. Lcriture dune donne se fait par un laser qui chauffe le mtal environ 600c, un
deuxime laser plus faible chauffe la surface 200c pour modifier les donnes.
Cest une technologie particulire dans la mesure o les disques sont enferms dans
une cartouche et que lon utilise la technique dite de changement de phase (semblable celle
des disques magnto optiques ?). Les cartouches de type II (2,6 Go) permettent lextraction du
disque de sa cartouche pour tre lu sur un lecteur de dvd rom de la prochaine gnration.
Actuellement un dvd ram ne peut pas tre lu sur un simple lecteur de dvd rom ou dvd vido,
en raison de la faible rflectivit due au changement de phase, ainsi qu' la structure physique
du mdia. La prochaine gnration de lecteurs de dvd rom est prvue pour lire les dvd ram.
Les lecteurs enregistreurs de dvd ram permettent de lire tous les disques antrieurs :
Cd rom, cd vido, cd r/w, cd audio, dvd rom, dvd vido, et cartouches PD de Matsushita.
-Chapitre 3 : Les mmoires-
-53-
DVD +RW : Bien que non reconnu par le dvd forum, ce format qui propose
actuellement des disques de 3 Go (bientt 4,7 Go) est soutenu par un groupe dindustriels
puissants et influents (Sony, Philips, Mitsubishi, Hewlett-Packard, Yamaha, Ricoh ...), qui
contrlent les trois quarts du march du Cd-RW. Ce support a t conu comme successeur du
cd-RW.
DVD RW : propos par pioneer, ce format a t retenu par le dvd forum (il y a un an
et demi) comme successeur possible du dvd ram. Non encore disponible sur le march, il aura
une capacit de 4,7 Go par face et sera compatible avec le parc de lecteurs existant.
-54-
Disques
TABLEAU DES
COMPATIBILITES
DVD-
DVD
Rom
Vido
Capacit 4,7 17
CD & DVD
Contenu
Lgende :
Lecture
Lecture gravure
DVD-R
DVD-
DVD-
CD-
CD-
Ram
RW
Rom
Audio
0,65
0,65
7,9
5,2
Donnes
Vido
Donnes
en lecture
Mpeg-2
en gravure en
en
en
en
en lecture
simple
gravure
lecture
lecture gravure
gravure
Taux
CD-RW CD-
CD-Extra
Vido
4,7 17
multiple multiple
Lecteurs
CD-R
0,65
0,65
0,65
simple
0,65
Audio
et
en
Mpeg-1
donnes
gravure
en lecture
en lecture
multiple
de Temps
transfert
daccs
DVD-Rom 2X
4,7Mo/s
150ms
DVD-Rom 8X
4,7Mo/s
150 ms
DVDVido
9,8 Mo/s
150 ms
DVD-R
11 Mo/s ?
630 ms ?
DVD-Ram
5 Mo/s
120ms
DVD-RW
n.c
n.c
DVD-Audio
n.c
n.c
CD-Rom 50X
7,5 Mo/s
70 ms
rarement
Rareme
nt
CD-Audio
150 Ko/s
70 ms
CD-R (8 X)
1,2 M0/s
120 ms
CD-RW (4 X)
600 Ko/s
120 ms
-55-
-56-
-57-
EXERCICE 14 :
On considre maintenant un systme de mmoire virtuelle bas sur la pagination. La
table des pages est en mmoire centrale (ram). De plus lordinateur possde un tampon de
traduction dadresses et une mmoire cache. Donner les diffrentes squences daccs aux
mmoires qui peuvent tre ncessaires, ainsi que quelques squences qui ne se produiront
jamais, sachant que :
- si une traduction dadresse de page est dans le tampon de traduction, alors la page est
prsente en mmoire centrale ;
- si un bloc de mmoire est dans la mmoire cache, alors la traduction dadresse de sa page
est obligatoirement dans le tampon de traduction ;
- dans la table des pages se trouvent toutes les adresses de pages virtuelles se trouvant en
ram.
EXERCICE 15:
Une unit de disque dur possde 4 plateaux (disques) ayant les caractristiques
suivantes: une tte de lecture/criture par disque, une seule tte fonctionne une instant
donn, 600 pistes par disque, 512 octets par secteur, vitesse de rotation de 3000 tours par
minute.
1 Quelle est la capacit de stockage de l'unit de disque?
2 Quel est son taux de transfert?
3 Quel est le temps de transfert d'un secteur ?
EXERCICE 16:
On veut calculer le temps moyen de transfert en mmoire centrale d'un fichier
squentiel stock sur disque dur. Les changes entre l'unit de disque et la M.C. s'effectuent
par l'intermdiaire d'un canal. Une zone de mmoire tampon associe au disque reoit les
caractres lus sur le disque; le transfert vers la M.C. s'effectue soit quand la zone tampon est
pleine, soit quand le fichier a t entirement lu. Les caractristiques sont les suivantes:
Temps moyen de positionnement de la tte de lecture/criture sur une piste: 20 ms; *Temps
de dpt ou de soulvement de la tte de lecture criture: 5 ms ; * Vitesse de rotation du
disque: 6000 tr/mn; *Vitesse de transfert du canal: 10 Mo/s; * Taille du tampon: 5000 octets;
* Taille du fichier 3000 caractres; *Codage d'un caractre: 8 bits; *Tous les caractres du
fichier sont sur un mme cylindre; *Nombre de cylindres: 128; *Nombre de secteurs par
piste: 50; *Taille d'un secteur: 1024bits dont 24 sont reservs pour un pointeur vers le secteur
suivant.
1Quel est le nombre de secteurs ncessaire au stockage du fichier?
2Quel est le temps moyen pour lire un secteur, en supposant que la tte est sur la
bonne piste?
3Quel est le temps moyen de transfert de ce fichier entre le disque dur et la M.C. ?
4 Mme question que 3 si le fichier a une taille de 6000 caractres.
5Mme question que 3 si le fichier de 3000 caractres est stock sur 3 cylindres
diffrents
6Mme question que 3 si le fichier de 3000 caractres est toujours stock sur 1 seul
cylindre, et la taille du tampon est de 500 octets.
-58-
V1.1
Hamdi Hocine
moindre lorganisation interne des diffrents composants quand il doit effectuer une
programmation en assembleur. Seul lutilisateur devant effectuer une conception ou une
ralisation matrielle peut sintresser aux deux autres aspects.
2Principe du processeur
Lunit centrale est la fois le cur et le cerveau de lordinateur. Elle est constitue du
processeur central de traitement (CPU : central processing unit) et de la mmoire centrale. Les
donnes traiter et les programmes excuter par le processeur sont stocks en mmoire
centrale. Le processeur est capable dinterprter (dcoder) et dexcuter les instructions des
programmes.
Compte tenu des progrs de la technologie VLSI (very large scale integration) qui a
atteint des degrs dintgration trs levs (plusieurs millions de transistors sur un centimtre
carr), on a pu intgrer dans le processeur beaucoup de composants qui auparavant taient
raliss part (coprocesseur arithmtique, mmoire cache de niveaux 1 et 2, module de calcul
3D,). On obtient donc en bout de course une trs forte miniaturisation, do le nom de
microprocesseur.
On a lhabitude de distinguer lintrieur du cpu plusieurs units fonctionnelles qui
nont pas obligatoirement une existence physique. On distingue trois entits (ou groupes
dlments) :
-59-
V1.1
Hamdi Hocine
-lunit arithmtique et logique (ALU) qui effectue les diffrents traitements : oprations de
test, oprations arithmtiques, oprations logiques ;
-lunit de contrle ou de commande (CU) qui est le vritable chef dorchestre de
lordinateur. Cest elle qui va chercher successivement les instructions dans la mmoire, les
interprte (dcode), et selon le rsultat de cette interprtation, ordonne lalu et aux autres
organes (mmoire centrale, units dentre sortie, lments du processeur) deffectuer chacun
le travail qui le concerne (en leur envoyant des signaux par activation des lignes physiques
ncessaires), pour obtenir le rsultat final qui est la bonne excution de linstruction.
Il est remarquer que lutilisateur na pas du tout se proccuper du travail de lunit
de commande;
-les registres qui constituent la mmoire locale et prive de niveau zro du processeur (la
mmoire cache interne du processeur constituant le niveau 1). Ce sont des units de
mmorisation trs rapides et de capacit limite et fige appele longeur du registre. Ils
servent essentiellement la mmorisation temporaire des informations, et certains comme le
compteur ordinal (PC : Program Counter) ou le le pointeur de pile (SP : stack pointer) ont une
fonction bien prcise. Nous ntudierons que les registres accessibles lutilisateur par
programmation.
Les informations circulent lintrieur du processeur sur des bus internes. Ces
derniers sont relis aux bus de donnes et dadresses de lordinateur par le biais de deux
registres particuliers appels buffers de donnes et dadresses, qui ont la mme taille que les
bus respectifs auxquels ils sont relis.
Les registres sont regroups sur le dessin (figure 4-1) de manire fonctionnelle. Dun
cot les lments qui interviennent directement dans les oprations arithmtiques ou
logiques : lunit arithmtique et logique (ALU), laccumulateur (ACC) et le registre des
indicateurs (PSW). De lautre ct on trouve les lments qui interviennent directement dans
la lecture et le dcodage des instructions du programme : lunit de commande (CU) et le
registre dinstructions (RI). Au milieu on trouve les registres auxiliaires (R1 Rn) et tous les
registres qui ont une fonction spcifique: le compteur ordinal (PC), le pointeur de pile (SP), le
registre dindex (X), le multiplexeur (qui est reli aux diffrents chemins de donnes et
dadresses).
-60-
V1.1
Hamdi Hocine
BUS DE
DONNEES
BUFFER
DONNEE
Bus interne au microprocesseur
RI
Code partie
Oper. Adresse
MULTIPLEXEUR
X
ACCUMULATEUR
Rn
R1
SP
V
ALU
Dcodeur
dinstructions
PC
N
Z
Squenceur
UNITE DE
COMMANDE
-----
C
PSW
BUFFER
ADRESSE
----BUS
DADRESSES
Signaux de
commande
oprande
mmoire
oprande
ALU
tampon de
sortie
ACC
C V N Z
rsultat
multiplexeur
tampon
dentre
RI
bits 11 0
-61-
V1.1
Hamdi Hocine
4 Les registres
Les registres constituent la seule partie du processeur accessible lutilisateur, on peut
y accder par des instructions machine. On distingue les registres visibles et les registres non
visibles. Pour expliquer la structure et lorganisation du processeur telles quelles sont vues
par le programmeur, il suffit de dcrire les registres visibles. Ce nest que dans le cas o lon
veut tudier la ralisation et le fonctionnement interne du processeur que lon sintresse aux
registres non visibles.
Un registre a une longueur (capacit) comprise entre 1 et 128 bits, avec des valeurs
typiques de 8, 16, 32 ou 64 bits.
4a- Laccumulateur
Il sert pour toutes les oprations arithmtiques et la plupart des oprations logiques. Il
contient un oprande au dbut de lopration, puis le rsultat la fin de lopration. Sur la
figure
4-2 on peut voir en gras le chemin des donnes pour une opration arithmtique. Un
des oprandes arrive lALU par un bus interne, en venant de laccumulateur. Le deuxime
oprande vient de la mmoire par le biais du bus de donnes de lordinateur, rentre dans le
processeur travers le buffer de donnes, pour atteindre enfin lALU travers un bus interne.
Une fois que lALU a effectu le travail, le rsultat arrive laccumulateur via un bus interne
et le multiplexeur.
Il est remarquer que toutes ces oprations seffectuent sous le contrle de lunit de
commande, qui envoie (dans un ordre prcis) les signaux pour chaque lment afin que cette
opration arithmtique seffectue correctement.
Laccumulateur est galement un passage oblig (zone de transit) pour toutes les
oprations entre la mmoire et les units dentre sortie (cf figure 4-2).
Enfin il peut servir de compteur ou de dcompteur, car son contenu peut tre
incrment ou dcrment par des instructions spcifiques.
Remarque : Comme laccumulateur est appel recevoir des donnes, il a la mme taille que
les autres registres de travail. Cette taille est en gnral gale celle du bus de donnes.
Compte tenu de limportance de ce registre, certains processeurs possdent deux
accumulateurs (voire plus).
4b-Le multiplexeur
Le multiplexeur est reli aux diffrents chemins de donnes et dadresses. Il permet
deffectuer un aiguillage pour la slection du chemin que doivent emprunter les informations,
compte tenu du fait que tous les registres sont relis aux bus (cf figure 4.3).
-62-
V1.1
Hamdi Hocine
Charger
ALU
unit de sortie
ACC
dcriture
donne
Slection du
Commande
multiplexeur
chemin de
donnes
unit dentre
de lecture
ACC
ALU
Slection
du chemin de
donnes
RI
instruction
Signaux de la console (clavier)
E : tat de lunit dentre
S : tat de lunit de sortie
Dcodeur
dinstructions
Buffer donnes
C V N Z
Horloge
Squenceur
Bus donnes
adresse
Signaux de commande
Mmoire
PC
Incrmenter
Ecriture
Lecture
Multiplexeur
Registre adresses
Buffer adresses
Bus adresses
-63-
V1.1
Hamdi Hocine
Remarque : ce registre est souvent considr comme faisant partie de lunit de commande.
Remarque : il existe des piles lifo (last in first out) o la dernire information crite en
mmoire est la premire sortir, et des piles fifo (first in first out) o la premire information
crite en mmoire est la premire en sortir.
-64-
V1.1
Hamdi Hocine
Bus dadresses
INT-REQ
Demande dinterruption
INT-ACK
Autorisation dinterruption
DMA-REQ
Demande daccs DMA
DMA-ACK
Autorisation daccs DMA
RESET
Bus de donnes
PROCESSEUR
Lecture mmoire
Ecriture mmoire
Lecture priphrique
Ecriture priphrique
-65-
V1.1
Hamdi Hocine
SAUTSP
NOMBRE
CHARGER
DEC
STOCKER
ET
ADD
SUB
SAUT
SAUT, N
SAUT , Z
INC
SAUT , C
SAUT , E
SAUT , S
ROG
Indicateurs
modifis
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
-66-
V1.1
Hamdi Hocine
INSTRUCTION
Nde ligne Mnmonique
Argument
Code hexadcimal
dinstruction
ou Oprande de linstruction
1
NOMBRE
35
135
2
ADD
B4F
6B4F
STOCKER
36E
436E
HALTE
F5
Commentaires
Mettre (35)h dans
ACC
Additionner contenu
de ACC avec contenu
de ladresse B4F
Stocker le rsultat
(contenu dans ACC)
ladresse 36E
Arrt du programme
-67-
V1.1
Hamdi Hocine
1d-Excution du programme
Essayons de suivre les diffrentes phases dexcution de chaque instruction, en
prcisant chaque fois les contenus des bus et des diffrents registres.
Numro
Phase de
Instruction linstruction
1
1
2
3
4
5
1
2
3
4
5
6
7
1
2
3
4
5
6
1
Ligne
write
memory
Ligne
Read
memory
1
1
1
1
PC
200
201
201
202
202
202
203
203
204
204
Bus
Bus
adresses donnes
200
200
201
201
202
202
203
203
B4F
B4F
13
55-
13-13-135135-
6B
6B--
4F
6B4F
52
204
205
205
206
204
204
205
205
36E
6E
87
207
206
F5
RI
43
ACC
35
35
35
35
35
35
35
87
43-43-436E
1
F5--
-68-
V1.1
Hamdi Hocine
Remarques :
Les lignes read et write memory ne fonctionnent pas sur des niveaux mais sur des
fronts : ce nest pas la valeur 0 ou 1 qui provoque un changement dtat, mais lactivation
correspond au passage de ltat logique 0 1 (pour read) et de 1 0 (pour write).
On a dcompos chaque instruction en un certain nombre de phases lmentaires.
Mme si ce nombre a t exagr pour plus de clart, cette dcomposition existe
effectivement dans la ralit, et le nombre de phases est diffrent dune instruction lautre.
-69-
V1.1
Hamdi Hocine
HORLOGE
T1
T2 T3
T4
T1
T5
T2 T3 T4 T5
T1 T2 T3
T4 T5
Recherche
Excution
ETATS
Recherche
PHASES
CYCLES
machine
OPERATIONS
Recherche
Excution
cycle M2
cycle M1
43 RI
dcodage :
STOCKER
Excution
6E RI
inutilise
cycle M3
inutilise
(A)Data Bus
206
CONTENU PC
204
205
205
(A)(36E)
206
206
*Recherche de loctet de
poids faible de ladresse qui
est envoy dans la partie
adresse du registre RI.
Registre
dinstructions
vers bus dadresses
ou bus de donnes
-70-
V1.0
Hamdi Hocine
-1-b-Pile
La pile est une partie de la mmoire ram utilise pour sauvegarder les contenus des
registres, lorsque cela est ncessaire (par exemple pour sauvegarder l'adresse de retour et le
contenu du registre dtat, lors d'un appel de sous-programme ou d'une interruption).
L'adresse de la prochaine position mmoire utiliser pour sauvegarder des donnes
(ou des adresses) est tout instant donne par le pointeur de pile: SP (stack pointer).
Il existe des piles LIFO ( last in first out ) et des piles FIFO ( first in first out ). La
pile de Mimosa est de type lifo, cest dire que la dernire information crite sur la pile est la
premire tre lue.
Le pointeur de Pile est dcrment par une criture dans la Pile, et incrment par une
lecture. Les instructions dcriture et de lecture de Mimosa sont PSHA et PULA.
-71-
V1.0
Hamdi Hocine
Remarques :
-
Comme le SP est appel recevoir une adresse, sa taille est gale celle de PC, soit 12
bits pour mimosa.
Mimosa traite les octets de poids fort en premier quand on procde une criture dans la
pile. Quand on lit de la pile on traite les octets de poids faible en premier (car la pile est de
type lifo).
Pile
PC
0FF
0FE
Pile
--------------
0FF
0FE
0FD
PC
202
3EF
SP
SP
0FF
0FD
000
20
2--------------
000
-72-
V1.0
Hamdi Hocine
Pile
PC
0FF
0FE
0FD
20
2--------------
Pile
PC
0FF
0FE
--------------
202
SP
SP
0FD
0FF
000
000
-1-e-Gestion de la Pile
La gestion de la pile est automatique lors de lappel ou du retour dun sousprogramme. Mis part le PC, aucun autre registre n'est sauvegard automatiquement dans la
pile.
Les instructions de Mimosa de sauvegarde et de lecture sont: PSHA et PULA.
-1-f-Exemple dapplication
Considrons le programme suivant pour Mimosa (dont la mmoire est suppose
organise en octets). Donner le contenu de la PILE, de SP, de PC et RI, la fin de la phase
recherche et la fin de la phase excution de chaque instruction. Ltat initial correspond
(PC) = 200; (SP) = 050.
-73-
V1.0
PROGRAMME PRINCIPAL
Numro
Instruction
1
2
3
8
Adresse
mmoire
200
--25C
25E
25F
261
262
--350
Hamdi Hocine
SOUS PROGRAMME 1
Mnmonique
Adresse
--------NOMBRE
PSHA
SAUTSP
PULA
--------HALTE
----2F5
Numro
Instruction
4
5
400
-------
SOUS PROGRAMME 2
Numro
Instruction
SOLUTION :
REGISTRES
Ninstruction Contenu Contenu
et phase
PC
RI
Etat Initial
1 recherche
1 excution
2 recherche
2 excution
3 recherche
3 excution
4 recherche
4 excution
5 recherche
5 excution
6 recherche
6 excution
7 recherche
7 excution
8 recherche
8 excution
9 recherche
9 excution
200
25E
12F5
25F
F7--
261
400
401
0400
422
600
621
422
501
261
262
0600
351
F5--
PILE
(- - signifie ladresse est vide )
Adr Adr Adr Adr Adr Adr
04F 04E 04D 04C 04B 04A
Adr
049
Contenu
SP
Adr
050
050
--
--
--
--
--
--
--
--
---2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
----
---555555555555----
-----26
26
26
26
26
26
26
26
------
-----11111111------
---------42
42
--------
---------22--------
-------------------
-------------------
050
050
050
04E
04E
04C
F4--
04A
F6-04C
F6-04E
FF-050
050
-74-
V1.0
Hamdi Hocine
jamais positionns 0 automatiquement. Il faut donc pour les mettre 0 utiliser des
instructions spcifiques de remise 0 (cf tableau des mnmoniques de Mimosa figure 4-6).
-2-a-Lindicateur C : CARRY (ou Report ou Retenue)
Il permet dindiquer par sa valeur logique 1 :
Que la soustraction N1 N2 de deux nombres non signs nest pas possible, ce qui
signifie que N1 est infrieur N2. Cest alors une retenue.
La valeur logique dun bit dtat tester. Pour ce faire, le bit dtat est transfr dans le
Carry par un ou plusieurs dcalages du contenu du registre contenant le bit dtat
tester.
-2-b-Lindicateur de signe N
Les nombres signs sont gnralement exprims en complment 2, le bit le plus
significatif tant le bit de signe. Sa valeur est 0 pour un nombre positif et 1 pour un
nombre ngatif.
La valeur 1 de lindicateur de signe N indique donc quil sagit dun nombre
ngatif.
On utilise lindicateur de signe N pour indiquer que le bit le plus significatif
(poids fort) dun nombre est 1.
-2-c-Lindicateur de dbordement V (ou Overflow)
Cet indicateur est mis un lorsquil y a un dpassement de capacit pour des
oprations arithmtiques en complment 2. Ainsi pour des nombres de 8 bits par
exemple, le rsultat dune opration arithmtique ne doit pas dpasser 128 ou +127. Du
point de vue fonction logique, lindicateur V est le OU-exclusif du CARRY et du SIGNE :
V=CN.
-75-
V1.0
Hamdi Hocine
-2-d-Lindicateur zro Z
Lorsque le rsultat dune opration (arithmtique, logique, de chargement) est
nul, cet indicateur prend la valeur logique 1.
Ainsi dans le cas de la comparaison de deux nombres N1 et N2, il suffit de faire la
soustraction N1N2. Si les deux nombres sont gaux, le rsultat est nul et lindicateur Z se
met 1.
Par ailleurs si lon tient compte de ce qui a t dit sur le carry, lgalit N1 = N2 se
traduit par C=0 et Z=1. Si C=1 et Z=0, cela signifie que N1 < N2. Par contre Si C=0 et Z =
0, alors N1 > N2. Il est remarquer que la situation C=1 et Z=1 la suite dune opration
de soustraction est impossible.
Mais lutilisation la plus frquente de lindicateur zro est le test de fin de boucle :
si une opration ou un ensemble dinstructions doit tre excut n fois, ce nombre sera
charg dans un registre qui sera utilis en compteur quon va dcrmenter chaque
excution de la boucle. Ainsi lorsque Z sera gal 1, cela signifie que le contenu du
compteur est nul, et donc que lon a excut la boucle n fois. Une instruction spciale (de
branchement conditionnel) qui teste le bit Z permet de sortir de la boucle.
-3-Modes dadressage
Les modes d'adressage caractrisent la faon dont est obtenue l'adresse du
deuxime oprande d'une instruction, le premier oprande tant contenu dans
l'accumulateur. Nous ntudierons pas les modes dadressage indirect qui sont nombreux et
peu utiliss, pour nous concentrer sur les modes dadressage les plus courants, et qui
existent dans mimosa.
-76-
V1.0
Hamdi Hocine
Remarque :
Dans ce mode d'adressage, pour Mimosa 1instruction occupe deux octets.
Exemple:
-3-c-Adressage immdiat :
format de linstruction : Code_Opration # (ou $) Donne
L'oprande est directement fourni, il n'y a donc pas d'adresse. C'est--dire qu'au lieu
de fournir l'adresse o aller crire ou lire une donne, on donne directement la donne en
question. C'est la faon la plus simple de manipuler des constantes.
L'oprande est prcd du symbole # ou $ qui est caractristique de l'adressage
immdiat.
Ce type d'adressage sert uniquement quand on veut comparer, charger dans un
registre, ou tester des valeurs connues. C'est galement la manire la plus rapide pour
initialiser un registre une valeur donne.
Remarque:
Pour Mimosa nous avons supprim le symbole ( # ou $) caractristique de
l'adressage immdiat, car nous avons utilis une instruction unique ( NOMBRE ) pour
effectuer de l'adressage immdiat. Cest pour cela quelle ressemble un adressage absolu.
-77-
-3-d-Adressage index :
V1.0
Hamdi Hocine
L'adresse effective est la somme de deux termes : le contenu d'un registre dindex
R, et un nombre D prcis dans l'instruction et appel dplacement (offset) : EA = (R) + D.
Le nombre D correspond une adresse : si cette adresse se trouve en page 0 on
parle alors d'adressage index page 0, sinon on parle d'adressage absolu index.
L'adressage index est trs utile lorsquil s'agit d'adresser l'une aprs l'autre de
nombreuses positions mmoire situes des cases adjacentes, car le registre peut tre
incrment ou dcrment comme un compteur.
Ladressage index est fondamental dans la gestion de tables, c'est--dire de blocs
de donnes ou d'adresses.
Remarque :
Pour Mimosa, dans ce mode d'adressage, 1 instruction occupe deux octets : 4 bits
pour le code instruction (mimosa ne possde quun seul registre dindex appel X) et 12
bits pour la donne D (qui est une adresse).
-3-e-Adressage relatif :
i:
branchement,
(PC) + i : est ladresse de la prochaine instruction en squence,
D:
Exemple :
-78-
V1.0
Hamdi Hocine
Le processeur teste le bit de signe (bit de poids le plus fort) du dplacement pour
savoir sil sagit dun dplacement positif ou ngatif. Si ce bit =0, il sagit dun
dplacement positif, cest dire que ladresse de saut ou de branchement est suprieure
ladresse de linstruction en cours contenue dans le PC. Si ce bit =1, il sagit dun
dplacement ngatif, cest dire que ladresse de saut ou de branchement est infrieure
ladresse de linstruction en cours contenue dans le PC.
L'avantage de l'adressage relatif est de ne pas comporter d'adresse absolue. Ainsi un
programme o tous les branchements sont raliss en adressage relatif, est facilement
translatable d'une zone mmoire une autre, sans devoir modifier les adresses.
Remarque :
Pour Mimosa, dans ce mode d'adressage 1 instruction occupe deux octets : 4 bits
pour le code instruction et 12 bits pour la donne D.
Comme mimosa utilise 12 bits pour coder la donne D, la valeur de D exprime en
complment 2 ne dpasse pas + 2n-1 - 1 et -2n-1 , soit 212-1 - 1 (= +2047 en dcimal) et
212-1 (= -2048 en dcimal).
Exemple dapplication :
Supposons que la mmoire de mimosa est organise en octets (donc i = 2 et
linstruction occupe deux octets). Supposons galement que linstruction occupe les
emplacements mmoire dadresses 200 et 201. Considrons les deux cas dun dplacement
positif (pour lequel EA=210) puis ngatif (pour lequel EA=1F6). Il sagit de chercher dans
les deux cas la valeur du dplacement pour linstruction SAUT,S Donne .
-79-
V1.0
Hamdi Hocine
aprt :
SAUT,E
SAUT
Lirea :
ENTREE
STOCKER
bprt :
SAUT,E
SAUT
Lireb :
ENTREE
STOCKER
ADD
Res_prt : SAUT,S
SORTIE
HALTE
ADRESSE
lirea
aprt
SIGNIFICATION
Si E vrai, aller lirea
Aller aprt
Mettre ds Acc contenu du tampon dentre
Mettre (Acc) ladresse mmoire de a
Si E vrai, aller lireb
a
lireb
bprt
b
a
Res_prt
m(b) := (Acc)
Acc := (Acc) + (m(a))
Si S vrai, aller Res_prt
Mettre (Acc) dans Tampon de sortie
Contenu
0001 0000 0001 1001
0100 0001 0000 0101
0001 0000 0010 0000
0110 0001 0000 0101
104
-80-
V1.0
Hamdi Hocine
Adr Instruction
100
----11F
120
----130
---------SAUTSP 200
---------HALTE
Programme principal
N
instr
adr
200
----24F
250
----270
Instruction
---------SAUTSP 300
---------RETSP
Sous programme 1
N
instr
3
4
adr
Instruction
300
--310
--320
----350
------PSHA
---PULA
------RETSP
Sous programme 2
-81-
V1.0
Hamdi Hocine
-82-
V1.0
Hamdi Hocine
PARTIE 3 : CONTROLE DES CONNAISSANCES - DUREE 1H30 Adressage relatif sur Mimosa
Si la mmoire de mimosa est organise en octets, considrons linstruction de
branchement conditionnel en adressage relatif SAUT,S donne , o donne exprime le
dplacement D. Cette instruction occupe les emplacements mmoire dadresses 310 et 311.
1 Si D = 00A, quelle est la valeur de ladresse effective EA ?
2Donner la valeur de D si : a) on veut se brancher ladresse 313 ; b) on veut se brancher
ladresse 30F.
EXERCICE 3-2 : Pile et sous programme (mmoire organise en octets)
Considrons le programme suivant pour Mimosa. Donner le contenu de la PILE, de
SP, de PC et RI, la fin de la phase recherche et la fin de la phase excution de chaque
instruction. Ltat initial correspond (PC) = 200 ; (SP) = 050 ; (Acc) =2FB3.
EXERCICE 3-1 :
PROGRAMME PRINCIPAL
Numro
Adresse Mnmonique Adresse
Instructio
Mmoire
200
--------------220
PUSHA
1
--------22F
SAUTSP
400
2
--------235
PULA
8
--------250
HALTE
9
Numro
Instructio
3
4
5
6
SOUS PROGRAMME
Adresse Mnmonique
Mmoire
400
----------420
NOMBRE
422
PSHA
----------44F
NOP
450
PULA
------------500
RETSP
Adresse
----435
-----------
EXERCICE 3-3 :
PAGE
-I-Terminologie de base
83
Informatique, hardware et software, systme dexploitation, processeur, carte mre, bus, entres sorties,
interfaces.
-II-Langages et environnement de programmation
85
Les langages, les traducteurs, environnement de programmation.
-III-Les logiciels
61
Editeurs, traitements de texte, tableurs, gestionnaires de bases de donnes,
CHAPITRE 2 : REPRESENTATION DES INFORMATIONS EN MEMOIRE ET CODAGE
Ex 1 & 2 : Rappel sur les systmes de numration et conversions
94
Rappels de cours (notions de base, bit, quartet, octet, mot) ; codage, dcodage, transcodage de nombres
entiers et fractionnaires
Ex 3 & 4 : Reprsentation des nombres en mmoire
99
Codage des entiers naturels, des entiers relatifs, complment 2, nombres fractionnaires en virgule fixe,
nombres fractionnaires en virgule flottante
Ex 5, 6, 7 : Oprations lmentaires en arithmtique non signe
101
Additions binaire, hexadcimale, BCD ; soustraction en complment 2 ; multiplication et division
binaires.
Ex 8 & 9 : Codage, transmission et impression
104
Codage de messages en code baudot, iso, ascii, ebcdic ; transmission : bits de parit, start, stop ;
impression : caractres imprimables et caractres de contrle.
CHAPITRE 3 : LES MEMOIRES
Ex 1, 2, 3 : Bus dadresses, bus de donnes, taille de lespace adressable
107
Ex 4 : Stockage de nombres et de caractres
108
Ex 5 & 6 : Mmoire organise en octets et mmoire organise en mots, techniques de stockage big endian et
little endian
108
Ex 7 : Mmoire segmente
110
Ex 8 & 9 : Ralisation physique de mmoires
110
Ex 10 : Synthse des notions prcdentes
115
Ex 11&12&13&14 : Antmmoire, mmoire pagine, et mmoire virtuelle
118
Ex 15 & 16 : Unit de disque dur : pistes, secteurs, cylindre, capacit, taux de transfert
121
CHAPITRE 4 : LE PROCESSEUR OU CPU
Partie 1 : Rappels de cours
Ex1 Ex5 : Notions de CPU, UC, UAL ; Registres PC, ACC, RI, PSW, SP
Partie 2 : Exercices
Ex6 : Adresses symboliques et adresses physiques, langage assembleur de mimosa
Ex 7 & 8 : Assemblage et dsassemblage
Ex9 : Programmation en langage assembleur
Ex10 : Fetch et excution
Ex11 : Exercice de synthse : assembleur, fetch et excution
Ex12 : Pile et sous programme
Ex13 : Utilisation des bits ou indicateurs zro (Z), carry (C), signe (N)
Ex14 : Algorithmie et programmation en assembleur
Partie 3 : Contrle des connaissances
Ex3-1 : Adressage relatif sur Mimosa
Ex3-2 : Pile et sous programme (mmoire organise en octets)
Ex3-3 : Dsassemblage et excution de programme.
Ex3-4 : Programmation en assembleur et assemblage
125
127
129
132
133
135
137
138
139
-83-
V1.1
Hamdi Hocine
-I-TERMINOLOGIE DE BASE
-1-Informatique
Linformatique est le traitement (par une machine) automatis de linformation.
Les diffrentes formes de linformation sont : crite (texte), sonore (parole et
musique) et visuelle (image fixe ou anime). Un ordinateur multimdia permet de traiter ces
trois formes.
-2-Hardware (matriel) et software (logiciel)
Le mot hardware (littralement ce qui est dur) dsigne tout ce qui est matriel
(cartes, clavier, processeur). Quant au software (ce qui est mou) il correspond au produit
de lesprit humain : les programmes. Il dsigne aussi bien le systme dexploitation que les
programmes achets ou dvelopps par lutilisateur.
-3-Systme dexploitation
Cest un ensemble de programmes de gestion (exploitation) de lordinateur. Il est
organis en couches ou en modules ayant chacun une fonction particulire : gestion
mmoire, gestion des E/S, gestion horloges, interface utilisateur, etc On peut citer parmi
les plus courants VMS, UNIX, DOS, WINDOWS 9X, SYSTEME 8, LINUX.
Chaque systme dexploitation possde son propre langage de commande.
-4-PC ou Compatible PC
PC est labrviation de Personal Computer , terme dsignant une famille
dordinateurs dIBM, qui porte en elle un nouveau concept et a rvolutionn lutilisation de
loutil informatique (bien quIBM ne soit pas linventeur de ce concept). Un ordinateur
compatible est un ordinateur qui a la mme architecture de base quun IBM-PC et utilise
le mme systme dexploitation (MS-dos). Il est dsign par compatible IBM-PC , ou
lassociation des mots composant cette phrase : compatible, PC, compatible IBM, etc
Exercices: TD N1
-logiciels et environnement de programmation-
-84-
V1.1
Hamdi Hocine
-5-Processeur ou CPU
Cest le cerveau de lordinateur. Il est constitu principalement dune unit
arithmtique et logique ( pour effectuer les traitements), dune unit de commande (qui
coordonne le travail des diffrents lments du processeur et de lordinateur), dun
ensemble de registres de travail, et de mmoire interne auxiliaire. Parmi les fabricants de
processeurs les plus clbres on peut citer Intel (processeurs 80x et pentium), Motorola
(processeurs 680xx), AMD et Cyrix.
Le terme microprocesseur fait rfrence une miniaturisation trs pousse, il
dsigne un processeur avec un fort taux dintgration de composants (plusieurs millions de
transistors).
-6-Carte mre
Cest la partie vitale de lordinateur. Cest sur cette carte que viennent se fixer les
composants lectroniques indispensables (processeurs, cartes mmoire, circuits dhorloges,
etc..) et les cartes filles dextension correspondant chacune une application dtermine.
-7-Bus
Ce sont les moyens de transport de linformation lintrieur de lordinateur. On
peut faire lanalogie entre le bus de transport en commun et le bus dordinateur de la
manire suivante :
Exercices: TD N1
-logiciels et environnement de programmation-
-85-
V1.1
Hamdi Hocine
Bus local : Bus reli directement au processeur pour acclrer les transferts
dinformation. Les plus courants dans le monde du PC sont : le bus PCI (Peripheral
Component Interconnect) qui sert connecter des cartes filles et joue donc le mme rle que
le bus ISA, le bus VESA (Video Electronics Standards Association) pour connecter des
cartes graphiques, et le bus AGP (Accelerated Graphics Port) pour acclrer le transport des
informations graphiques.
-8-Entres/Sorties (E/S)
Elles dsignent respectivement un transfert dinformation de lextrieur vers le
processeur ou du processeur vers lextrieur.
-9-Interface
Terme (masculin ou fminin) dsignant un dispositif (matriel ou logiciel) qui
permet deux entits (matrielles ou logicielles) de communiquer entre elles. Il permet de
faire de ladaptation dinformation : de forme (parallle vers srie ou linverse), de code
(transcodage) ou de vitesse (cas dun du transfert vers une imprimante par exemple).
Les interfaces dE/S les plus courantes sont les interfaces srie (ports COM) et
parallle (ports LPT : LPT1=PRN pour le port dimprimante sous DOS). Elles ont tendance
tre remplaces par le port USB (Universal Synchronous Bus) qui est beaucoup plus
rapide mais dont lutilisation nest pas encore gnralise.
-10-Drivers ou pilotes
Ce sont des programmes de gestion (pilotage) des cartes dinterfaces du matriel (on
parle de drivers de carte graphique, drivers du cdrom, etc).
Exercices: TD N1
-logiciels et environnement de programmation-
-86-
V1.1
Hamdi Hocine
Exercices: TD N1
-logiciels et environnement de programmation-
-87-
V1.1
Hamdi Hocine
Les langages volus sont classs en trois grandes familles : les langages procduraux,
les langages orients-objets et les langages orients-listes. On retrouve ainsi dans la famille
des langages procduraux le FORTRAN, le COBOL, le BASIC, lADA, le PASCAL et le C,
dans la famille des langages orients-objets, le C++, et dans la famille des langages orientslistes, le LISP et PROLOGUE.
Les langages procduraux sont des langages o la procdure (suite dinstructions)
constitue llment de base. La plupart des langages volus sont des langages procduraux.
Les langages orients-objets sont des langages adapts la programmation orienteobjet, type de programmation o chaque programme est considr comme un ensemble
dobjets distincts, ces objets constituant eux-mmes des ensembles de structures de donnes et
de procdures intgres. Dans de tels langages, chaque objet appartient une classe qui
dfinit les structures de donnes et les procdures associes cet objet.
Les langages orients-listes peuvent tre apparents aux langages orients-objets, la
diffrence prs quils manipulent non pas des objets mais des listes, cest--dire des structures
de donnes multi-lments organisation linaire.
-1-c-Langages de quatrime gnration
Les langages de quatrime gnration (L4G en abrg), conus pour linteraction avec
le programmeur, qualifient souvent les langages propres aux bases de donnes relationnelles.
Se situant un cran au-dessus de langages tels que le Pascal ou le COBOL, ils se composent
dun jeu dinstructions sapparentant des macro-instructions, squences dinstructions
prdfinies auxquelles on accde par une commande trs simple. Toutefois, ces langages
conservent un aspect hybride, drivant le plus souvent des langages volus. Le plus connu
dentre eux est SQL.
Acronyme de Structured Query Language, le langage SQL nest pas un vritable
langage comme le C ou le Pascal, pouvant tre plutt considr comme un langage
dinterrogation, de mise jour et de gestion des bases de donnes relationnelles. Driv du
projet de recherche dIBM qui avait conduit llaboration du langage SEQUEL (Structured
English Sequel Language), le langage SQL est une norme mondialement reconnue et
rpandue. Il peut tre employ pour formuler des questions de manire interactive, mais aussi
insr dans un programme sous forme dinstructions de manipulation de donnes. Il est dune
utilisation trs simple, le destinant ainsi aux professionnels comme aux novices en
informatique.
Exercices: TD N1
-logiciels et environnement de programmation-
-88-
V1.1
Hamdi Hocine
-II-2-Les traducteurs
Un ordinateur ne comprend quun seul langage, le langage machine qui se prsente
comme une suite de 0 et de 1 (forme binaire). Cest pourquoi tout programme crit
dans un langage (de bas ou de haut niveau) doit tre dcod et traduit en langage machine,
avant de pouvoir tre excut. Ce processus de conversion du code source (frapp au clavier)
au code objet (assimilable par lordinateur) est assur par un programme capable de traduire
un jeu de symboles en un autre jeu, par application de rgles de syntaxe et de smantique.
Suivant la nature du langage de programmation employ, ce programme sappelle un
assembleur, un compilateur ou un interprteur.
-2-a-Assembleur et dsassembleur
Lassembleur est un programme de traduction : il traduit un programme (source) crit
en langage assembleur en un programme (cible) en langage machine.
Le dsassembleur effectue le travail inverse : il traduit un programme en langage
machine en un programme en langage assembleur.
Lassembleur et le dsassembleur sont spcifiques dun langage assembleur, donc
correspondent un processeur particulier.
-2-b-Langages compils
Les langages dits compils sont des langages o toutes les instructions sont dabord
traduites en code objet dans une premire tape, puis dans une seconde tape en code
excutable. Cette conversion seffectue au moyen dun compilateur avant de faire appel un
diteur de liens ( linker en anglais).
Compilation :
Le code du programme compiler, ou code source , est gnralement crit dans un
langage de haut niveau (par exemple le C ou le Pascal). Or, l'ordinateur ne peut pas excuter
directement ce code. Le but de la compilation, justement, est de le traduire en squence
d'instructions lisibles par le microprocesseur. La compilation produit alors un code objet
qui est exprim en langage machine de l'ordinateur, dans lequel il serait peu pratique d'crire
directement. Cette tche de traduction est ralise par un programme appel compilateur.
Exercices: TD N1
-logiciels et environnement de programmation-
-89-
V1.1
Hamdi Hocine
Programme
Source
COMPI
LATEUR
Programme
Objet
LINKER
Programme
Excutable
Programme
oprationnel
(logiciel)
ESSAIS
Exercices: TD N1
-logiciels et environnement de programmation-
-90-
V1.1
Hamdi Hocine
-II-3-Environnement de programmation
-3-a-Environnement
Il dsigne lensemble des lments physiques et matriels constituant lenvironnement
dans lequel on dveloppe une application ou un programme. Ce sont en premier lieu la
machine (processeur) et son systme dexploitation, puis les outils logiciels tels que le
compilateur (et donc le langage dcriture des programmes), le linker, et ventuellement le
dbugger.
On distingue les environnements classiques ou spars, dans lesquels chaque lment
existe sous forme de programme part, et les environnements intgrs, o le dveloppement
de programmes est beaucoup plus souple. En effet lutilisateur excute un seul programme
pour accder un environnement avec des fentres. Le passage dune fonction une autre
(dition, compilation, excution, etc) se fait par simple changement de fentre.
Exercices: TD N1
-logiciels et environnement de programmation-
-91-
V1.1
Hamdi Hocine
-3-b-Compatibilit
La notion dordinateur compatible avec lIBM-PC suppose une compatibilit deux
niveaux : hardware et software.
En premier lieu il faut avoir la mme architecture physique que lIBM-PC. En second
lieu il faut utiliser le mme systme dexploitation, et les programmes qui sexcutent sur lun
doivent pouvoir sexcuter sur lautre.
Si les deux niveaux sont satisfaits, on parle alors dordinateur 100% compatible.
-3-c-Portabilit
La notion de compatibilit engendre celle de portabilit : tout programme dvelopp
sur un ordinateur donn peut tre port sur un autre ordinateur, o il sexcutera
directement sans aucune modification. On dira de ce programme ou de ce logiciel quil est
portable.
-III-LES LOGICIELS
Un logiciel est un programme ou un ensemble de programmes destins une
application particulire. On regroupe gnralement les applications par groupes ou familles
dapplications.
III-1-Editeurs
Editer un fichier consiste louvrir soit en lecture, soit en lecture et criture (pour
modifier son contenu). Sil nexiste pas il est souvent automatiquement cr louverture.
Une fois quon a termin de travailler sur un fichier, on le ferme puis on le sauvegarde
en mmoire de masse. Le format de sauvegarde est le format texte ou ascii (sous forme de
chanes de caractres alphanumriques cods en ascii), et lextension du fichier est
gnralement .txt . Avec un diteur de texte on dispose gnralement dune seule police de
caractres, la taille des fichiers est limite, le nombre doprations (de manipulation du texte)
est galement limit.
On distingue les diteurs ligne (qui affichent une seule ligne la fois) et les diteurs
pleine page qui permettent une saisie et une modification aises du texte.
-III-2-Traitements de texte
Exercices: TD N1
-logiciels et environnement de programmation-
-92-
V1.1
Hamdi Hocine
Enregistrements
Champs1
Champs2
Champ3
Champs4
Champs5
Champs6
Exercices: TD N1
-logiciels et environnement de programmation-
-93-
Champs Nmatricule
Types
Nombre-
Nom
123456
Prnom
16
Benali
Adresse
Note_contrle
Date
Caractre-
Nombre-
30
dcimal
16
Ali
Hamdi Hocine
Date_naissance
Caractre- Caractre-
entier
Enregistrement1
V1.1
1/1/2000
1 rue du 10.25
bug 2000
Tera nova
Enregistrement2
123502
---
---
---
---
---
Enregistrement3
123479
---
---
---
---
---
---
---
---
---
---
---
---
Exercices: TD N1
-logiciels et environnement de programmation-
-94-
SOLUTIONS DU TD CHAPITRE 2
REPRESENTATION DES INFORMATIONS EN MEMOIRE ET CODAGE
-I-RAPPELS SUR LES SYSTEMES DE NUMERATION : CONVERSIONS
1Rappels de cours
-1-1- Notions de base et systme de numration
Quelle que soit la base b, tout chiffre exprim dans cette base varie de 0 b-1. Ainsi
par exemple dans la base 10 les chiffres varient de 0 9, dans la base 8 ils varient de 0 7, et
dans la base deux ils prennent uniquement deux valeurs : 0 et 1 (do lappellation de systme
binaire).
Les bases les plus utilises sont 10, 8, 16 et 2. Ces bases ont donn naissance aux
diffrents systmes de numration respectifs: dcimal, octal, hexadcimal et binaire. Ainsi si
on effectue des oprations arithmtiques ou logiques dans la base 10 ou la base 2, on dit que
lon travaille respectivement en dcimal ou en binaire.
Principe :
Tout nombre N crit dans une base b peut se mettre sous la forme:
N (b) ( N ) b = a n b n + a n 1b n 1 + a n 2 b n 2 + ...... + a 0 b 0 + a 1b 1 + a 2 b 2 ...... + a n b n
partie entire
partie fractionnaire
Exercices : TD N2
-95-
Le mot reprsente lentit lmentaire utilise par lordinateur pour coder et manipuler
les donnes. Cette unit dpend de la taille (en nombre de bits) des donnes que traite le
processeur de lordinateur (plus prcisment l'nit arithmtique et logique). Elle correspond
en gnral galement lunit (en nombre de bits) utilise pour le stockage des informations
en mmoire. On parlera dordinateur 8, 16 ou 32 bits, pour signifier que le processeur utilise
8, 16 ou 32 bits pour coder et traiter les donnes.
2Conversions
Enoncs
Effectuer les conversions des nombres suivants:
2-1-Nombres entiers
Solutions
(102)3( ? )10
(11)10
(321)10 ( ?)4
(11001) 4
(543)10 ( ?)8
(1037) 8
(22)16 ( ?) 8
(42) 8
(16)7 ( ?) 3
(111) 3
(7F) 16
(7F)16 ( ?) BCD
-2-2-Nombres fractionnaires
Solutions
-a-DcimalBinaire : (9,375)10 ( ? )2
(1001,011)2
(4,345)10
( ? )2
(100,01011)2 .
(5,625)10
Solutions
2-1-Nombres entiers
2-1-a-Codage : il sagit de transcrire un nombre N exprim en base dix dans une base
b quelconque. La mthode consiste procder par divisions successives par la base, on
s'arrte quand le dernier quotient est nul. Le rsultat sera donn par les restes successifs
obtenus dans l'ordre, en les crivant de droite gauche en fonction des puissances croissantes
de la base, selon la formule suivante (o n est le nombre de divisions et les Ri les restes
successifs) :
( N )b = Rnb n 1 + Rn 1b n 2 + Rn 2b n 3 + ...... + R1b 0
Exercices : TD N2
-96-
R6 R5 R4 R3 R2 R1
(1 1 0 0 1 )4
(543)10
(1 0 3 7 )8
(1 0 1 1 0 0 )2
(32)10
(44)10
(127) 10
(7 F )16
-2-1-b- Dcodage : cela consiste crire un nombre N exprim dans une base b dans la
base dix. Le rsultat est obtenu en appliquant directement la formule donne dans le
principe.
(300) 8 = ( 3x82 + 0x81 + 0x80 )10 = 3x64 = (192)10
(102)3
(16)7
(11)10
(13)10
-2-1-c- Transcodage : il consiste transcrire un nombre N crit dans une base b1 vers
une autre base b2, b1 et b2 tant quelconques.
*Cas gnral: cette mthode est valable quelles que soient les bases b1 et b2.
Un transcodage se fera d'abord par dcodage puis par codage.
Dcodage
base b1
(111)3
(7F)16
(177)8
Codage
base 10
(13) 10
(127) 10
(127) 10
base b2
(16) 7
(177) 8
(0111 1111) 2
*Cas particuliers:
** b2 = 2 et b1 = 2 n
Si la base b2 correspond la base 2, et la base b1 de dpart est une puissance
n
de 2 (b1 = 2 ), et si on regarde le plus grand chiffre que l'on peut crire dans la base b1, on se
rend compte quil faut n bits pour coder ce chiffre en binaire. Donc chaque chiffre du nombre
N sera exprim sous la forme d'un nombre binaire ayant n bits.
(3)8 = (011)2
(5)8 = (101)2
(7)8 = (111)2
Exercices : TD N2
-97-
** b1 = 2 et b2 = 2 n
Pour passer du binaire vers une base b2 qui est une puissance de 2 (b2 = 2 n ),
on regroupe les bits n par n pour obtenir N cod dans la base b1.
(011 101 111)2 = (357)8
**Gnralisation: b1 = 2 n et b2 = 2 m
Si les bases de dpart et darrive sont des puissances de 2, on utilise la base 2
comme base intermdiaire pour faire le transcodage.
base b1
(22) 16
(7F) 16
(1257) 8
base 2
base b2
(0010 0010) 2
(0111 1111) 2
(001 010 101 111) 2
(42) 8
(177) 8
(2AF) 16
*Cas du BCD : un cas particulier intressant cest quand la base b1 est gale
dix. Dans ce cas si on applique la mme mthode que prcdemment, chaque bit du nombre N
sera cod sur 4 bits. Le rsultat obtenu n'est pas du binaire mais du dcimal cod en binaire
(BCD pour Binary Coded Decimal). Pour marquer la diffrence avec le binaire et viter les
erreurs dinterprtation, on utilise soit une mise entre parenthses avec une indication de la
base, soit on spare chaque groupe de 4 bits par un point.
base b1
(42) 8
(7F) 16
(10) 16
(10) 10
base 10
(34) 10
(127) 10
(16) 10
(10) 10
BCD
-2-2-Nombres fractionnaires
-2-2-a-Codage dcimal-binaire
La partie entire est traite par divisions successives. La partie fractionnaire par
multiplications successives, les parties entires successives obtenues constituent le rsultat
crit dans lordre des puissances croissantes de la base. On arrte les multiplications quand la
prcision voulue est obtenue.
Exercices : TD N2
-98-
Codage de (4,345)10 en base deux avec une prcision de 2-5 (5 chiffres aprs la
virgule) :
Partie entire : (4)10 = (10)2
Partie fractionnaire : (0,345)10 = (01011)2 .
En effet en procdant par multiplications successives on trouve :
0,345 x 2 = 0,690 partie entire du rsultat gale 0
0,69 x 2 = 1,38 partie entire du rsultat gale 1
0,38 x 2 = 0,76 partie entire du rsultat gale 0
0,76 x 2 = 1,52 partie entire du rsultat gale 1
0,52 x 2 = 1,04 partie entire du rsultat gale 1
Par consquent (4,345)10 = (10,01011)2 .
Codage de (9,375)10 en base deux avec une prcision de 2-3 (3 chiffres aprs la
virgule) :
Partie entire : (9)10 = (1001)2
Partie fractionnaire : (0,375)10 = (011)2 .
En effet en procdant par multiplications successives on trouve :
0,375 x 2 = 0,750 partie entire du rsultat gale 0
0,75 x 2 = 1,5 partie entire du rsultat gale 1
0,5 x 2 = 1,00 partie entire du rsultat gale 1
Par consquent (9,375)10 = (1011,011)2 .
-2-2-b-Codage Base b dcimal
Il suffit dappliquer la formule donne par le principe gnral (cf -I-1-).
(10,11)2 = 0x20 + 1x21 + 1x2-1 +1x2-2 = 0 + 2 + 0,5 + 0,25 = (2,75)10
(101,101)2 = 1x20 + 0x21 + 1x22 + 1x2-1 +0x2-2 + 1x2-3 = 1 + 4 + 0,5 + 0,125 =
(5,625)10.
(70,40)8 = 0x80 + 7x81 + 4x8-1 +0x8-2 = 0 + 56 + 4/8 + 0 = (56,50) 10
Exercices : TD N2
-99-
+7,+9,+13,-7,-9,-13
Technique
Valeur absolue sans signe
Technique
Valeur absolue + signe
Technique
Complment 2
+7
+9
+13
-7
-9
-13
00111
01001
01101
00111
01001
01101
00111
01001
01101
10111
11001
11101
00111
01001
01101
11001
10111
10011
Equivalent dcimal
Tech.val.abs.ss signe
Equivalent dcimal
Tech.val.abs.+ signe
Equivalent dcimal
Tech.complment 2
00111
10000
11111
10001
7
16
31
17
+7
-0
-15
-1
+7
-16
-1
-15
4Nombres fractionnaires
Enonc
-41-Technique de la virgule fixe : Si on utilise 16 bits pour coder les nombres, dont
12 pour la partie entire et 4 pour la partie fractionnaire, donner la prcision, et les valeurs
Nmin et Nmax des nombres que lon peut coder.
-4-2-Technique de la virgule flottante : Si on utilise 16 bits pour coder les nombres
( 4 pour lexposant et 12 pour la mantisse), donner la prcision, les valeurs Nmin et Nmax des
nombres que lon peut coder.
Exercices : TD N2
-100-
Solution
-4-1-Technique de la virgule fixe
Partie fractionnaire : on utilise 4 bits (soit 4 chiffres aprs la virgule), donc la
prcision est de 2-4 (= 6,25.10-2 en dcimal). Par consquent la valeur min de la partie
fractionnaire est 0.0000 et la valeur max est de 0.1111.
Partie entire : on utilise 11 bits pour le codage plus un bit de signe. Les valeurs
extrmes que lon peut obtenir pour la partie entire correspondent aux 11 bits gaux 1. les
valeurs correspondantes en dcimal sont + (211 1) et (211 1), soit 2047.
Par consquent les valeurs extrmes des nombres quon peut obtenir avec un codage
sur 16 bits dont 12 pour la partie entire et 4 pour la partie fractionnaire sont :
ExposantMax = + (1111, 1111) +2047,9375
ExposantMin = - (1111 , 1111) -2047,9375
Par consquent les valeurs extrmes des nombres quon peut obtenir sont
Nmax = +(0,111). 2+7
Remarque : on a fait un mauvais choix dans la rpartition des bits pour lexposant et la
mantisse. En effet par rapport la technique de la virgule fixe, si on a gagn en prcision
(passage de 2-4 2-11), par contre on a perdu en ce qui concerne la plus grande valeur quon
peut coder (de 211 27 ). En fait il suffit de mettre 10 bits pour la mantisse et 6 bits pour
lexposant pour gagner sur les deux tableaux.
NMax
1bit
0
11 bits
11...1
4 bits
0 1 1 1
+7
NMin
11...1
1 0 0 0
-8
Signe de
Mantisse code en VA + Signe Exposant
la mantisse
Cod en C2
Exercices : TD N2
-101-
(23)16
0010 0011
(E9)16
1110 1001
(10C)16
1 0000 1100
1 0
-5-3-BCD
Pour faire laddition on procde comme en binaire, puis si le rsultat est suprieur 9
(1001 en binaire), on rajoute 6 (0110 en binaire) au rsultat pour sauter les six positions
binaires interdites en BCD, soit 1010,1011,1111 (correspondant aux valeurs dcimales
comprises entre 10 et 15).
(29)10
+ (15)10
(44)10
(44)10
Exercices : TD N2
-102-
6-2-Soustraction (5 13)10
0101
C1(B) 1010
+
C1(B) 0010
0001
C2(-B) 1011
+
1101
0001
C2(-B) 0011
1101
0101
1 1000 (8)10
1000
est (8)10 .
0 1 11 0
(7)10
Dcalage
1 1 1 0 0
(14)10
Exercices : TD N2
-103-
7-1-b-Exemple avec V = 1
0
1 0 01
(9)10
Dcalage
0 0 1 0 0
(2)10
1 0 10
(10)10
carry
0 1 0 1
(5)10
carry
1 1 01
(13)10
carry
0 1 1 0
(6)10
carry
Exercices : TD N2
-104-
-IV-CODAGE ET TRANSMISSION
-8-Codes Baudot et Iso
Enonc
-8-1-Donner la chane de bits correspondant au message suivant : TZ 58K , lors de
sa transmission en code Baudot.
-8-2-Mmes questions que pour lexercice 8-1, si le codage seffectue en code ISO,
avec pour la transmission : b.p. impaire + 1b.start + 2b.stop.
Solution
8-1-Code Baudot
Appelons CC et CL les caractres de contrle correspondant au code chiffre (1B) et au
code lettre (1F). Les caractres circulant sur la ligne lors de la transmission en code Baudot du
message TZ 58K sont :
T
Caractres :
Codage :
space CC
(01)16 (11)16
CL
Transmission : codage sur 5bits, et on rajoute un bit start=0 et un bit stop=1 pour chaque
caractre.
0
start
1
1 0
space
0
CC
1
stop
1
1 0
8
1
0
K
CL
8-2-Code Iso
Caractres :
Codage :
space
(54)16 (5A)16
Transmission : codage sur 7 bits plus: 1bit start, 2 bits stop, 1 bit de parit impaire
0 0
T
start
0
1
8
0 1
1 0
0 1
bit stop
0
0 1
5
space
0
1 0
1 0
K
Exercices : TD N2
-105-
9-1-Donner pour chacun des 4 codes connus, le nombre de bits total ncessaire pour
coder ce message.
9-2-Si le message est transmis en mode asynchrone non standard (7bits + bp paire +
1bit start + 2bits stop), donner le nombre de bits total reu par limprimante pour chacun des 4
codes.
9-3-Donner la forme du message tel quil apparat sur papier aprs impression par
limprimante.
Solution
Il y a 48 caractres dans le message.
9-1-Codage
9-1-a-Baudot : codage sur 5 bits
Le nombre de caractres dchappement ncessaires est de 9. Par consquent le
nombre total de caractres est 48+9=57 caractres. Le nombre de bits ncessaires pour le
codage est : 57 x 5 = 285 bits.
9-1-b-Iso et Ascii : codage sur 7 bits
Le nombre de bits est : 48 x 7 = 336 bits.
9-1-c-Ebcdic : codage sur 8 bits
Le nombre de bits est : 48 x 8 = 384 bits.
9-2-Transmission
Dans cette transmission en mode asynchrone (non standard) on a rajout 4 bits par
caractre : 1start, 1parit, 2 stop.
9-2-a-Baudot
On doit rajouter 57 x 2 = 114 bits. Le nombre total de bits est de 285+114=399.
9-2-b-Iso et Ascii
On doit rajouter 48 x 4 = 192 bits. Le nombre total de bits est de 336+192=528.
9-2-c-ebcdic
On doit rajouter 48 x 4 = 192 bits. Le nombre total de bits est de 384 + 192 =
576 bits.
Exercices : TD N2
-106-
9-3-Impression
La forme du message tel quimprim par limprimante est la suivante (le symbole
dsignant lespace) :
AID
9 8
1 A 2 M I L L I O N S
PARMOUTON?
O N D E L I R E ?
Remarque : lespace (sp) la fin de la 2 ligne est inutile, car le caractre suivant est un retour
chariot (CR).
Exercices : TD N2
-107-
SOLUTIONS DU TD CHAPITRE 3
LES MEMOIRES
EXERCICE 1
Enonc
Si un ordinateur possde une mmoire de 1Mo, quelle la taille de sa M.C. exprime :
1 en mots de 32 bits?
2 en mots de 64 bits ?
Solution
a) 1 Mo = 220 octets = 220 x 23 bits = 223 bits = [(223 ) / (32)] mots de 32 bits = (223 / 25 )
mots de 32 bits = 218x mots de 32 bits = 28x 210 mots de 32 bits = 256 Kmots de 32 bits.
b)1 Mo = 220 octets = 220 x 23 bits = 223 bits = [(223 ) / (64)] mots de 64 bits = (223 / 26 )
mots de 64 bits = 217 mots de 64 bits = 27x 210 mots de 64 bits = 128 Kmots de 64 bits.
EXERCICE 2
Enonc
Trouver le nombre de bits ncessaire pour adresser une mmoire de 512 mots de 16 bits
chacun.
Solution
Pour ladressage, on na pas besoin de connatre le nombre de bits dans un mot. Ce qui
est important cest le nombre de mots ou demplacements mmoire, car on adresse des
emplacements mmoire et non des bits.
Avec un bus d@ n bits ou n fils, on peut fabriquer 2n adresses, donc adresser 2n
emplacements.
Taille mmoire = 512 mots de 16 bits = 29 emplacements de 16 bits il faut 9 bits pour
adresser 512 mots.
EXERCICE 3
Enonc
On considre une mmoire de 65536 mots de 25 bits chacun. Donner le nombre de fils
ncessaires sur le bus d'adresses et sur le bus de donnes.
Solution
1
65536 mots de 25 bits = 64 x 1024 mots = 26 x 210 = 216 mots il faut 16 bits
donnes si on veut effectuer les transferts avec la mmoire en une seule opration.
Exercices : TD N3
-les mmoires-
-108-
EXERCICE 4
Enonc
Les adresses d'une mmoire dsignent des bytes (octets). Quelle est l'adresse du
quatrime lment d'une table qui commence l'adresse (0019) H et qui est constitue d'lments
de 16 bits ?
Solution
adresse
emplacements mmoire
N lment
de la table
= 2 emplacements mmoire
1lment
001A
001B
2lment
001C
001D
3lment
001E
001F
4lment
0020
par la donne.
EXERCICE 5
Enonc
Un emplacement mmoire de longueur 16, a le contenu suivant (stock dans la technique
Big Endian): 0011 1000 0011 0101. Quelle est sa signification s'il s'agit:
1 d'un entier en reprsentation binaire?
Solution
1
( 3
5 )16
Exercices : TD N3
-les mmoires-
-109-
EXERCICE 6
Enonc
La mmoire d'un ordinateur est organise en mots de 32 bits. On veut stocker la chane de
caractres "EPSIMA" et le nombre entier (14389)10 . Donner la disposition des chanes de bits
correspondantes (en code ISO) dans les deux techniques "Big Endian" et "Little Endian".
Solution
Chane de caractres :
E P S I M A
45 50 53 49 4D 41
(14389)10 = (3835)16
1 emplacement mmoire fait 32 bits.
1Big Endian
@
000E
000F
15 8
7 .0
0100 0101
0101 0000
0101 0011
0100 1001
0100 1101
0100 0001
---- ----
---- ----
---- ----
---- ----
3
0010
23 . 16
0011 1000
0011 0101
0011
-a-La chane de caractres fait 6 caractres, comme chacun est cod sur 8 bits, on aura
donc 48 bits stocker. On aura besoin pour cela de 2 emplacements mmoire.
On stocke les bits de poids les plus forts de chaque caractre de la chane, dans les bits de poids
les plus forts de lemplacement mmoire. Mais on fait attention pour que les caractres de la
chane gardent le mme ordre.
On remarque que les bits 0 15 du 2 emplacement sont inutiliss et perdus.
-b-(3835)16 : cest de lhexadcimal quon doit coder en binaire chaque digit sera
cod sur 4 bits. De plus on utilise les bits de poids le plus fort en premier : aussi bien pour les
bits du nombre que ceux de lemplacement mmoire. On remarque ici galement que les bits 0
15 du 3 emplacement sont inutiliss et perdus.
Exercices : TD N3
-les mmoires-
-110-
2Little Endian
@
000E
000F
23 . 16
15 8
0100 1001
0101 0011
0101 0000
0100 0101
0100 0001
0100 1101
---- ----
---- ----
3
0010
7 .0
---- ----
---- ----
0011 1000
0011 0101
0011
Le principe est le mme que pour la technique Big Endian, la seule diffrence tant quon
traite ici les bits de poids les plus faibles en premier, aussi bien pour les donnes que pour les
emplacements mmoire.
On remarque que les bits inutiliss et gaspills au niveau des emplacements mmoire
sont les bits de poids les plus forts (ce qui est normal car on utilise ceux de poids le plus faible en
premier).
EXERCICE 7
Enonc
Quelle est l'adresse effective correspondant une adresse de base de code hexadcimal
(0019)H et un dplacement de (0016)H ?
Solution
@effective = @segment + offset = (0019)H + (0016)H = (002F) H
EXERCICE 8
Enonc
On dispose de botiers mmoire de capacit 8Kx1byte, chacun tant muni d'une broche de
slection. Montrer comment on peut construire un module de mmoire de 64Kbytes, en faisant
clairement ressortir le cblage des bus d'adresses et de donnes.
Solution
Nombre de botiers = (64 K x 8 bits) / (8 K x 8 bits) = 8 botiers
mmoire de 64 K x 8 bits mmoire organise en mots de 8 bits on prendra un bus de
donnes 8 bits.
Exercices : TD N3
-les mmoires-
-111-
D0
D1
D7
CS0
Botier 0
8K
x
1 octet
CS1
Botier 1
8K
x
1 octet
CS7
Botier 7
8K
x
1 octet
Dcodeur
3 vers 8
A15
A14
A13
A12
A1
A0
Exercices : TD N3
-les mmoires-
-112-
EXERCICE 9
Enonc
1Mmes questions que pour l'exercice 8 avec botier = 4Kx4bits, et taille mmoire =
8Ko.
2Mmes questions que pour l'exercice 8 avec botier = 8Kx8bits, et taille mmoire =
64Kmots de 16 bits.
3Mmes questions que pour l'exercice 8 avec botier = 4Kx2bits, et taille mmoire =
8Ko.
Solution
1Nombre de botiers = taille mmoire / taille dun botier = 8 K x 8 bits / 4 k x 4 bits = 4
botiers mmoire de 8 K octets mmoire organise en octets on prendra un bus de donnes
8 bits.
Taille dun mot mmoire = 8 bits
Taille dun emplacement mmoire dun botier = 4 bits
taille dun mot mmoire / taille dun emplacement du botier = 8 bits / 4 bits = 2 il
faut assembler les botiers 2 par 2 pour former des mots de 8 bits : le premier reli aux 4 bits de
poids les plus faibles du bus de donnes, et le 2 aux 4 bits de poids les plus forts.
Taille dun botier = 4K emplacements de 4 bits=212 emplacements mmoire il faut 12
bits pour adresser les 212 E.M.
Comme les botiers sont groups deux par deux on aura donc (4 botiers / 2) = 21
groupes de botiers. Pour les adresser il faut 1 fil supplmentaire pour la slection des groupes de
botiers.
On aura donc au total 13 fils dadresses : 12 pour adresser les emplacements et 1 pour la
slection des botiers. Ce nombre est conforme au nombre de fils dadressage ncessaire daprs
la taille mmoire. En effet mmoire de 8 K octets = 213 emplacements mmoire dun octet il
faut 13 fils pour adresser ces 213 emplacements.
2Nombre de botiers = (64 K x 16 bits) / (8 K x 8 bits) = 16 botiers mmoire de 64
Kmots x 16 bits mmoire organise en mots de 16 bits on prendra un bus de donnes 16
bits.
Taille dun mot mmoire = 16 bits
Taille dun emplacement mmoire dun botier = 8 bits
taille dun mot mmoire / taille dun emplacement du botier = 16 bits / 8 bits = 2 il
faut assembler les botiers 2 par 2 pour former des mots de 16 bits.
Taille dun botier=8K emplacements de 8 bits=213 emplacements mmoire il faut 13
bits pour adresser les 213 E.M.
Exercices : TD N3
-les mmoires-
-113-
Comme les botiers sont groups deux par deux on aura donc (16 botiers / 2) = 8
groupes de botiers. Pour adresser les 23 groupes il faut 3 fils supplmentaires pour la slection
des groupes de botiers.
On aura donc au total 16 fils dadresses : 13 pour adresser les emplacements et 3 pour la
slection des botiers. Ce nombre est conforme au nombre de fils dadressage ncessaire daprs
la taille mmoire. En effet une mmoire de 64 K mots de 16 bits = 216 emplacements mmoire de
16 bits il faut 16 fils pour adresser ces 216 emplacements.
3Nombre de botiers = taille mmoire / taille dun botier = 8 K x 8 bits / 4 k x 2 bits = 8
botiers mmoire de 8 K octets mmoire organise en octets on prendra un bus de donnes
8 bits.
Taille dun mot mmoire = 8 bits
Taille dun emplacement mmoire dun botier = 2 bits
taille dun mot mmoire / taille dun emplacement du botier = 8 bits / 2 bits = 4 il
faut assembler les botiers 4 par 4 pour former des mots de 8 bits.
Taille dun botier=4K emplacements de 2 bits=212 emplacements mmoire il faut 12
bits pour adresser les 212 E.M.
Comme les botiers sont groups quatre par quatre on aura donc (8 botiers / 4) = 21
groupes de botiers. Pour les adresser il faut 1 fil supplmentaire pour la slection des groupes de
botiers.
On aura donc au total 13 fils dadresses : 12 pour adresser les emplacements et 1 pour la
slection des botiers. Ce nombre est conforme au nombre de fils dadressage ncessaire daprs
la taille mmoire. En effet une mmoire de 8 K octets = 213 emplacements mmoire dun octet
il faut 13 fils pour adresser ces 213 emplacements.
Exercices : TD N3
-les mmoires-
-114-
D0
D1
D2
D3
D4
D5
D6
D7
Botier 0
4K
x
4 bits
CS0
CS1
Botier 1
4K
x
4 bits
CS2
Botier 2
4K
x
4 bits
CS3
Botier 3
4K
x
4 bits
Dcodeur
1 vers 2
A12
A11
A1
A0
CS0
Botier 0
8K
x
1 octet
CS1
Botier 1
8K
x
1 octet
CS14
Botier 0
8K
x
1 octet
Botier 15
8K
x
1 octet
CS15
Dcodeur
3 vers 8
A15
A14
A13
A12
A1
A0
Exercice 9-2 : module mmoire de de 64 Kmots de 16 bits avec des botiers de 8K x 1 octet
Exercices : TD N3
-les mmoires-
-115-
D0
D1
D2
D3
D4
D5
D6
D7
Botier 0
4K
x
2 bits
CS0
CS3
Botier 3
4K
x
2 bits
CS4
Botier 4
4K
x
2 bits
CS7
Botier 7
4K
x
2 bits
Dcodeur
1 vers 2
A12
A11
A1
A0
-116-
Exercices : TD N3
-les mmoires-
-117-
Caractre et
Code
code hexa
Binaire
D 44
0100 0100
I 49
0100 1001
M 4D
0100 1101
A 41
0100 0001
0100 1110
C 43
0100 0011
H 48
0100 1000
E 45
0100 0101
sp 20
0010 0000
2 32
0011 0010
3 33
0011 0011
Sp 20
0010 0000
J 4A
0100 1010
A 41
0100 001
N 4E
0100 1110
V 56
0101 0110
Sp 20
0010 000
0 30
0011 0000
0 30
0011 0000
? 2F
0010 1111
N 4
Code Binaire
32---25
24---17
16 ----9
8 ---- 1
00
01
02
Sp
Sp
03
04
Sp
Code Binaire
32---25
24---17
16 ----9
8 ---- 1
00
01
02
Sp
Sp
03
04
sp
7
-a-Code ISO : chaque caractre est cod sur 7 bits nombre de bits : 20 x 7 = 140 bits
-b-Code Baudot : On doit rajouter 3 caractres de contrle pour les passages de chiffre lettre et
vice versa. Donc au total on aura 23 caractres. Chacun est cod sur 5 bits nombre de bits
total : 23 x 5 = 115 bits.
8
Pour la transmission on rajoute chaque caractre 3 bits. Donc en code iso on va rajouter
20 x 3 = 60 bits, et en code baudot on rajoute 23 x 2 = 46 bits. La nombre total de bits reus par
limprimante est : en code iso : 140 + 60 = 200, et en code baudot : 115 + 46 = 161.
Exercices : TD N3
-les mmoires -
-118-
EXERCICE 11
Enonc
On considre un ordinateur disposant d'une antmmoire de temps de cycle 100ns. Sa
mmoire centrale a un temps de cycle de 600ns.
1 Quel est le temps de cycle apparent de la mmoire si on suppose un taux de russite de 80%?
2 Quel est le gain relatif par rapport une architecture sans antmmoire?
Solution
Taux de russite de 8 0 % signifie que dans 80 % des cas, quand on accde en mmoire
cache on y trouve la donne cherche, et dans les 20% restants, on est oblig daccder en plus
en ram pour trouver la donne.
tca = 80% x tc_mmoire_cache +
EXERCICE 12
Enonc
On considre un systme de pagination, la table des pages est en M.C. qui a un temps de
cycle de 750ns. Le temps d'accs au tampon de traduction d'adresses est de 50ns. La probabilit
de trouver l'adresse cherche dans le tampon (taux de russite) est de 80%.
1 Quel est le temps d'accs moyen une donne se trouvant en M.C. ?
2 Quelle est la dgradation (perte de vitesse) par rapport un systme sans pagination.
Solution
Dans 80% des cas : accs au tampon pour traduction de ladresse logique en adresse
physique + accs en ram pour lire la donne
Dans 20%des cas : accs au tampon sans succs (lquivalent physique de ladresse
logique fournie ne se trouve pas dans le tampon) + accs la table des pages (en ram) pour lire
ladresse physique + accs en ram pour lire la donne.
Le temps de cycle apparent : tca = 80 % (50 + 750) + 20 % (50 + 750 + 750) = 950 ns
tca > tc_ram perte de vitesse. Perte = (|tca tc_ram|) / tc_ram = |950 750| / 750
= 0,26 26 %.
Exercices : TD N3
-les mmoires -
-119-
Remarque : La pagination est trs souvent associe au mcanisme de mmoire virtuelle. Le but
est alors daugmenter la taille mmoire, au dtriment de la vitesse (dgradation). Pour calculer le
temps de cycle apparent, ici nous navons tenu compte que du mcanisme de pagination et avons
suppos que la donne est toujours en mmoire RAM. En ralit la dgradation est beaucoup
plus importante car souvent la donne ne se trouve pas en RAM mais en mmoire virtuelle. Il
faut alors rajouter laccs la mmoire virtuelle (mmoire de masse) qui prend beaucoup plus de
temps quun accs la ram.
EXERCICE 13
Enonc
On considre un systme de mmoire virtuelle bas sur la pagination. La table des pages
est en mmoire centrale (ram). De plus lordinateur possde un tampon de traduction dadresses.
Donner les diffrentes squences daccs aux mmoires qui peuvent tre ncessaires, sachant
que :
-
si une traduction dadresse de page est dans le tampon de traduction, alors la page est
obligatoirement prsente en mmoire centrale ;
dans la table des pages ne se trouvent que les adresses de pages virtuelles se trouvant en ram.
Solution
On considre un systme de mmoire virtuelle bas sur la pagination, avec l'utilisation
Exercices : TD N3
-les mmoires -
-120-
EXERCICE 14
Enonc
On considre maintenant un systme de mmoire virtuelle bas sur la pagination. La table
des pages est en mmoire centrale (ram). De plus lordinateur possde un tampon de traduction
dadresses et une mmoire cache. Donner les diffrentes squences daccs aux mmoires qui
peuvent tre ncessaires, ainsi que quelques squences qui ne se produiront jamais, sachant que :
-
si une traduction dadresse de page est dans le tampon de traduction, alors la page est
prsente en mmoire centrale ;
si un bloc de mmoire est dans la mmoire cache, alors la traduction dadresse de sa page est
obligatoirement dans le tampon de traduction ;
dans la table des pages se trouvent toutes les adresses de pages virtuelles se trouvant en ram.
Solution
Les squences suivantes sont possibles :
(lecture de la donne)
Accs la ram
(lecture de la donne)
Exercices : TD N3
-les mmoires -
-121-
Accs au disque
(lecture de la page donc de la donne)
Il faut remarquer que, si la traduction de page est prsente dans le tampon, on n'accde
jamais la mmoire virtuelle sur disque, car si une traduction dadresse de page est dans le
tampon de traduction, alors la page est obligatoirement prsente en mmoire centrale. De mme
si elle est absente, il est inutile de consulter l'antmmoire (mmoire cache) car l'antmmoire ne
contient qu'une copie des donnes se trouvant en mmoire centrale (ram) auxquelles on a accd
rcemment. Par consquent si le bloc de mmoire se trouvait dans la mmoire cache, alors la
traduction dadresse de sa page se trouverait obligatoirement dans le tampon de traduction.
On peut donc citer comme squences impossibles:
tampon de traduction (succs) + table des pages en ram avec succs (page prsente) + disque
tampon de traductions dadresses (succs) + table des pages en ram (succs) + antmmoire
EXERCICE 15 :
Enonc
Une unit de disque dur possde 4 plateaux (disques) ayant les caractristiques suivantes:
une tte de lecture/criture par disque, une seule tte fonctionne une instant donn, 600 pistes
par disque, 20 secteurs/piste, 512 octets par secteur, vitesse de rotation de 3000 tours par minute.
1 Quelle est la capacit de stockage de l'unit de disque?
2 Quel est son taux de transfert?
3 Quel est le temps de transfert d'un secteur ?
Solution
1Capacit de stockage :
4 x 600 X 20 x Ko = 24000 Ko
Vr = 3000 tpm = 3000 tr/1mn = 3000 tr / 60s = 50 tr/s
2Taux de transfert :
a)premire mthode : Taux de transfert = Vitesse de rotation x capacit dune piste en
octets:
-122-
1s
1secteur = Ko
EXERCICE 16 :
Enonc
On veut calculer le temps moyen de transfert en mmoire centrale d'un fichier squentiel
stock sur disque dur. Les changes entre l'unit de disque et la M.C. s'effectuent par
l'intermdiaire d'un canal. Une zone de mmoire tampon associe au disque reoit les caractres
lus sur le disque; le transfert vers la M.C. s'effectue soit quand la zone tampon est pleine, soit
quand le fichier a t entirement lu. Les caractristiques sont les suivantes:
Temps moyen de positionnement de la tte de lecture/criture sur une piste: 20 ms; *Temps de
dpt ou de soulvement de la tte de lecture criture: 5 ms ; * Vitesse de rotation du disque:
6000 tr/mn; *Vitesse de transfert du canal: 10 Mo/s; * Taille du tampon: 5000 octets; * Taille du
fichier 3000 caractres; *Codage d'un caractre: 8 bits; *Tous les caractres du fichier sont sur
un mme cylindre; *Nombre de cylindres: 128; *Nombre de secteurs par piste: 50; *Taille d'un
secteur: 1024bits dont 24 sont reservs pour un pointeur vers le secteur suivant.
1Quel est le nombre de secteurs ncessaire au stockage du fichier?
2Quel est le temps moyen pour lire un secteur, en supposant que la tte est sur la bonne
piste?
3Quel est le temps moyen de transfert de ce fichier entre le disque dur et la M.C. ?
4 Mme question que 3 si le fichier a une taille de 6000 caractres.
5Mme question que 3 si le fichier de 3000 caractres est stock sur 3 cylindres
diffrents
6Mme question que 3 si le fichier de 3000 caractres est toujours stock sur 1 seul
cylindre, et la taille du tampon est de 500 octets.
Solution
1 Nombre de secteurs thorique (ncessaire) :
= taille fichier/taille dun secteur = (3000 caractres x 8 bits)/1024 =23,44 = 24 secteurs
Capacit utile dun secteur = 1024 24 = 1000 bits
Nombre de secteurs utiles (ncessaire) = (3000 x 8 )/1000 = 24 secteurs
2-a) Temps de lecture ou de transfert dun secteur :
1mthode : en passant par le taux de transfert
Taux de transfert = Vr x capacit dune piste
Exercices : TD N3
-les mmoires -
-123-
Donc: 1 tr = 50 secteurs 10 ms
1 secteur x seconde
2-b) Le temps moyen de positionnement sur le bon secteur: on admet gnralement quune fois
quon est sur la bonne piste, il faut faire un demi tour pour trouver le bon secteur.
1tour 10 ms
tour x ms
x = 10 /1 x = 5 ms.
Le temps moyen de lecture dun secteur est gal au temps de positionnement sur le bon
secteur + le temps de lecture ou de transfert du secteur.
Tmoy = 5 ms + 0,2 = 5,2 ms.
3 -Tout le fichier sur un mme cylindre on na pas besoin de dplacer le dispositif des ttes
de lecture/criture dune piste une autre, puisque toutes les
pistes sont lues en mme temps.
-De plus Taille fichier < taille du tampon
tout le fichier lu sur le disque est transfr
la mmoire tampon dun seul coup.
Par consquent le temps de transfert du fichier du disque vers la mmoire tampon est la
somme de 4 termes:
A= temps moyen de positionnement de la tte de lecture sur le bon cylindre (ou piste) +
B= temps de dpt de la tte sur la piste +
C= temps de lecture des 24 secteurs ( cd du fichier) +
D= temps de transfert du tampon vers la mmoire centrale.
A= temps moyen de positionnement sur la bonne piste ou le bon cylindre = 20 ms (daprs
lnonc).
B= temps de dpt de la tte sur la piste = 5 ms .
C= nombre de secteurs x temps moyen de lecture dun secteur = 24 x 5,2 = 124,8 ms.
Exercices : TD N3
-les mmoires -
-124-
Calcul de D:
Vitesse de transfert ou dbit du canal: 10 Mo/s = 10.106 /s.
Taille du fichier : 3000 caractres = 3000 .
1 seconde 10.106
x seconde 3000
Exercices : TD N3
-les mmoires -
-125-
SOLUTIONS DU TD CHAPITRE 4
LE PROCESSEUR OU CPU
PARTIE 1 : RAPPELS DE COURS
ENONCES
1Quels sont les principaux lments de lunit centrale et du processeur central dun
ordinateur ?
2Que sifnifient les sigles CPU, UAL, ALU, UC, PC, PSW, SP ?
3Quelle est linterprtation quon doit donner aux contenus des registres PC, RI, et ACC ?
Conclure quant leur taille.
4Comment peut-on amener lordinateur excuter un programme dont la premire instruction
se trouve lemplacement mmoire dadresse (01F)16 ?
5Supposons quune instruction se trouve ladresse n de la mmoire. Que se passe-t-il si aprs
avoir excut cette instruction, le compteur de programme prend toujours la valeur n ?
SOLUTIONS
EXERCICE 1
1Lunit centrale se compose du processeur central et de la mmoire centrale.
2Le processeur central se compose essentiellement de lunit arithmtique et logique, lunit de
commande , et les registres.
EXERCICE 2
-CPU : Central Processing Unit. Cest lunit Centrale de traitement, appele encore processeur
central ou tout simplement processeur.
-UAL : Unit Arithmtique et Logique, est la traduction franaise du sigle anglais ALU.
-ALU : Arithmetic and Logic Unit.
-UC : Unit de commande. Pour viter la confusion avec labrviation de lunit centrale, on
utilisera de prfrence labrviation anglaise CU: Command Unit.
-PSW : Processor Status Word. Cest le mot dtat du processeur. Cela dsigne le registre des
indicateurs ou registre dtat.
-PC : Program Counter. Cest le compteur de programme ou compteur ordinal.
-SP : Stack Pointer. Pointeur de pile.
Les trois dernires abrviations dsignent des registres.
Exercices : TD N4
-Le processeur ou CPU -
-125-
EXERCICE 3
EXERCICE 4
Comme le compteur de programme donne ladresse de la prochaine instruction
excuter, pour excuter notre programme dont la premire instruction est stocke ladresse
(01F), il suffit donc de mettre dans le PC (compteur ordinal) la valeur (01F).
EXERCICE 5
Compte tenu du rle du PC qui donne toujours ladresse de la prochaine instruction en
squence, le processeur excutera constamment et sans sarrter cette mme instruction qui se
trouve lemplacement mmoire dadresse n. On dit quon entre alors dans une boucle infinie (le
programme ne sarrte pas).
Exercices : TD N4
-Le processeur ou CPU -
-126-
PARTIE 2 : EXERCICES
EXERCICE 6 : adresses symboliques et langage assembleur de mimosa
(Mmoire organise en mots de 16 bits)
Enonc
Substituer toutes les adresses symboliques (adresses dinstruction et doprande) de
lexemple, des adresses numriques hexadcimales. Montrer en mme temps comment il faut
placer le programme en mmoire, si on suppose que la premire adresse utiliser est (100)h, et
que les variables a et b seront stockes respectivement aux adresses (110)h et (111)h.
LIGNE LABEL MNEMONIQUE
1
2
3
4
5
6
7
8
9
10
11
12
aprt :
SAUT,E
SAUT
lirea :
ENTREE
STOCKER
bprt :
SAUT,E
SAUT
lireb :
ENTREE
STOCKER
ADD
Res_prt : SAUT,S
SORTIE
HALTE
ADRESSE
lirea
aprt
a
lireb
bprt
b
a
Res_prt
SIGNIFICATION
Si E vrai, aller lirea
Aller aprt
Mettre ds ACC contenu du tampon dentre
Mettre (ACC) ladresse mmoire de a
Si E vrai, aller lireb
m(b) := (ACC)
ACC := (ACC) + (m(a))
Si S vrai, aller Res_prt
Mettre (ACC) dans Tampon de sortie
111
MNEMONIQUE
SAUT, E
SAUT
ENTREE
STOCKER
SAUT, E
SAUT
ENTREE
STOCKER
ADD
SAUT, S
SORTIE
HALTE
OPERANDE
(valeur du champ adresse)
102
100
110
106
104
111
110
109
-127-
Adresse
Mmoire
100
101
102
103
104
105
106
107
108
109
10A
10B
Code
Opration
D
8
F2
4
D
8
F2
4
6
E
F3
F5
Adresse
ou Oprande
102
100
110
106
104
111
110
109
-7-b-STOCKAGE EN MEMOIRE
Remarque : le tiret ( - ) signifie valeur non dfinie, sa valeur est
indiffrente.
Adresse
Contenu des emplacements Contenu des emplacements
Mmoire
mmoire en Hexadcimal
mmoire en Binaire
100
D102
1101 0001 0000 0010
101
8100
1000 0001 0000 0000
102
F2-1111 0010 ------ -----103
4110
0100 0001 0001 0000
104
D106
1101 0001 0000 0110
105
8104
1000 0001 0000 0100
106
F2-1111 0010 ------ -----107
4111
0100 0001 0001 0001
108
6110
0110 0001 0001 0000
109
E109
1110 0001 0000 1001
10A
F3-1111 0011 ------ -----10B
F5-1111 0101 ------ ------
EXERCICE 8: Dsassemblage
Enonc
Lordinateur mimosa possde en mmoire le contenu indiqu par le tableau.
Adresse mmoire (hexa)
100
101
102
103
104
Contenu
0001 0000 0001 1001
0100 0001 0000 0101
0001 0000 0010 0000
0110 0001 0000 0101
1111 0101 indiffrent
Exercices : TD N4
-Le processeur ou CPU -
-128-
Contenu
Hexa
1019
4105
102
1020
103
6105
104
F5--
Code
valeur Signification
Mnmonique oprande
NOMBRE
019
ACC := (19)16 (mettre dans ACC la valeur (19)16 cd (25)10 )
STOCKER
105
m(105) := (ACC) (mettre dans @ mmoire (105)16 le contenu
de ACC)
NOMBRE
020
ACC := (020)16 (mettre dans Acc la valeur (020)16 cd (32)10
)
ADD
105
ACC := ACC + m(105) (ajouter au contenu de ACC celui de
l@ 105
HALTE
-Arrt du programme
Code
Mnmonique
STOCKER
CHARGER
NEG
STOCKER
CHARGER
ADD
106
HALTE
valeur de
ADR
10B
10A
10C
10B
10C
Signification
Sauvegarder le contenu de laccumulateur (la valeur de a)
Charger dans laccumulateur le nombre b
Calculer loppos de b
Et stocker (-b) ladresse (10C)16
Rcuprer la valeur de a dans laccumulateur
Faire laddition du contenu de ACC avec le contenu de
l@ (10C)16 (cd a + (-b) )
Exercices : TD N4
-Le processeur ou CPU -
-129-
Solution
Numro du
cycle
1
Phase de
recherche
x
Phase
dexcution
x
x
x
x
x
PC
RI
ACC
m(105)
101
101
102
102
103
103
104
104
105
105
1019
1019
4105
4105
1020
1020
6105
6105
F5-F5--
non dfini
(019)16
(020)16
(039)16
non dfini
non dfini
non dfini
(019)16
non dfini
non dfini
non dfini
non dfini
non dfini
non dfini
Adresse
mmoire
100
101
102
103
104
105
106
Code
Valeur
Mnmonique ADR
EFFACERN
-CHARGER
109
SAUT,N
104
SAUT
105
NEG
-STOCKER
109
HALTE
--
Signification
N := 0
ACC:=m(109)
Si N=1 alors PC := 104
PC := 105
ACC := - ACC
m(109):=ACC
2 Adresse
mmoire
100
101
102
103
104
105
106
Contenu
hexadcimal
F9-2109
9104
8105
F1-4109
F5--
Exercices : TD N4
-Le processeur ou CPU -
-130-
Phase
Phase
recherche excution
x
x
x
PC
Bus @
RI
100
100
101
--100
101
ACC
m(109)
Observations
------F9--
Bus
data
------F9--
----------
nbre a
F9--
F9--
----
@dbutPC
(PC)bus@
M(100)RI et
PC=PC+1
Et dcodage F9
Bit N = 0
x
2
x
x
101
102
101
101
F9-2109
2109
-------
102
109
2109
2109
----
102
109
2109
nbre a
nbre a
102
103
102
2109
9104
9104
nbre a
x
x
x
x
x
103
104
x
103
x
x
9104
103
8105
8105
105
105
106
105
105
4109
106
109
4109
106
109
106
107
106
106
F5--
F5--
107
106
F5--
F5--
x
x
x
4109
(PC)bus@
m(100)ACC
et PC=PC+1
et dcodage
Partie @de RI
Bus @
m(109)ACC
(PC)bus@
m(102)RI
et dcodage
N=0
(instruction
suivante ne rien
faire)
(PC)bus@
m(103)RI
et dcodage
Saut l@105
(PC)bus@
m(105)RI
et dcodage
Partie basse de RI
Bus @
m(109)ACC
(PC)bus@
m(106)RI
et dcodage
Arrt
Phase
Phase
recherche excution
x
x
x
x
x
x
x
x
x
x
x
PC
Bus @
RI
Bus data
ACC
m(109)
100
100
101
101
101
102
102
102
102
103
104
--100
------F9-F9-F9-2109
2109
2109
2109
9104
9104
------F9-F9--
---------------------nbre a
nbre a
101
101
109
109
102
2109
2109
nbre a
9104
Exercices : TD N4
-Le processeur ou CPU -
-131-
x
x
104
105
105
105
106
106
106
106
107
107
x
5
x
x
x
x
X
x
x
104
9104
F1-F1-F1-4109
4109
4109
4109
F5-F5--
105
105
109
109
106
106
106
F1-F1-4109
- (nbre a)
F5-F5--
- (nbre a)
- (nbre a)
0
@
056
Pile
//////
055
056
Pile
//////
120
054
055
056
Pile
//////
250
120
Pile
053
054
055
056
//////
(A)
250
120
054
055
056
Pile
//////
250
120
5
@
055
056
Pile
//////
120
056
Pile
//////
SP
056
SP
055
SP
054
SP
053
SP
054
SP
055
SP
056
PC
120
PC
200
PC
300
PC
311
PC
321
PC
250
PC
120
Exercices : TD N4
-Le processeur ou CPU -
-132-
Dtaillons les phases 2 et 5, cest dire avant et aprs excution des instructions
correspondantes.
Instruction 2 : SAUTSP 300
-1-Contenu de PC = 24F -2-Dpt du contenu de PC sur le bus d@ -3-Lecture mmoire (le
contenu de l@24F cd le code de linstruction SAUTSP 300 est mis dans le registre RI) et
incrmentation du PC (PC : = PC + 1 = 250) -4-Dcodage du contenu de RI cd interprtation
de SAUTSP 300 -5-Execution de linstruction cd :
a)criture du contenu de PC dans la pile pour sauvegarder l@ de retour criture de
250 sur le haut de la pile ;
b)dcrmentation de SP SP : = SP 1 = 055 1 = 054 ;
c)dpt du contenu de la partie adresse du registre RI dans le PC ( @300 qui est
ladresse du sous programme) : (PC) : = 300.
Instruction 5 : RETSP
Phase recherche :
-1-(PC)=350
= 054 + 1 = 055.
Exercices : TD N4
-Le processeur ou CPU -
-133-
Mnmonique Oprnde
CHARGER
5FF
DECD
SAUT,C
104
SAUT
100
ENTREE
HALTE
Signification
Mettre le contenu du registre dtat dans ACClecture du mot dtat
Le bit 0 du mot dtat est mis dans le carry par un dcalage droite
Si C=1 priphrique prtaller l@104 pour lopration dE (lecture)
Sinon C=0priphrique non prtretour l@100 pour relire le mot dtat
Lecture de la donne sur le priphrique dentreACC :=(tampon dentre)
Arrt du programme
101
CHARGER
5FF
102
103
104
105
SAUT,N
SAUT
ENTREE
HALTE
104
101
Mnmonique
NOMBRE
STOCKER
CHARGER
ET
Adresse
08
200
5FF
200
104
SAUT,Z
102
105
ENTREE
106
HALTE
Signification
Mettre le nombre 8 ( valeur binaire 00001000) dans ACC
m(200) : = (ACC) ( le nombre 8 est stock l@200 )
Lecture du registre dtat (mettre mot dtat dans ACC )
ET logique du contenu de ACC avec contenu de ladresse 200, et le rsultat se
trouve dans laccumulateur. Compte tenu de la valeur binaire contenue dans
l@200, cela revient mettre zro tous les bits du mot dtat sauf le bit 23
Si Z=1le rsultat du ET logique est nulpriphrique non prtretour
l@102 pour relire le mot dtat
Sinon Z=0 Lecture de la donne sur le priphrique dentre
ACC := (tampon dentre)
Arrt du programme
Exercices : TD N4
-Le processeur ou CPU -
-134-
boucle :
Adresse
mmoire
100
101
102
103
104
105
106
107
108
109
10A
10B
10C
Mnmonique Oprande
NOMBRE
00
STOCKER
R0
NOMBRE
300
STOCKER
R1
NOMBRE
256
STOCKER
R2
CHARGER
R1
STOCKER
R0
EFFACERZ
DEC
R2
SAUT,Z
sortie
INC
R1
EFFACERC
Signification
ACC :=(00)16
(Ro) := (ACC)(R0) := 0 valeur min = 00
ACC := @ de dbut de la table
R1 := @ de dbut de la table
ACC := 256 (longueur de la table)
R2 := ACC
ACC := le 1lment de la table
R0 := le 1lment de la table
Mettre zro le bit Z
R2=R2-1 (dcrmentation du nbre dlment lus)
Si Z=1on a lu tous les lments de la tablesortir de boucle
R1=R1+1 (dans R1 l@du prochain lment de la table)
Remettre zro le bit carry C
Exercices : TD N4
-Le processeur ou CPU -
-135-
Etiquette
sortie :
Adresse
mmoire
10D
10E
10F
SUB
ZAUT,C
CHARGER
R1
boucle
R1
110
111
112
113
114
STOCKER
SAUT
CHARGER
STOCKER
HALTE
R0
boucle
R0
400
Exercices : TD N4
-Le processeur ou CPU -
-136-
SOUS PROGRAMME
Numro
instructio
3
4
5
6
Adresse
mmoire
400
--420
422
----44F
450
----500
Mnmonique
Adresse
--------NOMBRE
PSHA
------NOP
PULA
--------RETSP
----435
-----------
Exercices : TD N4
-Le processeur ou CPU -
-137-
Solution
(Par souci de clart et pour conomiser lespace, la structure de la RAM est bascule droite
par une rotation de 90 droite)
REGISTRES
Ninstruction Contenu Contenu
et phase
PC
RI
Etat Initial
200
1 recherche
1excution
2 recherche
2excution
3 recherche
3excution
4 recherche
4excution
5 recherche
5excution
6 recherche
6excution
7 recherche
7excution
8 recherche
8excution
9 recherche
9excution
221
221
231
400
422
422
423
423
450
450
451
451
501
231
236
236
251
251
CONTENU PILE
(- - signifie ladresse est vide )
Adr Adr Adr Adr Adr Adr
4F
4E
4D 4C
4B
4A
Contenu
SP
Adr
50
50
--
--
--
--
--
--
--
--
50
4E
4E
4C
4C
4C
4C
4A
4A
4A
4A
4C
4C
4E
4E
50
50
50
-2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
2F
----
-B3
B3
B3
B3
B3
B3
B3
B3
B3
B3
B3
B3
B3
B3
----
---23
23
23
23
23
23
23
23
23
23
------
---1111111111------
-------43
43
43
43
--------
-------5555--------
-------------------
-------------------
F7-0400
1435
F7-F4-FF-F6-FF-F5--
Adr
49
Contenu
21
F2
61
F3
41
F2
FD
Adresse
mmoire
307
308
309
30A
30B
30C
30D
contenu
72
F5
A3
00
42
F4
F5
contenaient
respectivement
les
Exercices : TD N4
-Le processeur ou CPU -
-138-
Solution
Mnmonique
Numro
Ligne
1
CHARGER
Oprande
ADD
1F3
3
4
5
6
7
8
STOCKER
DECD
SUB
SAUT,Z
STOCKER
HALTE
1F2
CONTENU DES
ADRESSES
APRES EXECUTION
DU PROGRAMME
Adr Adr Adr Adr
1F2 1F3 2F4 2F5
12
5
2
4
2F5
300
2F4
Instruction
Manquante :EFFACERZ
1F2
Mnmonique
ENTREE
STOCKER
ENTREE
STOCKER
EFFACERZ
EFFACERC
SUB
SAUT, Z
Oprande
300
301
300
20A
Adresse
mmoire
200
201
202
203
204
205
206
207
Contenu
hexadcimal
F2-4300
F2-4301
FA-FC-7300
A20A
Exercices : TD N4
-Le processeur ou CPU -
-139-
Adresse
mmoire
208
209
20A
20B
20C
20D
20E
20F
210
211
Mnmonique
Oprande
SAUT, C
SAUT
CHARGER
SAUT
CHARGER
ADD
DECD
STOCKER
SORTIE
HALTE
20C
200
300
20F
300
301
400
Adresse
mmoire
208
209
20A
20B
20C
20D
20E
20F
210
211
Contenu
hexadcimal
C20C
8200
2300
820F
2300
6301
FD-4400
F3-F5--
Exercices : TD N4
-Le processeur ou CPU -