Académique Documents
Professionnel Documents
Culture Documents
Objectifs
Ce cours veut permettre à l’étudiant d’acquérir les connaissances de base sur les
ordinateurs et leurs fonctionnements. A cet effet, il poursuit les objectifs suivants :
■ Familiariser l’étudiant avec l’ordinateur et lui permettre d’en expérimenter les
différents types d’utilisation ;
■ Acquérir le vocabulaire spécialisé et les notions de base sur les micros ordinateurs ;
■ Connaître les périphériques actuellement sur le marché et leurs principales
applications ;
■ Identifier les différents types d’opérations et de traitements effectués par les
micros ordinateurs ;
■ Comprendre le fonctionnement interne des micros ordinateurs ;
■ Développer une conscience critique en analysant les effets de cette technologie sur
la société et les individus.
1
Architecture des ordinateurs /MOKA-17/08/10
Chapitre I. Introduction sommaire à l’informatique et aux ordinateurs
I. Historique
L’histoire de l’ordinateur nous provient du fait que l’homme par nature paresseux, a toujours
cherché à améliorer sa façon de calculer afin de limiter ses erreurs et pour économiser son temps.
a) Les précurseurs : le boulier chinois (3ème millénaire AJC) apparaît come la 1ère machine
typiquement digitale que l’homme ait utilisée pour s’aider à résoudre ses problèmes
arithmétiques. Il faisait déjà l’addition, la soustraction et la multiplication.
• En 1642, la Pascaline, inventée par le mathématicien et philosophe français Blaise
PASCAL fut la 1ère véritable machine à calculer sous forme de roue dentée. Cette roue
comportait 10 positions ( de 0 à 9) et chaque fois qu’une roue passait de la position 9 à la
position 0, la roue immédiatement à gauche avançait automatiquement d’une position
pour tenir compte de la retenue. La Pascaline connaissait l’addition et la soustraction.
• Le philosophe et mathématicien Allemand LEIBNIZ lui a ajouté la multiplication et la
division.
• L’anglais Babbage inventa un type de machine à « programme extérieur », capable
d’exécuter un programme extérieur, donc interchangeable.
• Mais c’est l’allemand Von NEUMANN, qui a fait faire vers 1945 le pas décisif à la
mécanisation du traitement digital de l’information en introduisant deux concepts
nouveaux :
b) Le programme enregistré : les machines de l’époque possédaient des éléments de mémoire
capables de conserver au cours du traitement des résultats partiels en vue de leur utilisation
ultérieure. Von Neumann a eu l’idée d’utiliser les mémoires du calculateur pour emmagasiner
également le programme. D’où le nom de machine à « programme enregistré » donné au nouveau
type de calculateur. Tous les ordinateurs fonctionnent sur ce principe.
c) La rupture de séquence : La machine était munie d’une instruction appelée « branchement
conditionnel » ou « rupture de séquences conditionnelles » pour exécuter telle ou telle partie du
programme suivant la valeur (positive ou négative) du résultat précédemment obtenu.
En considérant les multiples dimensions (les techniques, les matériels, les logiciels et les usages) de
l’informatique, trois informatiques se sont succédé depuis le 1er ordinateur.
Naissance de l’informatique
2
Tubes à vide
Première informatique Informatique
militaire
Transistors
Transistors
Deuxième informatique Informatique
dans les
entreprises
Circuits intégrés
Révolution
informatique
Miniaturisation
Troisième informatique
Microprocesseurs Micro
informatique
La 1ère informatique va de 1938 (ou 1945) jusqu’au milieu des années 1960. Son histoire se déroule
essentiellement aux USA et sa technologie est celle du tube à vide et des 1ers transistors. Elle est
surtout marquée par le rôle que les investissements militaires y ont joué. Ce rôle est décisif dans le
lancement de l’informatique.
La 2ème informatique (1964-1974) est celle où les ordinateurs se sont répandus dans les entreprises
et les administrations, puis dans la société tout entière. Sa technologie est celle des transistors et des
circuits intégrés. Pendant cette période, il y a eu le passage de l’informatique militaire au domaine
3
Architecture des ordinateurs /MOKA-17/08/10
civil. Le point d’entrée de cette période est la mise au point de l’ordinateur IBM 360 (International
Business Machine) en 1964.
L’invention de la micro-informatique (1974) et la fabuleuse montée en puissance de tous les
ordinateurs inaugurent la période de la 3ème informatique caractérisée par la miniaturisation des
composantes ayant fait des progrès fulgurants grâce à la technologie des microprocesseurs (mis au
point en 1971)
1. Générations d’ordinateurs
Certains auteurs parlent de générations d’ordinateurs pour décrire l’évolution matérielle depuis
1938. Le tableau suivant montre la correspondance entre les générations d’ordinateurs et
l’évolution de la technologie.
4
Chapitre II. Informatique : les concepts de base
2. Terminologies et définitions
2.1. Informatique : C’est la science du traitement rationnel, notamment par machines automatiques
de l’information considérée comme support des connaissances et des communications, dans les
domaines technique, économique, social, etc....
2.2. Information : C’est l’objet à la base de la communication des connaissances (phénomènes
physiques, chimiques, électriques, sonores, etc..). En un mot, qui nous informe de quelque chose
Exemples :
-Le bruit d’un moteur (qui nous informe que notre invité est là)
-La présence de nuages dans le ciel (présage la pluie)
-La couleur du papier tournesol (rouge ou bleue) qui nous indique que la solution est acide ou
basique.
L’ordinateur n’ayant pas d’oreille pour entendre le bruit d’un moteur, ni d’yeux pour voir les
nuages ou la couleur du papier tournesol, il faudra que ces informations soient représentées sous
une forme conventionnelle que l’ordinateur peut comprendre et traiter. On dit alors qu’on a une
donnée.
2.3. Donnée : On appelle donnée une information représentée sous forme conventionnelle
compréhensible et traitable par l’ordinateur. Cette représentation ou codage se fait en utilisant des
symboles, des lettres alphabétiques (A,B,C,D,E,F....Z), des chiffres (0,1,2,...9) et des caractères
spéciaux (+,-, :,*,. &,#, etc..)
Exemple :
■ I=15 pour une intensité
■ R=1.5 pour une résistance
■ Car1= ‘15’ : pour donner la valeur 15 à la donnée Car1
■ 0645/1A/02 (numéro d’une carte d’identité)
■ 222-24-55/641-79-61 (numéros de téléphone)
Les éléments de traitement constituent la partie centrale, tandis que ceux d’entrée, de sortie, et
d’enregistrement constituent la partie périphérique.
La partie centrale est constituée par un boîtier appelé unité centrale, la partie périphérique se
divise en périphériques :
• D’entrée (clavier, souris, scanner), e t c . )
• De sortie (écran, imprimante, e t c . )
• D’entrée-sortie (disques et mémoires de masse)
Les deux parties sont reliées par des ports appelés interfaces ou bus
7
Architecture des ordinateurs /M0KA-17/08/10
Presque tous les éléments de traitement se trouvent dans une plaque à l’intérieur de l’unité
centrale. Cette plaque est appelée carte mère. La carte mère est l’ordinateur proprement dit sans
tenir compte des interfaces et des mémoires de masse.
On distingue 2 types de cartes mères :
• Les cartes mères de marque connue (IBM, COMPAQ, e t c . )
• Les cartes mères standards (produites par des constructeurs sans nom)
Unité Centrale
UCC
- clavier
MC - Ecran
- Souris, crayon optique
Imprimante
A
V
lecteurs de cartes - Table traçante
I I . Le m atériel
C’est l’ordinateur physique et toutes ses composantes.
Un ordinateur apparaît au premier abord comme constitué :
a) D ’un processeur (microprocesseur U nité Centrale) qui effectue les traitements
b) D ’une mémoire Centrale où ce processeur range les données, les programmes et les résultats de
ses traitements. Elle est constituée principalement de mémoire vive et de mémoire morte.
1. La mémoire vive ou ( R.A.M. pour « Random Access Memory ») : mémoire à accès aléatoire.
Elle stocke les programmes, les données et les résultats, de manière temporaire. Son contenu est
8
perdu lors d’une coupure /panne de courant électrique ou par fausse manœuvre. Donc, il est
nécessaire de sauvegarder régulièrement son contenu sur disque.
2. La mémoire morte (ou R.O.M pour « Read Only Memory »). Elle n’est accessible qu’en lecture
et possède les procédures nécessaires au démarrage et au fonctionnement matériel de la machine.
Elle ne peut être modifiée en aucun cas. Elle est la propriété du constructeur.
3. La mémoire cache : de capacité plus faible que la RAM. Elle sert de « tampon » entre la RAM et
le microprocesseur, qui travaille plus vite que la vitesse d’accès à la RAM.
c) De périphériques (unités d’entrée/-sortie) permettant l’échange d’informations avec l’extérieur.
Pour certains auteurs, l ’unité centrale comprend la mémoire centrale.
Tous ces constituants sont reliés entre eux par l’intermédiaire d’un bus qui est l’artère centrale qui
leur permet de s’échanger les données.
Les bus
Les composants du CPU communiquent entre eux avec les composants externes au CPU à l’aide de
liaisons électriques (fils, circuits imprimés), qui permettent le transfert des informations électriques
binaires. Ces ensembles de fils constituent les bus. On distingue trois sortes de bus
1. Le bus de données
Il permet le transfert de données (instructions ou données à traiter) entre les composants du système.
Selon le nombre de fils que compte le bus, il peut véhiculer des mots de 8, 16, 32 et 64 bits. Ce nombre de
bits détermine la largeur du bus. Ces bus peuvent être bidirectionnels. La fréquence du bus des données
augmente la vitesse du processeur.
2. Le bus des adresses
Il permet de véhiculer les adresses. La largeur du bus des adresses détermine la taille de la mémoire
directement adressable. Ce bus est unidirectionnel (CPU mémoire)
3. Le bus des commandes
Il permet aux microcommandes générées par le séquenceur (organe de commande d’un ordinateur qui
déclenche les différentes phases de l ‘exécution des instructions) de circuler depuis ce dernier vers les
divers composants du système.
2.1. L’Unité Centrale de traitement (UCT) ou PROCESSEUR (CPU : Central Processing Unit)
C’est le « cœur » même de l’ordinateur, sa partie vitale, le composant principal et essentiel de la
carte mère. C’est dans l’UCT que s’effectuent tous les traitements. Elle reçoit les données, les traite
et délivre les résultats (sous le contrôle d’un programme). Elle est caractérisée par :
■ Le nombre d ’opérations par seconde : qui définit la cadence ou la fréquence de l’horloge du
CPU. Cette fréquence se mesure en nombre d’oscillations par seconde et s’exprime en
mégahertz (1 million d’oscillations/seconde)
■ La largeur du bus des données : nombre de données manipulées ensemble
■ La largeur du bus des adresses : capacité de mémoire adressable en même temps
Exemple : un processeur cadencé à 50MHZ effectuera 50 millions d’opérations par seconde.
9
Architecture des ordinateurs /M0KA-17/08/10
1. L’unité de commande et de contrôle UCC (CCU pour Command and Control Unit) ou Unité
d ’instructions :) : C’est le chef d’orchestre, le centre nerveux du système. Elle commande les
autres unités (en leur ordonnant ce qu’elles doivent faire) et contrôle leur bon fonctionnement.
Son fonctionnement décrit la procédure de traitement d’un programme par l’ordinateur comme
suit :
1. Extraction d’une instruction de la mémoire ;
2. Interprétation de l’instruction pour savoir sa nature et l’organe approprié pour son exécution ;
3. Appel de l’organe approprié pour l’exécution de l’instruction ;
4. Si l’instruction en cours n’est pas la dernière, le processus recommence au point 1, sinon il
s’arrête.
2. L’unité Arithmétique et Logique UAL( Arithmetic and Logical Unit (ALU) : Son rôle est
d’effectuer les opérations arithmétiques (+,-,/...etc.) et les opérations logiques (comparaison :
>, < ...) demandées par l’UCC. Elle renvoie les résultats à l’UCC.
L’ensemble des opérations s’effectue en langage binaire
3. La mémoire Centrale (MC ou Central Memory)) ou mémoire principale.
Une mémoire est un dispositif capable d’enregistrer des informations (codées en binaire dans un
ordinateur) , de les conserver (le plus longtemps possible ou nécessaire) puis de les restituer (à la
demande.)
Son rôle est de contenir les programmes en cours d’exécution et les données en cours de
traitement. C’est une mémoire rapide. Les données qu’elle contient s’effacent en cas de coupure
de courant ou d’arrêt de l’ordinateur. On dit qu’elle est volatile. Elle est généralement de petite
capacité.
Une mémoire est divisée en plusieurs milliers ou millions de compartiments (appelés octets) dans
lesquels on stocke les données à raison d’un caractère par octet. La capacité d’une mémoire est le nombre
d’octets (place mémoire pour stocker un caractère) qu’elle contient. On exprime cette capacité en KO
(kilo-Octets =1024 octets), en MO (mégaoctets= 1024 KO=1024X 1024=1.048.576 Octets, en GO (Giga
Octets=1024 MO= 1024X1024X1024= 1 .073. 741. 824 octets
Organisation générale d’une Unité Centrale :
Unité de commande
et de contrôle Instructions Mémoire
Centrale
10
Schématiquement, l’UCC extrait de la mémoire centrale la nouvelle instruction à exécuter. Elle analyse
cette instruction et établit les connexions électriques correspondantes dans l’UAL. Elle extrait de la MC
les données sur lesquelles porte l’instruction. Elle déclenche le traitement de ces données dans l’UAL.
Eventuellement, elle range le résultat dans la MC.
Il existe deux grands types de mémoire dans un système informatique :
• La mémoire centrale ;
• Les mémoires auxiliaires ou mémoires de masse
Nous y reviendrons dans un chapitre spécial
2.2. Les unités périphériques
Elles désignent toutes les com posantes de l’ordinateur, situées à l’extérieur de l’UCT. Elles ont
pour rôle de permettre à l’ordinateur de communiquer avec l’extérieur. Parmi les périphériques,
on peut distinguer :
11
Architecture des ordinateurs /MOKA-17/08/10
2. Le logiciel standard d’application (PROGICIEL). Il existe sur le marché des logiciels standards
prêts à être utilisés. On les appelle des progiciels. Ils se divisent en plusieurs catégories :
■ Les éditeurs de texte : effectuent des travaux de secrétariat sur l’ordinateur.
Exemple : Word, WORDPERFECT, WORDSTAR.
■ Les tableurs: sont utilisés pour faire des tableaux avec plusieurs fonctions de calcul
Exemple : EXCEL, LOTUS, MULTIPLAN, SUPERCALC...
■ Les gestionnaires de bases de données : servent à créer des ensembles complexes de
données
Exemple : DBASE, ACCESS, REFLEX..
■ Les dessinateurs ou graphiques : servent à effectuer des dessins
Exemple : CHART, PAINT, DESIGNER,
■ De présentation : POWERPOINT.
Remarque : Il existe d’autres catégories de progiciels tels que les logiciels de communication, les
PAO (Publications Assistées par Ordinateur) e t c .
On appelle progiciel intégré, un progiciel qui à lui seul, assume les fonctions de plusieurs
catégories de progiciel.
Par exemple, si le même progiciel est en même temps éditeur de texte, tableur et gestionnaire de
données, on dit qu’il est un intégré.
Exemple : FRAMEWORK, W orks.
12
IV. A rc h ite c tu re d ’un ordinateur
L’architecture d’un ordinateur est la description de ses organes fonctionnels et de leurs
interconnexions. Elle peut être vue à plusieurs niveaux : niveau entrée /sortie, du CPU, ou même au
niveau d’un réseau d’ordinateurs. Elle définit avec précision la fonctionnalité de chaque niveau. La
technologie correspond aux techniques de réalisation de ces différents éléments
1 C o n fig u ra tio n d ’un ord in a te u r
Elle correspond à l’organisation adoptée pour mettre ensemble et faire fonctionner divers éléments
matériels : CPU, Mémoire, imprimante, modem (qui permet de communiquer avec d’autres ordinateurs
éloignés en utilisant une ligne téléphonique).
2. Les réseaux : L’avènement des réseaux a permis de relier plusieurs ordinateurs entre eux pour qu’ils
communiquent. Ces ordinateurs peuvent être reliés soit dans un voisinage proche par exemple dans le
même bâtiment (LAN ou Local Area Network : réseau Local), soit éparpillés à travers une même ville
(Réseau métropolitain ou MAN= Metropolitan Area Network), soit dispersés de part le monde (réseau de
transmission public ou WAN : Wide Area Network) et Internet
3. U tilisa tio n de l’ord in a te u r
L’utilisation d’un ordinateur sous-entend l’exécution d’un programme par celui-ci. Les logiciels se
décomposent en deux familles :
■ Les programmes du système
■ Les programmes d’application
Les utilisateurs utilisent les programmes d’application, les programmeurs d’application développent ces
programmes en utilisant les fonctionnalités offertes par le système d’exploitation et les autres programmes
systèmes (compilateurs, SGBD), systèmes de télécommunication e t c .) .
Le Système d’exploitation qui est le plus important des programmes systèmes gère toutes les ressources
informatiques (UCT, MC, périphérique..) et il est généralement spécifique à une famille d’ordinateurs
compatibles alors qu’un programme d’application s’occupe de réaliser une application désirée. Il est
possible de programmer des applications variées sur un même type d’ordinateurs, mais chaque type
d’application a ses exigences qui lui sont propres. Ce qui conduit à spécialiser les ordinateurs, en les
regroupant en 3 grands types :
■ O rdinateurs pour calculs scientifiques : le calcul scientifique nécessite des ordinateurs ayant des
possibilités de calcul très important les nombres à virgule flottante ou des vecteurs. On les appelle
des Supers ordinateurs. Ces calculateurs utilisent de grandes bibliothèques de sous programmes
pour les calculs mathématiques usuels (logarithme factoriel, trigonométrie, calcul matriciel, e t c . )
■ Ordinateurs destinés à la gestion : la gestion nécessite des capacités de stockage et de traitement
d’un très grand volume d’informations structurées en enregistrements. Par exemple, un système
qui gère des listes d’adresses a des enregistrements du type : nom de la personne, prénoms,
adresse postale, N° de téléphone e t c . Ces enregistrements se trouvent dans des fichiers qui sont
stockés sur disque ou bande magnétique.
Une approche plus sophistiquée de la gestion d’informations consiste à utiliser des SGBD qui
s’occupent du stockage des enregistrements et de l’accès à ceux-ci en permettant des interrogations
assez complexes.
■ Ordinateurs pour la conduite de processus : la conduite de processus regroupe des problèmes
d’acquisition et d’organisation de données, de surveillance et de contrôles dans de multiples
domaines. Par exemple : machines à laver, unité de production industrielle. Elle demande de petits
ordinateurs ayant des possibilités d’entrées-sorties spéciales très développées.
13
Architecture des ordinateurs /MOKA-17/08/10
5. Les différents modes de fonctionnement de l’ordinateur
■ Fonctionnement en mode séquentiel (ou par train de travaux) : L’ordinateur exécute
séquentiellement les problèmes (les uns après les autres) sans permettre d’interaction avec les
utilisateurs : exemple le DOS
■ Fonctionnement en temps partagé : Ce système traite plusieurs problèmes à la fois (plusieurs
utilisateurs peuvent travailler en même temps sur un seul ordinateur)
■ Fonctionnement en temps réel : C ’est un système où le temps joue un rôle important,
l’ordinateur devant traiter les informations dans un temps relatif à l’application. Exemple : le
système de conduite de processus travaille en temps réel ( les commandes électroniques d’un
avion)
Les différents modes de fonctionnement ne sont pas incompatibles et peuvent coexister sur un seul
système.
14
Chapitre IV. Structure ou présentation de l’information
I. L’information élémentaire
2.2. Les données : On distingue des données numériques pouvant être l’objet
d’une opération arithmétique, des données de type date et des données non
numériques (caractères ou textes)
15
Architecture des ordinateurs /MOKA-17/08/10
Donc, un système de numération se caractérise par sa base qui est le nombre de
caractères ou symboles utilisés pour représenter ses quantités.
On l’écrit :
2*103 + 7* 102 +4*101 +5*100 +2*10-1+ 1*10-2 +4 *10-3= 2745,214
Exercice 1: A l’aide d’un tableau, donner l’équivalent des 15 premiers chiffres décimaux en
binaires
Binaire Décimal
23 22 21 20
0
1
2
3
4
5
6
7
8
9
10
11
16
Exercice 2 : Donner en binaire et en 4 positions les nombre suivants :
- 5=
- 12=
- 9=
Exemple 3 : Le chiffre 7 donne quel nombre en binaire ?
7=
Donc, dans les puissances de 2, un trou est représenté par 0 tandis que la
présence de la puissance est représentée par 1.
17
Architecture des ordinateurs /M0KA-17/08/10
Dans le système à 4 bits, le nombre de combinaisons possibles des bits est
24 Donc, ce système peut représenter 16 nombres ( le 1er est 0 ou toutes les
positions de bits sont à 0 et le dernier est = 15 ou 24-1 où toutes les
positions de bits prennent la valeur 1).
Exemple : 3 7 28 =
4. Conversion
C’est le passage d’un système de numération à un autre
8-1=1/8
18
On divise respectivement le nombre décimal à convertir par la base du système
de numération en reportant à chaque fois le reste jusqu’à ce que le quotient soit
nul pour la partie entière et par multiplication successive par la base de
numération pour la partie fractionnaire.
Exemple 1 :
125,62510 à convertir en base 2, en base 8 et base 16.
La partie entière s’effectue comme précédemment. Pour la partie fractionnaire, on
effectue les multiplications successives par 2 :
0.625X2 =1,250 Poids binaire : 1X2-1
0.250 X2=0.500 Poids binaire : 0X2-2
0.500X2=1,000 Poids binaire : 1X2-3
Le résultat est 0,101
On a donc 125,62510 = 1111101,1012
Exemple 2:
Soit le nombre 20,375 en base 10. Donnez sa représentation en base 2.
Pour la partie entière, on obtient X1=101000., X2=0,375
Pour la partie fractionnaire X2, on effectue les multiplications successives par 2
Ainsi on a :
0.375 *2= 0.75
0.75 *2=1.5
19
Architecture des ordinateurs /MOKA-17/08/10
0.5*2=1
Donc X 2=0.0112
En définitive, 20 .375=X+X2= 10100,0112
Exemple 3 : 70w = N8 ? □= 64+6=82+6*80=1068
4.3. Du système binaire au système octal
Le nombre binaire est divisé en groupe de 3 bits en partant du chiffre de poids le plus
faible, puis de convertir les triplets en leur équivalent octal
Exemple : 101/ 110/ 100/1102 = 5 6 4 6
2 6 6 7 , 7 28 5 B 7, E 8
Ces bases donnent non seulement une représentation condensée des nombres
binaires, mais autorisent en plus une conversion immédiate avec la base 2.
Exercice à domicile:
1. On donne 10110,012, convertir en en décimal, octal et hexadécimal
2 . On donne 57654,138, convertir en binaire, décimal, hexadécimal
3. On donne 2FDC12,A32, convertir en décimal, octal, binaire
4. On donne 8210, convertir en binaire, octal, hexadécimal
5. Compléter le tableau suivant
Systèmes de numération
Binaire Octal Décimal Hexadécimal
10111,011
ABCF12,43
73,153
7EFCB1,83
21
Architecture des ordinateurs /MOKA-17/08/10
5. Les codes
L’action de faire correspondre à des nombres, des lettres ou des mots, un groupe
de symboles s’appelle codage. Et le groupe de symboles s’appelle Codes.
Il existe plusieurs systèmes de codage. Les plus usités (utilisés) sont :
5.1 Le code BCD (BINARY CODED DECIMAL): décimal codé binaire également
appelé code 8-4-2-1. C’est le plus répandu. On représente chaque chiffre d’un
nombre décimal par son équivalent binaire en 4 bits. Ainsi, les 4 bits nécessaires
pour coder 1 chiffre décimal reçoivent des poids selon leur position,
respectivement 8 = 23 pour le bit n °4 ; 4=22 pour le bit N° 3 ; 2=2* pour le bit
n °2 et = 20 pour le bit n° 1.
Exemple : Soit 87410 , trouver son code BCD
8= 1000
7= 0111
4= 0100
Donc 87410 = 100001110100 DCB
Exercice : Remplissez le tableau suivant
Décimal BCD Décimal BCD
0 513
112 601
284 700
301 814
41 912
5.2.Le code 2-4-2-1 : associe aux digits successifs les poids 2,4,2 et 1 de telle
sorte que 1110 se lit : 1X2+1X4+1X2+0X1=8
5.3.Le code majoré de 3 ou excédent3.Le code majoré de 3 d’un nombre
décimal s’obtient de la même manière que le code BCD, sauf qu’on ajoute 3 à
chaque chiffre avant de le convertir. Autrement dit, chaque chiffre décimal est
codé séparément en son équivalent binaire augmenté de 3
Exemple : soit 12910 , trouver son code majoré de 3
1 2 9
+3 4 5 12
0100 0101 1100= 010001011100c m -3
Exemple soit 87410, trouver son code majoré de 3
8 7 4
+3 11 10 7
1011 1010 0111 = 101110100111 cm-3
5.4.L’EBCDIC (Extended Binary Coded Decimal Interchange Code) : ou Décimal
Codé Binaire Etendu) : est une extension du BCD . Il utilise 8 chiffres binaires.
5.5. L’ASCII (American Standard Code for Information Interchange) : le caractère
est codé sur 7 bits. Tous, ou presque tous les terminaux actuels utilisent le jeu de
caractères ASCII. Il renferme les 26 lettres minuscules et majuscules de
l’alphabet, les 10 chiffres, les caractères spéciaux (voir tableau).
Table des codes ASCII.
23
Architecture des ordinateurs /MOKA-17/08/10
Poids forts . 000 001 010 011 100 101 110 111
(octal)
Poids faibles (hexadécimal)
0000 Space 0 P p
0001 ! 1 A Q a q
0010 “ 2 B R b r
0011 3 C S c s
0100 4 D T d t
0101 5 E U e u
0110 6 F V f v
0111 7 G W g w
1000 ( 8 H X h x
1001 ) 9 I Y i y
*
A J Z j Z
B + ; K [ k {
C , < L \ l ‘
D - = M ] m }
E > N A n ~
F / ? O o DEL
Exemple: Coder le mot POTS:
5.6 Opérations avec le BCD
Décimal : 129
Binaire : 10000001 =27 +20=128+1
BCD : 0001'0010'1001
On a besoin de 4 bits pour coder les 10 chiffres décimaux. Mais les valeurs
représentées sur 4 bits sont au nombre de 24 = 16. Il y a donc 6
configurations inutilisées. Donc, il faut en tenir compte pour les opérations
arithmétiques. C'est pourquoi, pour l'addition, il faut ajouter 6 chaque fois
que le résultat est > 9
Exemple1 : Décimal Binaire BCD
15 01111 0001 '0101 (=15)
+18 +10010 +0001'1000 (=18)
33 100001 00101101 = (?) > 9
(=33) + 0110 (6)
0011'0011 (=33)
Décimal Binaire BCD
27 11011 0010'0111 (=27)
+19 +10011 +0001 '1001 (=19)
46 101110 0100'0000 = (?) > 9 (a)
(=46) + 0110 (6)
0100'0110 (=46)
24
(a) Il faut a jo u te r 6 à ce m em bre car il re porte son unité à gauche qui fa it q u ’il est >
9. Pour la soustraction, il faut retrancher 6 chaque fois que le résultat est < 0. Nous y reviendrons
6. Le format des nombres en machine
Un opérateur arithmétique ne peut traiter que des nombres qui lui sont présentés selon un format
bien défini.
Il existe 2 grands types de formats qui sont : le format fixe (format en virgule fixe) et le format
flottant ( format en virgule flottante)
6.1 Le format à virgule fixe
Les ordinateurs n'ont pas de virgule au niveau de la machine. On traite donc les nombres comme
des entiers, avec une virgule virtuelle gérée par le programmeur qui doit faire attention aux
débordements(dépassements) de capacités.
Exemple : 11010 ( 5 chiffres)
+ 10010 (5 chiffres)
= 10 1100 (6 chiffres)
Débordement (ou dépassement de capacité (overflow)
La gestion de la virgule par programme n ‘étant pas facile, on préfère, en général, avoir recours à
l'arithmétique en virgule flottante (floating point).
6.2 Le format à virgule flottante
La représentation à virgule flottante consiste à représenter les nombres sous la forme suivante :
N = SM X BE avec
S= signe du nombre (le + est généralement représenté par 0, le moins (-) par 1.
M= mantisse : Elle peut être considérée comme entière, la virgule étant supposée immédiatement
à droite, ou comme fractionnaire, la virgule étant supposée immédiatement à gauche. Elle doit être
normalisée, c'est-à-dire qu'elle comporte le maximum de chiffres significatifs : le premier bit à
droite de la virgule est à 1
(exemple 0.10110)
Pour normaliser un nombre, on décale sa mantisse vers la gauche jusqu'à ce que le premier digit
soit significatif, et on diminue l'exposant du nombre de décalages qui ont été nécessaires.
B =base du système de numération (2,8,10, 16, ...)
9
Exemple : Représenter le nombre 125X10
0 0 0 1 2 5 0 6
0 0 1 2 5 0 0 5
0 1 2 50 0 0 4
1 2 5 00 0 0 3
Il faut noter que le nombre de digits de la mantisse est directement lié à la précision
des calculs alors que le nombre de digits de l'exposant détermine les nombres
extrêmes que la machine peut représenter.
Il y a plusieurs conventions de représentation des nombres flottants binaires en
machines. De façon générale, on place les informations les plus significatives en tête :
d'abord le signe, ensuite l'exposant, ensuite la mantisse :
S exposant mantisse
Ainsi 125X106 s'écrira comme indiqué sur la (fig a) dans la première convention
(125000X103 ) et comme indiqué sur la (fig b) dans la deuxième convention (0,125 X109
car on a divisé le nombre par 10-3).
0 3 12 5 0 0 0 0 9 01 2500 0
26
7. L’a rith m é tiq u e binaire
Les opérations arithmétiques en binaire s’effectuent suivant les mêmes principes que les
opérations en base 10.
a) Addition binaire
Table d’addition_________________________ Table de multiplication______________
0 1 A 0 1
A
B
B
0 0 1 0 0 0
1 1 10 1 0 1
B
B
0 0 1 0 ? ?
1 ? 0 1 0 1
Donc, on utilise le bit de signe pour indiquer si le nombre est positif ou négatif.
Dans le cas des nombres positifs, les bits restants représentent toujours la grandeur du nombre
binaire. Dans le cas des nombres négatifs, il y trois façons de représenter le nombre : la notation
en grandeur exacte, la notation en complément à 1 et la notation en complément à 2.
Solution:
a) Comme c'est un nombre positif, la grandeur (13) est la grandeur exacte, soit 11012 . en ajoutant le bit de
signe, on obtient +13= 0 1101
b) Etant donné qu'il s'agit d'un nombre négatif, la grandeur (9) est écrite au moyen du C2
910 = 10012
0110 complément à 1
28
+1 Ajouter 1 au bit de poids le plus faible
0111 Complément à 2
Donc -9 devient 1 0111
c) On a -3 = 10011
11100 Complément à 1
+1 Ajouter 1 pour avoir le C2
1 1101 Complément à 2
EXERCICE : Chacun des nombres suivants est le complément à 2 d'un nombre binaire signé. Trouvez sa
valeur décimale : a) 01100 ;b)11010 ;c)10001.
Solution : a) Le bit de signe est 0, donc, un nombre positif. Les 4 autres bits représentent la grandeur exacte
du nombre. Donc, 11002=1210. Donc, il s'agit du nombre +12
b) Le bit de signe est 1, donc, nombre négatif. Les 4 autres bits sont le C2 de la grandeur
On 11010 Nombre négatif original
00101 Complément à 1
+1 Ajouter 1
00110
Comme le résultat de la complémentation à 2 est +6, le nombre original doit être -6. Donc
11010a=-610
d) En suivant la même procédure qu'en b) il vient
10001 Nombre négatif original
01110 Complément à 1
+1 Ajouter 1
01111
Donc 10001 = -15
Cas spécial de la notation en complément à 2 : Quand un nombre signé a 1 comme bit de signe et des
0 comme bit de grandeur, son équivalent décimal est -2 N, où N est le nombre de bits de grandeur.
Exemple :
1000=-23=-8
10000=-24=-16
100000=-25=-32
Et ainsi de suite
3. Opérations en complément à 2.
Il s'agit d'étudier comment les machines numériques additionnent et soustraient quand les nombres
négatifs sont écrits en complément à 2.
1. Addition en complément à 2.
Nous distinguons 4 cas :
1er cas : Addition d’un nombre positif et d’un nombre négatif plus petit en valeur absolue.
Exemple : Soit l'addition de +9 et -4
Notation exacte de +9 : 0 1001
Notation exacte de - 4 : 1 0100
Notation en complément à 2 de -4 : 1 1011
+ 1
1 1100
+9 0 1001
-4 + 1 1100
1 0 0101 = +5
4 bits
Report de Bit rejeté Bit de signe
29
Architecture des ordinateurs /M0KA-17/08/10
Principe : Les deux nombres doivent avoir le même nombre de bits. Le nombre positif est codé en notation exacte,
tandis que le nombre négatif est codé en notation complément à 2. On procède ensuite à l'addition. Si un report est
produit au moment de l'addition du dernier rang, ce report est toujours rejeté. Si le résultat est positif, nous avons
directement la valeur exacte.
2ème cas : Addition d ’un nombre positif et d’un nombre négatif plus grand en valeur absolue.
Exemple : Soit l ’addition de -9 + 4
Notation en complément à 2 de -9 : 1 0111
Notation en valeur exacte de + 4 : 0 0100
-9 1 0111
+4 +0 0100
1 1011
Puisque le bit de signe de la somme est 1, donc c’est un nombre négatif. La réponse réelle est donc le
complément à 2 de la grandeur exacte
- Complément à 1 : 1 0100
- Complément à 2 : 1 0100+1 = 1 0101 = -5
3ème cas : Addition de deux nombres négatifs
Exemple : Addition de - 9 et de -4
Notation en complément à 2 de -9 : 1 0111
Notation en complément à 2 de -4 : 1 1100
-9 1 0111
-4 1 1100
11 0011
Report de Bit rejeté Bit de signe
Ici aussi, le bit de signe est 1, donc le résultat est négatif. La réponse réelle est donc le complément à 2 du
résultat obtenu.
- Complément à 1 : 1 1 100
- Complément à 2 : 1 1100+1 = 1 1101 = -13
4ème cas : Addition de deux nombres égaux et opposés
Exemple :Addition de -9 et de +9
Notation exacte de + 9 : 0 1001
Notation en complément à 2 de -9 : 1 0111
-9 0 1001
+9 1 0111
1 0 0000 = +0
Bit rejeté Bit de signe
Exercices :
1. Convertir en décimal les nombres binaires non signés suivants :
a) 1 0110 b) 1 0001101
2. Convertir en binaire les nombres décimaux suivants :
a) 3710 b) 18910 c) 21,62510
3 .Convertir en décimal les nombres hexadécimaux suivants :
a) 9216 b) 1A 616 c) 37FD16 d) 2 C016
4. Exprime en ASCII l'instruction X=25/Y
5. Les nombres suivants sont signés et écrits en complément à 2. Trouve leur valeur décimale
a) 11110111 b) 10001
6. Effectuer l'opération +13-6
7. Effectuez les opérations suivantes :
a)11101 +1010
b)10101-10010
c)11011 -10010
d) 111X101
8. Effectuer l'opération a+b en BCD
a= 0001 1001 ;
30
b=0010 0111 ;
Exprimez la réponse en décimal.
31
Architecture des ordinateurs /M0KA-17/08/10
Solution
1. Conversion en décimal
a) 101102 = 1.2 4+0 .2 3+ 1.2 2+ 1.21+0 .20=2210
b) 10001101= 14110
2) Conversion en binaire
3710=1001012
18910 =101111012
21,625=21+0,625
Pour la partie fractionnaire
0,625 X 2= 1,25- 1
0.25X2 =0,50 -0
0.5X2 = 1 - 1
Donc 21.625=10101,1012
V érification=21,625
3) Convertir en décimal les nombres hexadécimaux suivants :
a) 9216 = 9.161+2.160=14610
b)1A6w= 1.162+10.161+6.160=42210
c) 37FD16= 3.163+7.162+15.161+13.160=1433310
d) 2C016= 2.162+12.161+0.160= 71410
4) Convertir en ASCII
X = 2 5 / Y
1011000 0111101 0110010 0110101 0101111 1011001
5) a) 1 1110111
Complément à 1 : 1 0001000
Complément à 2 : + 1 = 1 0001001=-9
а) 10001
Complément à 2= 1 1111=-15
б) Effectue l’opération : 13-6
+13 : valeur exacte : 0 1101
-6:valeur exacte : 10110 ; complément à 1 de -6 : 1 1001, complément à 2 = 11010
+13 01101
-6 + 11010
1 0 0 111 = +7
Bit rejeté Bit de signe
Conversion en BCD = 46
32
2) Soustraction en complément à 2
L’opération de soustraction qui porte sur des nombres exprimés en complément à 2 est en réalité une
opération d’addition.
A - B
Diminuante Diminuteur
Le principe consiste à changer le signe du diminuteur et retrouver ainsi les opérations d’addition.
(+A) - (+B) = A-B
(+A)- (-B) = A+B
(-A) -(+B)=-A-B
(-A)-(-B) = -A +B
Exemple : Effectuez la soustraction suivante : +9 -(+4)
Diminuande (+9) 01001
Diminuteur (+4) 00100
Changez le diminuteur pour sa version en C2 ( 11100), ce qui représente -4. Maintenant additionnez-le au
diminuande
01001 (+9)
+ 11100 (-4)
1 00101 (+5)
La retenue est rejetée, le résultat est donc 00101 =+5
4) Arithmétique en hexadécimal
Les nombres hexadécimaux sont utilisés dans la programmation en langage machine.
a) Addition en hexadécimal
Ce type d’addition est effectué de la même manière que l’addition décimale. Le chiffre le plus grand étant F
au lieu de 9.
Exemple : 5816 5816
+ 2416 4B
7C A 3 car B+8= 11+8= 19=16+3
3 AF
+ 23C
= 5EB car F+C=15+12=27=16+11=16+B
b) Soustraction en hexadécimal
Le diminuateur hexadécimal est complémenté à 2, puis additionné au diminuante, et tout report provenant de
l’addition est rejeté.
Il existe 2 manières de trouver le complément à 2 d’un nombre hexadécimal :
- On peut convertir le nombre hexadécimal en binaire, puis prendre le complément à 2
de son équivalent binaire et reconvertir la réponse en hexadécimal
- On peut soustraire chaque chiffre hexadécimal de F, puis ajouter 1 au résultat.
Exemple : Trouver le complément à 2 du nombre hexadécimal 73 A
1ère méthode
- Equivalent binaire de 73 A= 0111 0011 1010
- Complément à 1 : 1000 1100 0101
- Complément à 2 : 1000 1100 0101+1= 1000 1100 0110 = 8C6
2ème méthode
F F F
7 3 A
8 C 5
1
33
Architecture des ordinateurs /MOKA-17/08/10
8 C 6
Exercices :
1. Convertir les nombre 135x0et 239,73710 en binaire, octal, hexadécimal
2. Effectuez en hexadécimal les opérations suivantes :
a) A56+E48
b) 3A57-2BE6
c) 7A3XE5
Réponse
1. a) 135=100001112 = 2078=8716
b) 239,73710 = 11101111,101111001012=357,57128=EF,BCA16
2.
a) A56+E48=189Ecar A+E= 10+14=24=16+8 =18
b) 3A57-2BE6=E71 car 5-E=5+16-14=21-14=7 et A-(B+1)= A-12=10+16-12=E
c) 7A3XE5=6D4CF
34
CHAPITRE VI. Portes logiques et
l'algèbre de Boole
(Mathématicien anglais : invention
1847)
1. Introduction : Les ordinateurs sont des systèm es reposant entièrement sur un
fonctionnement logique. On appelle variable b ooléen n e ou variable logique ou binaire toute
quantité susceptible de prendre deux valeurs 0 et 1.
Une porte logique ou fonction logique de b ase est un circuit qui peut avoir plusieurs entrées
mais ayant une seule sortie ne prenant que deux valeurs (0 ou 1). Les entrées d'une porte
logique sont aussi d es variables booléennes.
Porte
Logique
A
B
Entées C sortie
Table de vérité
Entrées Sorite
A B S
0 0 ?
0 1 ?
1 0 ?
1 1 ?
3) O pérations lo g iq u es :
Dans l ‘algèbre de Boole on ne trouve que 3 opérations élémentaires : l’addition logique, la
multiplication logique et l’inversion logique (ou complémentation).
A S=A+B
Table d e vérité
A B S
0 0 0
0 1 1
1 0 1
1 1 1
La fonction OU positionne sa sortie à 1 si l’une ou l’autre de ses entrées est à 1 ou sur les
deux.
A
S = A.B
B
36
Table de vérité
A B S
0 0 0
0 1 0
1 0 0
1 1 1
c) L’inversion logique ou com plém entation dite aussi opération NON ( NOT en anglais).
Le symbole habituel est - et la porte logique est Non (NOT).
La fonction Non ou inverseur positionne sa sortie à 1 si son entrée est à 0, et vice - versa. On
la note A/ ou A
0
Le symbole : e S =e
Table de vérité
E S
0 1
1 0
Le rôle de cette porte est de fournir une information opposée à l’information d’entrée en sortie.
d) La porte logique : NON-ET (NOT AND ou NAND ). Elle est considérée comme l’inverse de
ET.
La fonction NON-ET est très souvent utilisée dans le concept des circuits électroniques. Elle
est formée par l’association de deux circuits logiques ET et NON.
O '
Le symbole : A
B S = A. B
Table de vérité
A B S
0 0 1
0 1 1
1 0 1
1 1 0
37
Architecture des ordinateurs /M0KA-17/08/10
A
0
S= A +B
B
Table de vérité
A B S
0 0 1
0 1 0
1 0 0
1 1 0
Cette fonction est formée par l’association de deux circuits logiques OU et NON. Cet ensem ble
va fournir en sortie une information logique 0 quand l’une au moins de ces entrées est portée
au niveau logique 1.
f) La porte logique OU - Exclusif (ex clu sif OR :XOR).
B
Table de vérité
A B S
0 0 0
0 1 1
1 0 1
1 1 0
La fonction XOR positionne sa sortie à 1 si l’une ou l’autre de s e s entrées est à 1 mais pas les
deux simultanément.
b) Théorèmes de Morgan :
A +B=A . B
A .B=A +B
Compléter le tableau
A B
A B A+B A +B A.B A.B A.B A +B
0 0
0 1
1 0
1 1
Constantes:
A + 1= 1
A .1=A
A .0=0
Théorème de l’absorption:
A + AB = A car A(1+b)=A
A(A + B) = A car AA+AB=A+AB=A(1+B)=A
Nom de la
Entrée Sortie
porte
A B S
0 0
0 1
OU
1 0
1 1
0 0
0 1
ET
1 0
1 1
NON OU 0 0
0 1
1 0
39
Architecture des ordinateurs /MOKA-17/08/10
1 1
0 0
0 1
NON ET
1 0
1 1
0
NON
1
5) Notion d’expression algébrique d’une fonction
Il est possible à partir de la table de vérité d'une fonction d'écrire l'expression algébrique de celle-ci.
Soit la table de vérité suivante:
Entrée Sortie
A B S
0 0 0
0 1 0
1 0 1
1 1 0
On remarque que la sortie vaut 1 lorsque A vaut 1 et B vaut 0, l'expression algébrique de cette fonction est donc:
S= A.B
Prenons maintenant la table de vérité suivante:
Quand dans la fonction, on n ’interprète que les valeurs 1, alors on parle de la forme disjonctive de la table de
vérité. Et quand on interprète seulement les valeurs 0, on parle de la forme conjonctive de la table de vérité.
La table de vérité des portes logiques constituent un circuit appelé logigramme.
Exercice : l.Compte tenu du logigramme ci-dessous avec les variables logiques A,B,C:
B
S
40
o
o
C
O C )
A
o
B
F=A.B + (B+C)
C
-Donnez la table de vérité de la fonction logique F
- Trouvez la fonction logique sous la forme disjonctive de la sortie sur la table de vérité.
41
Architecture des ordinateurs /MOKA-17/08/10
Exercice à domicile :
V
1. Soit A, B, C des variables booléennes. On considère l ’opération notée définie par :
A B=A + B ( + = ou exclusif)
A B A B
0 0 1
0 1 0
1 0 0
1 1 1
A
B S
42
Exercice 2 :
Démontrer en utilisant la factorisation et les propriétés de l ’algèbre de Boole les égalités suivantes.
1°) a) a b c+ a b c + a b c + a b c= b
b) a b c+ab c+abc+ab c=a(c+b)
c) bd+cd+c d + ab cd + a bc = d + a bc
Exercice 3
Dessinez les circuits suivants
1) X=BC+AC+AB
2) Y=A+BCD
Exercice 4 :
O
1) Simplifiez l’expression y=AB D+A B D = AB ( D+D)= AB.1=AB
2) Simplifiez l’expression Z=(A + B) (A+B) =A.A+A.B+ B.A +B.B= A.B+AB+ B=B(A+A+1)=B
3) Simplifiez X=ACD + ABCD= CD(A+AB) = CD(A+AB)= CD(A+B)=ACD+BCD
Exercice 5
1) Simplifiez X= A B C + ABC + ABC
2) Simplifiez X= A B C + A B C + A B C +A B C
43
Architecture des ordinateurs /M0KA-17/08/10
Solution 1
1)Table de vérité de S
A B C S
A AB
0 0 0 1 0 0
0 0 1 1 0 1
0 1 0 1 1 1
0 1 1 1 1 1
1 0 0 0 0 0
1 0 1 0 0 1
1 1 0 0 0 0
1 1 1 0 0 1
2 °) S= a. b + b. c
Table vérité de S
A B C
a. b b. c b. c S
0 0 0 0 0 1 1
0 0 1 0 0 1 1
0 1 0 0 0 1 1
0 1 1 0 1 0 0
1 0 0 0 0 1 1
1 0 1 0 0 1 1
1 1 0 1 0 1 1
1 1 1 1 1 0 1
Solution 2 :
Propriétés :
a+a=1 ; a.a=0 ;1+a=1 ; a+ab=a(1+b)=a
a) a b c+ a b c/ + a/ b c/ + a/ b c= b
=ab(c+c/)+a/b(c/+c)=ab+a/b
1 1
=ab+ a/b=b(a+a/) = b
1
b) a b/c/+abc/+abc+abc/=a(c/+b)
=ac/(b/+b)+ab(c+c/)
= ac/+ab=a(c/+b)
c) bd+cd+c/d+abc/d+a/bc=d+a/bc
=bd+d(c+c/)+abc/d+a/bc
1
=d(b+1+abc/)+a/bc=d+a/bc
1
44
3) Solution :
1) X.0=0 B
0
C
A
X
4) X.X=0 X
0
0
5) X+0=X X
X
0
6) X+1=1 X
1
1
7) X+X=X X
X
8) X+X=1 X
45
Architecture des ordinateurs /MOKA-17/08/10
46
Chapitre VII. Les mémoires
7.1. Généralités et définition
Une mémoire est un dispositif capable d’enregistrer, de conserver et de restituer des informations (codées
en binaire dans un ordinateur).
Les éléments de mémoire d’un ordinateur se répartissent en plusieurs niveaux caractérisés par leur
capacité (nombre d’informations qu’elles peuvent contenir) et leur temps d’accès.
La figure ci-dessous illustre les différents types de mémoire et montre la hiérarchie existant entre les
différents niveaux.
CPU
Registres
Antémémoire
Mémoire centrale
Mémoire d’appui
Mémoires auxiliaires
• Disques
• Tambours
• Bandes
• Cassettes
7. 2 Classification technologique
La quasi-totalité des mémoires utilise le stockage binaire. C ’est dire que l ’information stockée la plus
élémentaire est le bit, l ’élément de stockage correspondant étant souvent appelé p o in t mémoire.
Du point de vue du point mémoire, on distingue trois (3) grands types de mémoires :
47
Architecture des ordinateurs /M0KA-17/08/10
7.2.1 Les mémoires statiques : qui se divisent en deux groupes, les mémoires auxquelles on accède par
des impulsions électriques et les mémoires auxquelles on accède par des faisceaux lumineux ou
électroniques. Volatiles, elles n’ont pas besoin de rafraîchissement.
7.2.2. Les mémoires à propagation : dans lesquelles les discontinuités physiques se propagent de
manière cyclique.
7.2.3 Les mémoires dynamiques : dans lesquelles on utilise la permanence d’une surface magnétique
pour y enregistrer l’information en la faisant défiler devant des têtes de lecture et d’écriture (cas des
mémoires auxiliaires). Volatiles, elles doivent être rafraîchies plusieurs fois par seconde pour ne pas
perdre leur contenu.
Les différents éléments de la mémoire d’un ordinateur sont ordonnés en fonction des critères suivants :
• temps d’accès
• capacité
• coût par bit
Quand on s’éloigne du CPU vers les mémoires auxiliaires, on constate que le temps d’accès et la capacité
des mémoires augmentent, mais que le coût par bit diminue ;
• Les éléments de mémoire situés dans le CPU sont des registres qui sont caractérisés par une grande
vitesse et servent principalement au stockage des opérandes et des résultats intermédiaires.
• L ’antémémoire ou mémoire cache, est une mémoire rapide de faible capacité (par rapport à la
mémoire centrale) utilisée comme mémoire tampon entre le CPU et la mémoire centrale et apporter
une solution au problème de la trop grande différence de vitesse entre eux. Elle permet au CPU de
faire moins d’accès à la mémoire centrale et ainsi gagner du temps. Elle est une mémoire associative,
ce qui signifie que les informations ne sont pas accessibles par une adresse, ce qui est le cas dans la
mémoire centrale), mais sont adressables par le contenu (voir figure)
48
Nigeria Lagos
Cameroun Yaoundé
Mali Bamako
Sénégal Dakar
Clé
Information associée à Mali
• La mémoire centrale : est l ’organe principal de rangement des informations utilisées par le CPU.
Pour exécuter un programme, il faut le charger (instructions +données) en mémoire centrale. Etant
une mémoire à semi-conducteur, son temps d’accès est beaucoup plus grand que celui des registres et
du cache. Les mémoires centrales se classent en 2 grandes catégories :
o Les mémoires vives : Elles ne sont actives que lorsque l ’ordinateur est sous tension. Elles
sont connues sous le nom de RAM (RANDOM ACCESS MEMORY) ou mémoire à accès
aléatoire
o Les mémoires mortes : Ce sont des mémoires qui ne peuvent être que lues. Elles sont
permanentes et fixes. Leur contenu ne peut être ni modifié, ni effacé car elles contiennent
les informations enregistrées en permanence par le fabricant afin d’exécuter des opérations
bien précises . Exemple : diagnostic et démarrage de l’ordinateur. Elles sont encore
appelées ROM 5 READ ONLY MEMORY ) ou mémoire à lecture seule.
• La mémoire d’appui : , mémoire à semi-conducteur, elle sert de mémoire intermédiaire entre la
mémoire centrale et les mémoires auxiliaires. Elle permet d’augmenter la vitesse d’échange des
informations entre ces deux niveaux et sa capacité peut atteindre des centaines de millions de bytes
(octets)
• Les mémoires auxiliaires (ou mémoires de masses ou mémoires secondaires) sont des mémoires
périphériques de grande capacité et de coût relativement faible. Elles servent d’éléments de stockage
permanent d’un très grand nombre d’informations au détriment d’un temps d’accès lent. Elles
utilisent pour cela des supports magnétiques (disques, tambours, bandes etc...) et des supports
optiques (disques optiques). Certaines d’entre elles sont appelées aussi mémoires d’archives (bandes
et cartouches magnétiques)
La table suivante donne un récapitulatif de la hiérarchie des mémoires et de la technologie utilisée pour
leur réalisation
Compte tenu de ce qui précède, elles jouent un rôle important dans le système informatique.
49
Architecture des ordinateurs /MOKA-17/08/10
7.3.1. Les disquettes
La disquette est actuellement l ’une des mémoires de masse les plus répandues du fait de sa simplicité
d’utilisation et de son faible encombrement physique.
La disquette est constituée d’une membrane souple de forme circulaire recouverte d’une substance
magnétique. Cette membrane se trouve dans une enveloppe plastique qui la protège contre les impuretés
(poussière, les traces de doigts, e t c . )
L’enveloppe elle-même comporte plusieurs ouvertures :
-Un trou central pour l ’entraînement de la membrane
-Une fenêtre de lecture des données où se pose la tête du lecteur
-Une encoche de protection contre l ’écriture.
Tête de lecteur
O
Entraînement de la membrane Membrane
Enveloppe
Encoche de protection contre l ’ écriture
La membrane magnétique est divisée en pistes circulaires et concentriques. Des lignes marquées
magnétiquement traversent la membrane en passant par son centre. La partie comprise entre deux lignes
forme un secteur.
50
Pistes
Secteur
L’opération qui consiste à marquer magnétiquement les pistes et les secteurs est le formatage. Toute
disquette nouvelle doit subir cette préparation préalable qui est le formatage pour être utilisé par
l’ordinateur pour stocker des données.
51
Architecture des ordinateurs /M0KA-17/08/10
-Conserver la disquette dans sa pochette pour la protéger contre la poussière.
Ne pas la plier
-Toucher uniquement à l ’enveloppe et non à la partie magnétique qu’elle
contient
-Eloigner la disquette des champs magnétiques (ne pas poser d’objet
métallique sur la disquette)
-Mettre l ’ordinateur en marche avant d’insérer la disquette et l ’enlever avant
d’éteindre l ’ordinateur
-Ne pas pousser avec force la disquette dans le lecteur. Ne pas la retirer
violemment
-Conserver la disquette à une température acceptable (10° à 50°)
-Ne pas la laisser au soleil
Les disquettes sont caractérisées par leur diamètre, leur nombre de faces et leur densité. Toutes les
disquettes sont pratiquement en double face. Une disquette peut être soit en double densité, soit en haute
densité. La différence entre double densité et haute densité est le nombre de secteurs. Ainsi, la capacité
d’une disquette dépend de ces caractéristiques.
Les informations que l ’on désire traiter dans un ordinateur doivent s’adapter à un certain format,, dont les
caractéristiques sont les suivantes :
52
• Le bit constitue l ’unité de base de l ’information. Dans une mémoire, le plus petit élément de
stockage est souvent appelé point mémoire qui mémorise un bit d’information ;
• L’octet, ou BYTE en anglais, correspond à un groupement de 8 bits ;
• Le caractère est un groupement de 6,7,8 . b i t s permettant le codage d’un caractère
alphanumérique ou d’un caractère spécial ( ! ,- ,& ,* ,[ ,( ,] .) selon les conventions du codage
ASCII,EBCDIC , e t c . )
• Le m ot (W ORD) est un groupement de bits constituant une unité d’information adressable en
mémoire centrale (8, 12, 1 6 ,3 2 ,.b its) qui varie selon les machines. La valeur32 tend à se
généraliser.
• L ‘enregistrem ent (RECORD) signifie bloc de données
• Le fichier (File) est un ensemble d’enregistrements
• Accès séquentiels : C ’est l ’accès le plus lent, pour accéder à une information particulière, on
est obligé de parcourir toutes celles qui la précèdent (exemple : bande magnétique)
• Accès direct : Les informations ont une adresse propre, ce qui permet de les accéder
directement (exemple : mémoire centrale, r e g istr e s.)
• Accès semi-séquentiel : c ’est une combinaison des accès direct et séquentiel (exemple : pour
un disque magnétique, l ’accès au cylindre est direct et l ’accès au secteur est séquentiel)
• Accès par le contenu (mémoire associative) : Les informations sont identifiées par une clé et
la recherche s’effectue sur cette clé de façon simultanée sur toutes les postions de la mémoire
(exemple, l’antémémoire)
53
Architecture des ordinateurs /M0KA-17/08/10
CHAPITRE VIII : Les Entrées /
Sorties
I. Les opérations Entrées/Sorties
Le transfert des données entre les périphériques et l’unité centrale est contrôlé et
commandé par un circuit appelé Interface. L’interface rend l’unité de traitement compatible
avec le périphérique. En effet l’unité de traitement grâce à une horloge travaille à une vitesse
constante alors que les périphériques travaillent à une vitesse plus lente. L’ajustement des
différentes vitesses est réalisé par l’interface.
UT Interface Périphérique
Transmission série : les données sont transmises bit par bit sur un seul fil de transmission. La
transmission série fait appel à un seul fil ( Un seul circuit de transmission).Son inconvénient est
sa lenteur. On utilise universellement le code ASCII. Chaque bit est transmit dans un intervalle
de temps fixe. La vitesse de transmission est le nombre de bit transmit par seconde ou baud
1001110
Emetteur Récepteur
Exemple : 1001110 1 0 0 1 1 1 0
Temps
Mot binaire à transmettre fixe
-Transmission Parallèle :
Tous les bits du mot binaire sont transmis simultanément chacun sur un fil. Ce qui exige un
circuit particulier pour chaque bit du mot. Son avantage c’est la rapidité de la transmission.
54
Cette méthode est utilisée sur de très courte distance (quelques dizaines de mètres au
maximum) à cause de son coup élevé.
1
0
0
1 R
1
1
0
Les périphériques d’entrées/sorties sont des équipements grâce auxquels l’opérateur peut
communiquer avec l’ordinateur.
1) La Console (Clavier+ Ecran)
C’est l’association de l’écran et du clavier. On l’appelle aussi Télétype ou encore Terminal. C’est
une unité d’entrée- sortie car elle sert en même temps à l’entrée et à la sortie des données.
a) Le Clavier : lorsqu’une touche est enfoncée, le terminal produit le code ASCII équivalent et le
transmet à l’unité centrale par l’intermédiaire d’une interface. De plus, les caractères généraux
du clavier sont également affichés à l’écran. Sur le clavier se trouvent les touches
alphanumériques ( lettres , chiffres), les caractères spéciaux ( *, $, ..) et les touches de
commande et de fonction ( CTRL , , SCHIFT , ECHAP , F1, F2....)
b) L’Ecran :
L’écran joue un double rôle :
- Afficher les messages et les résultats des traitements en provenance de l’unité centrale.
- Permettre à l’utilisateur de contrôler ce qu’il frappe à partir du clavier.
Les écrans habituels affichent 25 lignes de 80 caractères. L’écran peut être monochrome ou en
couleur.
L’écran peut être graphique c’est à dire qu’il peut afficher des dessins de toutes sortes ou
monochrome.
2) L’imprimante :
De nos jours, on trouve sur le marché un grand nombre de type d’imprimantes qui diffèrent par
leurs prix et leurs performances. Les techniques d’impressions ont considérablement évolué.
55
Architecture des ordinateurs /M0KA-17/08/10
a)L’imprimante à caractères moulés :
Elles sont proches des machines à écrire classique. Les caractères sont gravés (Préformés) sur
des supports métalliques appelés pétales et reproduits sur du papier par frappe mécanique : le
pétale sélectionné par rotation frappe le papier à travers un ruban encreur. La qualité de
l’impression est généralement bonne. Par contre ces imprimantes sont très lentes, bruyantes et
la forme des caractères ne peut pas être modifiée. Elles sont de moins à moins utilisées sur les
micro-ordinateurs.
Elles sont les plus rependues sur les ordinateurs en raison de leurs prix, leurs vitesses et leurs
souplesses. Les caractères sont composés à partir des points sélectionnés dans une grille
appelée matrice. La tête d’impression constituée par la matrice des points se déplace le long de
la ligne à imprimer. Elle comprend autant d’aiguilles que de points. Les aiguilles formant le
caractère sont sélectionnées par des électro-aimants et noircissent des points placés côte à
côte sur le papier pour former le caractère. Pour noircir ces points, différentes techniques sont
utilisées :
- Imprimante Matricielle à impact : les aiguilles formant le caractère frappe le papier
à travers un ruban encreur pour laisser des points noirs. Elles sont bruyantes.
- Imprimante matricielle à jet d’encre : les points formant le caractère sont produits
par projection d’encre sur le papier. Elles sont silencieuses.
Cette technique permet d’imprimer en couleur en utilisant des encres de différentes couleurs.
La qualité d’impression est très bonne.
-Imprimante Matricielle thermique : les aiguilles formant le caractère s’échauffent et
laissent des points noirs sur le papier spécial sensible à la chaleur.
Ordinateur
Modem Modem ORDINATEUR
57
Architecture des ordinateurs /MOKA-17/08/10
CHAPITRE V. Circuits logiques
4.1. Généralités sur les circuits logiques
4.1.1. Notion de circuit logique
Les circuits des machines électroniques modernes ont deux états d ’équilibre 0 et 1. Ils
sont donc caractérisés par 2 niveaux de tension ou de courant qui définissent un signal
logique . On appelle circuit logique ou circuit de commutation , les circuits qui traitent
des signaux logiques. On peut également le définir comme un ensemble de portes
logiques reliées entre elles pour répondre à une expression algébrique
Variable logique (ou booléenne ou binaire)
L’ordinateur ne manipule que des données binaires. On appelle donc une variable
logique une donnée binaire, c’est-à-dire une donnée ayant 2 états possibles : 0 ou 1.
Fonction logique
On appelle fonction logique une entité acceptant plusieurs valeurs logiques en entrée et
dont une sortie (il peut y en avoir plusieurs) peut avoir deux états possibles : 0 ou 1.
En réalité, ces fonctions sont des composants électroniques admettant des signaux
électriques en entrée, et restituent un signal en sortie. Les signaux électroniques peuvent
prendre une valeur de l’ordre de 5 volts que l’on représente par un 1, ou 0 V que l’on
représente par un 0
Notion de logique à niveau : On peut représenter l’information digitale élémentaire sur
une ligne électrique en maintenant une tension A pour représenter le 1 logique et une
tension B pour représenter le 0 logique . (voir figures)
Volts 5
+4 1 logique
1 logique 1.5
0
-4 0 logique -1
0 logique
-4.5
58
Sa représentation conventionnelle est la suivante
NON A A
Complémentation
S(a) = a
• 5. La fonction NON OU (NOR) ou l’inverse de OU)
Sa représentation conventionnelle est la suivante
a
b
S= a+b
• . La fonction NON Et (NAND) ou l’inverse de ET)
Sa représentation conventionnelle est la suivante
a
b
s(a,b)=a.b
On définit généralement les fonctions NON OU et NON ET comme étant la composition respective d'un NON avec un OU et
un ET.
Entrée Sortie
A B S
0 0 0
0 1 0
1 0 1
1 1 0
La sortie vaut 1 orsque a vaut 1 et B vaut 0, l’expression algébrique de cette
fonction est S=A.B
Prenons maintenant la table de vérité suivante:
Entrée Sortie
A B C S
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 0
0
S= A + B = A.B + A .B = (A+B) .(A+B)
R= A.B
A S
B
• la différence : D= A + B
• la retenue : R = A.B
0
D= A + B = A.B/ + A/ .B = (A+B) .(A/+B/)
R= A/.B
Le circuit peut donc être représenté selon le schéma électrique suivant:
R=A/.B
o
0
A D=A + B
B
62
Chapitre V. Les mémoires
5.1. Généralités et définition
■ Le bit est la plus petite information que l’ordinateur peut manipuler. C’est une information
binaire, c’est à dire qu’il ne peut avoir que deux valeurs possibles : (0,1). En effet, toutes
les informations sont stockées sous forme de combinaisons de 0 et de 1, cela est dû aux
constituants physiques de la mémoire ( semi-conducteurs) qui dans un instant conduisent
le courant (1) et dans un autre isolent le courant (0).
■ La volatilité : Représente le temps pendant lequel la mémoire est capable de retenir des
informations de manière fiable, notamment si l’on supprime l’alimentation électrique de la
mémoire.
■ Exemple : La mémoire de travail de l’ordinateur s’efface si on coupe le courant ; elle est
volatile, par contre, une mémoire de masse (disquette par exemple ) conserve son contenu
même si le lecteur n’est pas alimenté en courant électrique.
■ Le type d ’accès : C’est la façon dont on accède à une information. On peut y accéder
directement ou « traverser » d’abord d’autres informations.
63
Architecture des ordinateurs /MOKA-17/08/10
o Tableau comparatif entre mémoires électronique et magnétiques
64
transférer ses données sur des m émoires auxiliaires lorsqu’on effectue un travail
sur ordinateur.
• Elles sont connues sous le nom de RAM (Random Acess Memory) ou mémoire à accès aléatoire.
o L’inconvénient des mémoires vives provient de leur volatilité. Par contre, leurs temps d’accès sont
très rapides, elles ne consomment pas beaucoup d’énergie et peuvent être lues, effacées et
réécrites à volonté.
■ En opposition aux mémoires vives qui sont des mémoires à lecture/écriture, les
mémoires mortes sont des mémoires qui ne peuvent être que lues. Elles sont des
mémoires permanentes et fixes. Leur contenu ne peut être modifié, ni effacé. Car
elles contiennent les informations enregistrées en permanence par le fabricant, afin
d’exécuter des opérations bien précises : exemple diagnostic et démarrage de
l’ordinateur.
Elles sont encore appelées ROM (Read Only Memory) ou mémoire à lecture seule.
" Tableau syn th èse de la RAM et de la ROM
• RAM • ROM
• Mémoire vierge qui • Contient des
reçoit des informations inscrites
informations et des en permanence par le
directives des fabricant
périphériques
d’entrée-sortie
• Contenu temporaire • Contenu permanent et
fixe
• Peut être lue, modifiée • Peut être lue à
ou effacée à volonté volonté, mais le
contenu ne peut être
en aucun cas modifié
• S’efface • Ne s’efface pas à
automatiquement à l’arrêt de l’ordinateur
l’arrêt de l’ordinateur
• LIRE ET ECRIRE • LIRE SEULEMENT
■ Il existe également :
O les mémoires auxiliaires (auxiliary memory) ou mémoires secondaires ou mémoires de
masse : ce sont des dispositifs que l’UC utilise pour stocker de gros volumes de données et
les programmes qui ne sont pas en cours d ’exécution. Contrairement à la MC, elles ne sont
pas volatiles. Elles sont lentes (lecture et écriture). Elles sont généralement de grande
capacité. On les appelle d ’ailleurs des mémoires de masse. La volatilité de la MC fait qu’on
a toujours besoin d’elles.
■ Exemple : la disquette ;le disque dur ; la bande magnétique ;la cassette
O La mémoire tampon (buffer) : Mémoire interne qui stocke temporairement les données
Les éléments de mémoire d’un ordinateur se répartissent en plusieurs niveaux caractérisés par leur
capacité (nombre d ’informations qu’elles peuvent contenir) et leur temps d’accès.
La figure ci-dessous illustre les différents types de mémoire et montre la hiérarchie existant entre les
différents niveaux.
65
Architecture des ordinateurs /MOKA-17/08/10
CPU
Registres
Antémémoire
Mémoire centrale
Mémoire d ’appui
Mémoires auxiliaires
• Disques
• Tambours
• Bandes
• Cassettes
5. 2 Classification technologique
La quasi-totalité des mémoires utilisent le stockage binaire. C’est dire que l’information stockée
la plus élémentaire est le bit, l’élément de stockage correspondant étant souvent appelé point
mémoire.
Du point de vue du point mémoire, on distingue trois (3) grands types de mémoires :
5.2.1 Les mémoires statiques : qui se divisent en deux groupes, les mémoires auxquelles on
accède par des impulsions électriques (bistables à semi- conducteurs), les tores de fe rrite .) et
les mémoires auxquelles on accède par des faisceaux lumineux ou électroniques. Volatiles,
elles n’ont pas besoin de rafraîchissement.
66
5.2.3 Les mémoires dynamiques : d a n s le sq u elles on utilise la p erm a n en ce d'une su rface
m agn étiq u e pour y enregistrer l'information en la faisant défiler devant d e s tê te s d e lecture et
d'écriture ( c a s d e s m ém oires auxiliaires). Volatiles, elle s doivent être rafraîchies plusieurs fois
par s e c o n d e pour n e p a s perdre leur contenu.
Les différents élém en ts d e la m ém oire d'un ordinateur son t ord on n és en fonction d e s critères
suivants :
• tem p s d 'a c c è s
• cap acité
• coût par bit
Q uand on s'éloig n e du CPU vers les m ém oires auxiliaires, on co n sta te q u e le tem p s d 'a c c è s et
la cap acité d e s m ém oires augm entent, m ais q u e le coût par bit dim inue ;
• Les élém en ts d e m ém oire situ és d a n s le CPU son t d e s registres qui son t ca ra ctérisés par
une grande v ite s s e et serven t principalem ent au sto ck a g e d e s o p éra n d es et d e s résultats
interm édiaires.
• L’antémémoire ou mémoire cache, e s t u ne m ém oire rapide d e faible ca p a cité ( par
rapport à la m ém oire centrale) utilisée co m m e m ém oire tam pon entre le CPU et la m ém oire
centrale et pour apporter une solution au problèm e d e la trop grande différence d e v ite s s e
entre eux. Elle perm et au CPU d e faire m oins d 'a c c è s à la m ém oire centrale et ainsi gagn er
du tem p s. Elle e s t une m ém oire a sso cia tiv e, c e qui signifie q u e les informations n e son t p as
a c c e s s ib le s par u ne a d r e sse , c e qui e s t le c a s d a n s la m ém oire centrale), m ais sont
a d r e ssa b le s par le contenu (voir figure)
Nigéria L agos
C am eroun Y aoundé
67
Architecture des ordinateurs /MOKA-17/08/10
Mali Bamako
Sénégal Dakar
Clé
Information associée à Mali
• La mémoire centrale : est l’organe principal de rangement des informations utilisées par le
CPU . Pour exécuter un programme, il faut le charger (instructions +données) en mémoire
centrale. Etant une mémoire à semi-conducteur, son temps d ’accès est beaucoup plus
grand que celui des registres et du cache.
Les informations que l’on désire traiter dans un ordinateur doivent s’adapter à un certain
format,, dont les caractéristiques sont les suivantes :
• Le bit constitue l’unité de base de l’information. Dans une mémoire, le plus petit
élément de stockage est souvent appelé point mémoire qui mémorise un bit
d’information ;
• L’octet, ou BYTE en anglais, correspond à un groupement de 8 bits ;
68
• Le caractère e s t un groupem ent d e 6,7,8 ...b its perm ettant le c o d a g e d ’un caractère
alphanum érique ou d ’un caractère sp écia l ( selo n les con ven tion s du
c o d a g e ASCII,EBCDIC , e t c . )
• Le m o t (W ORD) e s t un groupem ent d e bits constituant u ne unité d ’information
a d ressa b le en m ém oire centrale (8, 12, 1 6 ,3 2 ,...b its) qui varie selo n les m ach in es. La
valeur 32 tend à s e généraliser.
• L enregistrem ent (RECORD) signifie bloc d e d o n n é e s
• Le fichier (File) e s t un e n se m b le d ’enregistrem en ts
69
Architecture des ordinateurs /MOKA-17/08/10
Chapitre IIIV. Le processeur
7.1 Architecture des m icroprocesseurs
Généralités
Il existe deux types de microprocesseurs :
1. Microprocesseurs CISC (Complexe Instruction Set Computer) de conception plus ancienne et moins
performants puisqu'ils disposent d'un jeu d'instructions important (env. 500 instructions) ce qui ralentit la
recherche de l'instruction désirée d'autant.
Ex : i80486, Pentium, MC68000, MC68040,...
2. Microprocesseurs RISC (Reduced Instruction Set Computer) de conception récente et plus
performante qui eux disposent d'un petit jeu d'instructions polyvalent (de 160 à 200 instructions), ce qui
les rend plus rapide. Ex : i960, RS6000, DecAlpha,..
Il intègre au matériel les instructions les plus utilisées et permet d'exécuter plusieurs instructions en un
seul cycle.
Ex : PowerPc
La tendance actuelle semble montrer que les processeurs de type RISC sont plus performants que les
CISC bien que ces derniers ne soient plus des CISC à proprement parler, mais plutôt des hybrides
regroupant différentes technologies comme le pipelining et le mode super-scalaire ou carrément CISC et
RISC à la fois comme le pentium pro (c'est un processeur RISC qui traduit les instructions CISC).
7.2. Synchronisation des opérations
La synchronisation des différentes opérations est réalisée par une horloge qui définit le cycle de base et qui est en
général la fréquence d'horloge du processeur. Le temps d'exécution d'une instruction dépend du type d'opération à
effectuer et du type de processeur utilisé, ce qui peut prendre un ou plusieurs cycles d'horloge.
7.2.1 Séquenceur
Le séquenceur est un automate générant les signaux de commandes nécessaires pour actionner et contrôler les
unités participant à l'exécution d'une instruction.
Il existe deux types de séquenceurs :
1.le séquenceur câblé qui est un circuit séquentiel complexe mais d'exécution très rapide.
2. le séquenceur microprogrammé contenu dans une ROM qui est plus simple à utiliser et à concevoir, mais
moins rapide.
7.2.2 Structure des instructions niveau machine
Une instruction machine doit fournir au processeur toutes les informations pour déclencher une opération
élémentaire. Elle doit contenir un code opération (type d'action demandée) et une ou plusieurs adresses (ces
adresses peuvent être : l'adresse de l'opérande, l'adresse où envoyer le résultat, l'adresse où chercher l'instruction
suivante,...). Par conséquent, une instruction machine comportera un champ code opération et jusqu'à 4 champs
adresse.
7.2.3. Jeu d ’instructions
L'ensemble de toutes les instructions dont dispose le programmeur à un niveau donné est appelé jeu d'instructions.
Le nombre d'instructions d'un jeu est variable suivant les machines et les niveaux; Pour un niveau machine
traditionnel, par exemple, la taille du jeu d'instructions varie couramment de 20 à 300. Un grand jeu d'instructions
n'est pas forcément meilleur qu'un petit, c'est même souvent le contraire, puisque l'existence d'un jeu d'instructions
très grand sous-entend que les instructions elles-mêmes ne sont pas générales. Les compilateurs de langages de
haut niveau (Ada, Pascal) fonctionnent généralement mieux sur des machines dont le jeu d'instructions est petit
mais bien adapté, que sur celles qui ont un jeu d'instructions très lourd. Les machines à jeu d'instructions très
réduit (machine RISC) sont extrêmement rapides et n'ont pas de microprogrammes.
Il faut bien comprendre que le jeu d'instructions du niveau microprogramme n'est autre que le jeu d'instructions du
matériel (UC). En revanche, le jeu d'instructions du niveau machine traditionnel est déterminé par le
microprogramme et non par le matériel.
Chaque machine possède donc son jeu d'instructions. Il existe 6 groupes d'instructions que l'on retrouve sur toutes
les machines, quelles qu'elles soient :
1. Les transferts de données (load, move, store,...).
2. Les opérations arithmétiques (+, -, /, *).
3. Les opérations logiques (ou, and,...).
4. Les contrôles de séquence.
5. Les entrées/sorties.
6. Les manipulations diverses (décalages, incrémentations,...).
70
7.2.4 Registres du CPU
Le CPU possède ses propres registres qui lui permettent d’exécuter ses instructions :
• Le com pteur ordinal (CO) contient l’adresse en mémoire de la prochaine instruction. Il
est incrémenté après chaque utilisation et le programmeur n’y accède pas.
• Le registre d ’instruction (RI) qui est l’endroit où le processeur va chercher l'instruction
à exécuter. Le programmeur n’y accède pas.
• L’Accum ulateur (ACC) qui appartient à l’UAL et qui contient une des opérandes avant
exécution et le résultat après. Il peut aussi servir de tampon dans les opérations
d’entrées-sorties. Le programmeur y accède souvent.
• Les registres généraux qui permettent de sauvegarder des résultats intermédiaires ou
des informations utilisées pendant le programme. Le programmeur y accède souvent.
Les instructions les plus répandues permettant de les manipuler sont :
- le chargement d’un registre à partir de la mémoire,
- l’enregistrement en mémoire d’un registre,
- le transfert d’un registre dans l’Accumulateur,
- l’incrémentation ou la décrémentation d’un registre.
Cette suite d'étapes s'appelle cycle de chargement-décodage-exécution, cycle qui est au coeur du fonctionnement
de tous les ordinateurs.
Il n'est pas obligatoire qu'un programme soit exécuté directement par une UC matérielle, c'est-à-dire composée de
circuits électroniques;
Un programme qui charge, décode et exécute les instructions d'un autre programme est appelé un interpréteur.
Cette équivalence entre processeurs matériels et interpréteurs a d’importantes conséquences du point de vue de
l'architecture des ordinateurs. Lorsqu'on spécifie le langage machine d'un nouvel ordinateur, il convient de décider
si ce langage sera directement exécuté par le matériel ou s'il sera interprété. Si l'on décide d'écrire un interpréteur,
il faudra alors faire une machine sur laquelle tournera cet interpréteur. Puisqu'un interpréteur traite les instructions
de sa machine cible par petites étapes, la machine sur laquelle tourne l'interpréteur est souvent plus simple et donc
moins chère, que ne le serait le mécanisme cible réalisé en matériel. C'est pour cela que les programmes du
niveau machine traditionnel sont sur la plupart des ordinateur modernes traités par un interpréteur qui tourne sur
une machine beaucoup plus simple que nous avons appelée niveau microprogramme.
71
Architecture des ordinateurs /MOKA-17/08/10
architectures de type multi-bus, certains microprocesseurs peuvent offrir des performances en Mips égales ou
supérieures à leur fréquence d'horloge. Le flop est une unité de performance appliquée aux ordinateurs
scientifiques dédiés au calcul numérique. Ceux-ci indiquent leur puissance de travail en Pops (Floating Point
Operations per Second ou nombre d'opérations en virgule flottante par seconde). On parle plus exactement de
Mflops (mégaflops) ou Gflops (Gigaflops). Enfin, il existe également le lips (Logical Inferences per second) ou
nombre d'inférences logiques par seconde.
La mesure des performances des processeurs n'est cependant pas si simple. Elle pose deux
problèmes : quelle unité de mesure, et sur quoi mesurer la performance. Il est généralement admis que
la seule manière correcte d'apprécier les performances est la mesure du temps d'exécution sur des
programmes réels pour des entrées déterminées. Les programmes spécifiques d'évaluation de
performance ou benchmark et les unités de mesure comme le MIPS ou le Mflop ne peuvent que donner
des ordres de grandeur de la performance réelle. Souvent, ces unités serviront à donner les
performances maximales ou crête, que la machine ne peut dépasser. Même si on utilise le temps
comme unité de mesure, il faut encore distinguer entre le temps passé par l'unité centrale pour
l'exécution du programme de l'utilisateur et le temps écoulé entre l'ordre de début d'exécution d'un
programme et l'obtention des résultats, qui comprend en plus le temps utilisé par le système d'exploitation pour
ses différentes tâches dont les entrées/sorties
72
Chapitre X. Les unités d’entrées/sorties (Input/Output : I/O)
Introduction
La fonction d'un ordinateur est le traitement de l'information. Nous avons vu comment cette
fonction est réalisée au niveau de la mémoire centrale et de l'unité centrale de traitement. Il
reste à expliquer comment l'ordinateur peut acquérir l'information fournie par son
environnement et restituer les résultats de ses manipulations ; comment l'ordinateur
communique avec le monde extérieur ou comment fait-il ses entrées/sorties.
10.1 Le bus
Le bus n'est rien d'autre au fond qu'un simple câble de n lignes qui permet de faire passer des données
du processeur à la mémoire et vice-versa. Il constitue une sorte d'autoroute qui traverse le PC,
réglementée par le processeur. C'est une voie d'interconnexion et d'échanges permettant le transfert de
données entre les éléments internes d'un ordinateur, le processeur et la mémoire centrale.
Le bus permet de véhiculer tous les signaux entre l'Unité Centrale et les périphériques. On peut le
décomposer en trois grands groupes principaux qui sont :
Le bus de données qui sert à transporter l'information proprement dite et qui est constitué, pour les
processeurs les plus récents, de 32 voir 64 lignes parallèles.
Le bus d’adresse qui permet d'identifier la case mémoire concernée par l'opération en cours (lecture ou
écriture) qui est lui aussi de 32 voir 64 lignes parallèles.
Le bus de commande qui détermine le type d'opération àeffectuer (lecture, écriture, sélection du
composant, etc.).
Chaque périphérique doit être relié à un bus ou un canal par un contrôleur spécialisé.
Le DMA permet à un périphérique d'accéder directement à la mémoire sans passer par le CPU , il est
prioritaire sur celui-ci pour l'accès à la mémoire. Il est doté d'un registre d'adresses, d'un compteur, d'un
registre de données et d'un dispositif de commande capable d'assurer le transfert. Il ne vérifie pas
l'intégrité des informations qui est assurée par le contrôleur du périphérique concerné. Le fait d'utiliser
un DMA pour gérer un périphérique améliore notablement les performances de celui-ci. La carte son
utilise ce procédé.
Ils sont plus performants que les DMA et permettent à plusieurs périphériques de travailler
simultanément. Ce sont de véritables processeurs spécialisés. Ils sont programmables, enchaînent les
opérations d'entrées-sorties et ont un accès prioritaire à la mémoire par la technique du "vol-de-cycle" et
en plus, ils vérifient l'intégrité des informations échangées, ce que ne fait pas le DMA. Il existe deux
types de canaux :
73
Architecture des ordinateurs /MOKA-17/08/10
Le canal sélecteur totalement réservé au périphérique concerné. Il est particulièrement adapté aux
échanges avec des unités rapides.
Le canal multiplexé partagé en plusieurs unités et appelé sous-canal. On peut ainsi travailler en parallèle
et donc obtenir plusieurs accès simultanés sur un même périphérique; par contre, il est adapté aux
périphériques à faible débit du fait de son parallélisme.
Pour mener à bien les échanges, les unités d’entrées-sorties doivent pouvoir signaler au CPU qu’elles
sont connectées et prêtes à transférer des données ou bien que l’échange de celles-ci s’est bien
déroulé. Le traitement d’une interruption se déroule en plusieurs étapes et il consiste à :
1. Arrêter le programme en cours.
2. Sauvegarder l’état de la machine.
3. Exécuter le programme de service de l’interruption.
4. Rétablir l’état de la machine.
5. Reprendre l’exécution du programme interrompu.
Il peut arriver que plusieurs interruptions arrivent simultanément. Pour parer à cette éventualité, il existe
des systèmes d ’interruptions hiérarchisées à niveaux de priorités qui les gèrent non pas dans l’ordre
chronologique d ’arrivée mais dans l’ordre de priorité défini par le « dispatcheur ».
SCSI est un procédé industriel de connexion des périphériques (par exemple des disques, CD-ROM... )
aux ordinateurs. Une des principales différences entre SCSI et les interfaces de disque antérieur est que
chaque périphérique SCSI doit avoir une capacité de traitement local pour participer au protocole de
commande SCSI. Cela signifie que chaque unité SCSI rattachée au bus fait elle même l'essentiel de ces
opérations.
Ce dispositif retire la tâche de la charge du CPU principal et la transfère là où elle pourra être exécutée
au mieux. Cinq versions de SCSI existent, permettant des vitesses maximales de transfert de 4 Mo/s à
20 Mo/s.
74
jusqu'à quatre périphériques) et n'engendre donc aucun surcoût pour l'achat d'une carte d'extension à
l'inverse du SCSI...
Les débits
La norme SCSI se présente sous de nombreuses dénominations (SCSI-1, SCSI-2, Ultra-SCSI, Ultra-2-
SCSI... dans l'ordre d'apparition). Quant à la norme IDE, elle aussi se présente sous plusieurs normes
(PIO, PIO 2, PIO 3, PIO 4, UltraDMA/33 et bientôt UltraDMA/66).
Un petit tableau récapitulatif permettra de se faire une idée sur les débits de transferts théoriques des
différentes normes de chacune de ces interfaces :
Un disque magnétique est constitué par une plaque métallique (aluminium) circulaire, recouverte d’une
mince couche d ’oxyde de fer. L’information est enregistrée sur la surface de ce disque, le long de pistes
concentriques de quelques microns de largeur. La capacité d’une piste varie d’un modèle à l’autre,
cependant sur un même disque elle est constante pour toutes les pistes concentriques, ce qui implique
une densité d’enregistrement variable. Chaque piste est divisée en secteurs.
Dans certains systèmes il y a plusieurs disques superposés et regroupés autour d ’un axe. Dans ce cas
les disques sont séparés par un espace de quelques millimètres qui permet le passage du mécanisme
pour effectuer le lecture et l’écriture.
Caractéristiques générales d ’un disque :
- Format (pouces) : 3,5 5,25...
- Capacité formatée (Go) : 1,2 GO 2,1 GO...
75
Architecture des ordinateurs /MOKA-17/08/10
- Nombre de plateaux : 2, 3, 4...
- Nombre de cylindres : plusieurs milliers
- Nombre de tête : 4, 6,..
- Taille de la mémoire tampon (ko) : 96ko 512ko...
- Temps d’accès moyen (ms) : 10-15ms
- Vitesse de rotation (rpm) : 4500-7000 rpm
- Densité d ’enregistrement (bpi) : env 100000 bpi
- Densité de pistes (tpi) : 4000 à 7000 tpi
- Type d’interface : IDE, SCSI, ...
Si l’on doit transmettre des caractères codés sur 8 bits, il est préférable de disposer d ’une structure
d’interconnexion permettant la transmission simultanée (en parallèle) des 8 bits d ’un caractère. La ligne
téléphonique ne comporte qu’une paire de fils ou canal de transmission. Il est donc nécessaire de
transmettre les bits en série, les uns à la suite des autres, sur le réseau téléphonique. Le caractère
analogique du réseau téléphonique impose de moduler les signaux numériques issus des équipements
informatiques. Il est nécessaire d’insérer un équipement qui réalise cette modulation; c’est le modem qui
joue le double rôle d’émetteur et de récepteur des signaux modulés. C’est ainsi que le modem transmet
76
les bits d’un caractère en modulant une porteuse au rythme d’arrivée des bits dans l’intervalle
élémentaire de modulation. A l’une des extrémités de la ligne c’est le modem qui réalise la modulation
de signal au rythme des bits de données, à l’autre extrémité c’est le modem qui reconstitue les bits de
données à partir du signal modulé reçu. Les bits sont transmis à intervalles réguliers; dès que le modem
récepteur détermine le début d’une transmission, son horloge interne est synchronisée avec celle du
modem émetteur. Le prélèvement des caractères peut alors se faire au même rythme.
77
Architecture des ordinateurs /MOKA-17/08/10