L'objectif de ce chapitre est de distinguer les rôles et les caractéristiques des différents constituants d'une machine et de dérouler l'exécution d'une séquence d'instructions simples en langage machine.
Le mathématicien John Von Neumann a élaboré en 1944 la première description d'un ordinateur dont le programme est stocké dans sa mémoire. Son architecture comporte 4 éléments :
Constituant et rôle | Caractéristiques | Photo |
---|---|---|
Le boitier d'alimentation convertit le 230 V alternatif en 12V ou 5V ou 3,3V ou 2,5V ou 1,8 V pour alimenter tous les composants de l'unité centrale. |
|
![]() |
La carte mère centralise tous les périphériques de l'unité centrale et la connectique. Le processeur y est directement rattaché. |
|
![]() |
Le processeur est le cerveau de l'ordinateur. Il traite plusieurs milliards d'opérations par seconde. |
|
![]() |
La mémoire RAM, très rapide mais volatile (provisoire), stocke les informations en cours de traitement par le processeur. |
|
![]() |
Le disque dur stocke le système d'exploitation, les logiciels et les données de l'utilisateur. |
|
![]() |
La carte graphique (optionnelle) aide le processeur pour le calcul de l'image affichée à l'écran. |
|
![]() |
Le lecteur ou graveur de disque (optionnel) peut lire ou écrire les données stockées sur un CD, un DVD ou un Blu-Ray. |
|
![]() |
La carte mère est une carte de circuit imprimé qui est essentielle pour connecter tous les composants d'un ordinateur, aussi bien les composants internes que les périphériques externes via des ports spécifiques.
Les périphériques permettent d'assurer la communication de l'ordinateur avec l'extérieur (clavier, écran, imprimante, réseau, carte d'acquisition, etc...).
Il existe également d'autres ports moins courants que l'on peut trouver sur certaines cartes mères, tels que des ports FireWire, des ports PS/2 pour les claviers et souris plus anciens, des ports Thunderbolt, etc.
Une mémoire peut être vue comme une armoire où chaque tiroir contient une et une seule donnée.
Chaque tiroir est repéré par une adresse.
Elle contient les instructions du ou des programmes en cours d'exécution et les données associées à
ce programme.
Les différents organes du système sont reliés par des voies de communication appelées bus.
Un bus est un ensemble de fils qui assure la transmission du même type d'information. Trois types de bus véhiculent des informations en parallèle dans un système de traitement programmé de l'information :
Le microprocesseur (Central Processing Unit : CPU) est chargé d'interpréter et d'exécuter les instructions d'un programme, de lire et de sauvegarder les résultats dans la mémoire. Il est composé par :
Chaque opération que peut effectuer un processeur est le résultat d'un circuit logique (circuit combinatoire)
fait de portes logiques qui réalisent les fonctions élémentaires définies en algèbre de Boole :
NON
, ET
et OU
.
Les transistors sont des composants électroniques essentiels au fonctionnement d'un processeur. Plus un processeur possèdent de transistors, plus il sera capable d'effectuer des calculs.
La loi de Moore est une loi empirique qui décrit que le nombre de transistors sur une puce électronique double environ tous les deux ans, ce qui entraîne une augmentation exponentielle de la performance et une diminution du coût des ordinateurs. Elle a été formulée par Gordon E. Moore, cofondateur d'Intel, en 1965.
![]() |
Recherche de l'instruction à traiter dans la mémoire :
|
![]() |
Décodage de l'instruction :
|
![]() |
Exécution de l'instruction :
|
Un jeu d'instruction est un ensemble d'opérations élémentaires que le microprocesseur exécute. Il est capable de réaliser seulement trois types d'instruction :
ET
, OU
, NON
, comparaison, test, etc...Chaque instruction nécessite un certain nombre de cycles d'horloges pour s'effectuer : c'est le temps d'exécution. Il est dépendant de la complexité de l'instruction.
Pour comprendre le principe de l'exécution d'un programme par un processeur écrit en langage d'assemblage (Assembleur), nous allons utiliser un logiciel de simulation développé en JavaScript par Pierre Boudes : AMIL et modifié par nos soins.
Le code source du simulateur est disponible ici : AMIL.7z
JMP 3 ; saute à la ligne 3
7 ; donnée de l'utilisateur
? ; espace réservé pour le résultat
WR 5 r1 ; 1er instruction du programme
MOV 1 r0 ; ...
SUB r1 r0
WR 1 r2
JP r0 9
WR 0 r2
MOV r2 2 ; ...
STOP ; fin du programme
0
code pour FAUX
et 1
code pour VRAI
.