14/02/2026
Chapitre2:Principaux
composants d’un ordinateur
AIT-AOUDIA Amina
Principaux composants d’un ordinateur
• - Schéma global d’une architecture
• - L’UAL
• - Les bus
• - Les registres
• - La mémoire interne : mémoire RAM (SRAM et DRAM), ROM, temps d'accès, latence,...
• - La mémoire cache : utilité et principe, algorithmes de gestion du cache (notions de
• base)
• - Hiérarchie de mémoires
1
14/02/2026
2
14/02/2026
3
14/02/2026
4
14/02/2026
Schéma
global d’une
architecture
5
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• Définition :
• Une unité arithmétique logique est un ensemble de circuits
électroniques connectés logiquement de façon à réaliser, sous
l'action de commandes élémentaires, les opérations
arithmétiques ou logiques pour lesquelles cet ensemble a été
conçu.
• En anglais: arithmetic logic unit (ALU).
L’UAL ( Unité Arithmétique et logique)
• Le rôle:
• Le rôle de l’unité arithmétique et logique est de réaliser les
• Opérations arithmétique et logique de base :
• Opérations logiques bit à bit : And, OR, Complémentation (NOT), OU-
Exclusif,...etc.
• * Opérations arithmétiques : Addition , Soustraction ,
complémentations à 1 et à 2.
• * Comparaisons
• *Décalages et rotations.
6
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• Présentation:
• L’unité arithmétique et logique comme le
montre la figure ci-après, dispose de :
• Deux entrées A et B sur lesquelles on présente
les données à traiter “Les opérandes “.
• Une sortie F donnant le résultat de l’opération
effectuée
• Une entrée de sélection « Commande »
permettant le choix de l’opération à effectuer.
• Une sortie Etat « indicateur »donnant l’état de
l’UAL après exécution de l’opération.
L’UAL ( Unité Arithmétique et logique)
• Constitution:
• L’UAL peut être décomposée en deux grands blocs fictifs :
• * L’Unité Logique (UL),
• * L’Unité Arithmétique (UA),
7
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• L’Unité Logique (UL), qui permet d’effectuer les opérations logiques
ET(AND), OU(OR),NON(NOT), OU-exclusif, etc... sur deux nombres de
n bits placés en entrées. Ces opérations sont effectuées bit à bit.
• Exemple : Opérations logiques sur deux nombres de 4 bits.
• - Complémentation : NOT (1011) = (...............)
• - Produit logique : (1101) ET (1101) = (...............)
• - Somme logique : (1101) OU (1101) = (...............)
• - Somme exclusive logique : (1101) Å (1101) = (...............)
L’UAL ( Unité Arithmétique et logique)
• L’Unité Arithmétique (UA), qui permet d’effectuer des opérations
arithmétiques, telle que
• l’addition et la soustraction sur deux nombres à n bits placés en
entrée.
• Exemple : Opérations arithmétiques sur deux nombres de 4 bits.
• - Addition : (1101) + (1101) = (....................................)
• - Soustraction: (1101) - (1101) = (....................................)
8
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• L’information 0 1
• l'information numérique n'est représentée qu'avec les deux valeurs
binaires 0 et 1.
• 0 et 1 correspondent aux deux niveaux de voltage utilisés dans les
transistors.
• L'information logique est également codée avec ces deux valeurs 0 et
1.
• 1 est associé à VRAI, et 0 est associé à FAUX.
L’UAL ( Unité Arithmétique et logique)
• Les opérateurs:
• L'opérateur ET est généralement représenté par «x» ou par «.» ;
• l'opérateur OU est représenté par «+» ;
• l'opérateur NON est représenté par «'» (X' pour NON(X)) .
9
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• Les schémas associés aux principales portes logiques sont
représentés ci-dessous.
• Un rond placé avant une entrée ou une
sortie correspond à une négation
logique (NON) sur l'entrée ou la sortie.
L’UAL ( Unité Arithmétique et logique)
Exemple: Donner le circuit correspondant
On dispose de trois lampes, et on veut réaliser un circuit qui envoie
un signal si au moins deux des lampes sont allumées. On appelle A,
B, C les trois lampes avec la convention 0=allumée, 1=éteinte, et Z la
sortie du circuit avec la convention 0=pas de signal, 1=signal activé.
Le signal doit être activé dans plusieurs cas : si deux des lampes sont
allumées (n'importe quelle combinaison de deux lampes), ou si les
trois lampes sont allumées. On en déduit que Z=1 si ((A ET B sont
allumées) OU (A ET C sont allumées) OU (B ET C sont allumées) OU
(A ET B ET C sont allumées)) et Z=0 sinon. On peut traduire cette
proposition en l'expression logique suivante: Z = A.B + A.C + B.C +
A.B.C. Le circuit correspondant est :
10
14/02/2026
L’UAL ( Unité Arithmétique et logique)
Exemple:
On dispose de trois lampes, et on veut réaliser un circuit qui
envoie un signal si au moins deux des lampes sont allumées.
On appelle A, B, C les trois lampes avec la convention
0=allumée, 1=éteinte, et Z la sortie du circuit avec la
convention 0=pas de signal, 1=signal activé. Le signal doit être
activé dans plusieurs cas : si deux des lampes sont allumées
(n'importe quelle combinaison de deux lampes), ou si les
trois lampes sont allumées. On en déduit que Z=1 si ((A ET B
sont allumées) OU (A ET C sont allumées) OU (B ET C sont
allumées) OU (A ET B ET C sont allumées)) et Z=0 sinon. On
peut traduire cette proposition en l'expression logique
suivante: Z = A.B + A.C + B.C + A.B.C. Le circuit correspondant
est :
L’UAL ( Unité Arithmétique et logique)
• Additionneur
• un processeur travaille sur un nombre fini de bits.
• Un additionneur est conçu à partir de n additionneurs 1-bit.
11
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• Additionneur 1-bit
• Lorsque l'on additionne deux bits x et y, le résultat est la somme S des
chiffres, et la retenue R. La table de vérité est la suivante :
• On en déduit que S = x'.y + x.y' = x⊕ y,
• et que R = x.y.
• Ce circuit ne prend pas en compte la retenue
d'entrée correspondant au chiffre précédent,
On appelle ce circuit un demi-additionneur.
• L'additionneur 1-bit complet prend
en compte la retenue d'entrée r.
L’UAL ( Unité Arithmétique et logique)
demi-additionneur.
Additionneur 1-bit complet
12
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• Additionneur 1-bit
• S = r'.(x'.y + x.y') + r.(x.y + x'.y’) =
r⊕ x⊕ y
• et R = r’.x.y + r.x’.y + r.x.y’ + r.x.y
L’UAL ( Unité Arithmétique et logique)
• Additionneur n-bits. Pour effectuer l'addition de deux nombres de n
bits, il suffit de chaîner entre eux n additionneurs 1-bit complets.
• La retenue est ainsi propagée
d'un additionneur à l'autre.
• Bien que tous les chiffres des
deux nombres de n-bits X et Y soient disponibles simultanément au
début du calcul, à t=0, le temps de calcul est déterminé par la
propagation de la retenue à travers les n additionneurs 1- bit.
13
14/02/2026
L’UAL ( Unité Arithmétique et logique)
• Soustracteur n-bits.
• on peut implémenter la soustraction à l'aide de l'additionneur avec
des modifications mineures.
L’UAL ( Unité Arithmétique et logique)
14
14/02/2026
Les bus
• Bus en informatique: Un bus informatique est un dispositif
de transmission de données partagé entre plusieurs
composants d'un système numérique.
• Un bus est un groupe de lignes électriques qui relie le Processeur
(CPU) aux autres composantes.
Analogie (bus): autoroutes
• Sauf que les voitures…
• démarrent et arrivent à destination en même temps
• ne peuvent circuler que dans un sens à la fois
15
14/02/2026
Type de bus d’un processeur:
• Les deux principaux types de bus d’un processeur sont le bus de
données et le bus d’adresse. Le bus de données transporte les
données entre le processeur et la mémoire vive (RAM), tandis que le
bus d’adresse transporte des adresses mémoire pour identifier
l’emplacement des données dans la mémoire. Un troisième type de
bus, le bus de contrôle, est également présent pour coordonner les
opérations entre les différents composants.
Pourquoi différents types de bus?
• les processeurs sont équipés de différents types de bus pour
permettre une communication rapide et efficace entre les différents
composants de l’ordinateur.
16
14/02/2026
Bus d’adresse
• C’est le microprocesseur qui le contrôle (place des adresses sur le
bus).
• La taille du bus
d’adresse (le nombre
de lignes)détermine la
Quantité maximum de
mémoire que le CPU
peut utiliser.
Bus d’adresse
•QUIZ:
• Combien d’adresses le CPU peut-il générer?
17
14/02/2026
Bus d’adresse
• QUIZ:
• Combien d’adresses le CPU peut-il générer?
28 = 256 adresses
Bus de données
18
14/02/2026
Bus de données
• Le bus de données permet le transfert des données.
• Les données peuvent circuler dans les deux sens, mais elles ne
circulent que dans un seul sens à la fois.
• La taille du bus de données (le nombre de lignes) détermine la
grandeur maximale des mots pouvant être transférés d’un coup.
Bus de données
QUIZ:
• Que faire si je dois écrire 2 caractères ASCII (8 bits) en mémoire?
19
14/02/2026
Bus de données
QUIZ:
• Que faire si je dois écrire 2 caractères ASCII (8 bits) en mémoire?
Chaque caractère nécessite 8 bits et le bus de données a 8 bits.
Il faudra donc effectuer 2 transferts pour écrire les
2 caractères en mémoire.
Bus de contrôle
• Stocker ou Récupérer?
20
14/02/2026
Bus de contrôle
• Le bus de contrôle contrôle l’utilisation des bus de données et
d’adresse.
• Il permet de gérer la direction des données sur le bus des données
(lecture ou écriture).
• Le bus de contrôle a aussi une horloge, qui détermine la vitesse à
laquelle les données peuvent être transférées et qui synchronise les
opérations.
En résumé 3 BUS importants.
21
14/02/2026
En résumé 3 BUS importants.
contrôleur mémoire
• Un contrôleur mémoire est un contrôleur (un circuit
électronique) chargé de traduire des requêtes, en provenance
du processeur, de lecture ou d'écriture en mémoire.
• Il régule la communication entre le processeur et la mémoire.
22
14/02/2026
23
14/02/2026
24
14/02/2026
25
14/02/2026
26
14/02/2026
27
14/02/2026
28
14/02/2026
29
14/02/2026
30
14/02/2026
31
14/02/2026
Lecture/Ecriture
• Vidéo explicative
32
14/02/2026
33
14/02/2026
Les registres
Lorsque le processeur exécute des instructions en cours de traitement, les
données sont temporairement stockées dans de petites mémoires rapides (de
8, 16, 32 ou 64 bits) que l'on appelle REGISTRES. Suivant le type de
processeur, le nombre global de registres peut varier d'une
dizaine à plusieurs centaines (Ex: Intel-32bits contient 16 registres).
Ils peuvent être de type adresse (ils contiennent alors une adresse du mot
mémoire) ou données (ils contiennent alors le contenu d’un mot mémoire).
Ils peuvent être spécifiques et avoir une fonction très
précise (par exemple le registre ‘’compteur ordinal’’) ou généraux et servir
essentiellement aux calculs intermédiaires (par exemple le registre
accumulateur ‘’AX’’)
34
14/02/2026
Les registres
15 0
AX Registre accumulateur
BX Registre base
CX Registre Compteur
DX Registre de données
SP Pointeur de pile
BP Pointeur de base
DI Indice Destination
SI Indice Source
Registres généraux
Registres spécifiques
Les registres
7 07 0
AH AL
BH BL H : High
CH CL L : Low
DH DL
SP
BP
DI
SI
35
14/02/2026
Unité Arithmétique et Logique
(UAL)
C (Entrée de commande)
A (Op1)
UAL S (Res)
B (Op2)
PSW (Flags)
Les registres
15 0
X X X X OF DF IF TF SF ZF X AF X PF X CF PSW
Bits de condition (rouge)
Ce sont des bits à lecture, configurés par le processeur et interprétés par le programmeur
– CF (Carry-out) : mis à 1 en cas de débordement sur opération non-signée
– OF (Overflow) : mis à 1 en cas de débordement sur opération signée.
– ZF (Zéro) : indicateur mis à 1 si le résultat de l’opération est 0.
– PF (Parity) : 1 si le poids faible résultat un nombre pair de 1, 0 sinon.
– AF (Auxiliary) : 1 si retenue sur le 3eme bit, 0 sinon
– SF (Sign) : 1 si le bit du poids fort du résultat est = 1, 0 sinon
36
14/02/2026
Les registres
– CF (Carry-out) : mis à 1 en cas de débordement sur opération non-signée
– OF (Overflow) : mis à 1 en cas de débordement sur opération signée.
– ZF (Zéro) : indicateur mis à 1 si le résultat de l’opération est 0.
– PF (Parity) : 1 si le poids faible résultat un nombre pair de 1, 0 sinon.
– AF (Auxiliary) : 1 si retenue sur le 3eme bit, 0 sinon
– SF (Sign) : 1 si le bit du poids fort du résultat est = 1, 0 sinon
1111 1111 0111 1111
+ +
0000 0001 0000 0001
0000 0000 1000 0000
CF=1 CF=0
OF=1 (Somme 2 nbrs pos
OF=0 donne result neg !)
ZF=1 ZF=0
Les registres
15 0
X X X X OF DF IF TF SF ZF X AF X PF X CF PSW
Bits de contrôle (bleu)
Ce sont des bits à écriture, configurés par le programmeur
DF=0 : gauche vers droite
DF=1 : droite vers gauche
IF=0 : ignoré
IF=1 : autorisé
TF=0 : exécution pas à pas
TF=1 : exécution block
Pour modifier le bit TF:
PUSHF (empiler le registre PSW)
POP AX (AX=PSW)
OR AX, 0000000100000000b (Pour TF=1) ou AND AX, 1111111011111111b (pour TF=0)
PUSH AX
POPF (Dépiler sommet de pile vers PSW)
37
14/02/2026
Les registres
4 registres segment
DS (Data Segment) : contient adresse de segment de DATA, pointe sur la zone mémoire
des données
SS (Stack Segment) : contient adresse de segment de pile
CS (Code Segment) : contient adresse de segment de code et les instructions du programme
exécutable.
ES (Extra Segment) : adresse pour les données auxiliaires ou supplémentaires
Les mémoires internes
On appelle « mémoire » tout dispositif capable d’acquérir, enregistrer,
conserver les informations (données + programmes), et de les restituer à la
demande
38
14/02/2026
Les mémoires internes
Registres UCT
Accès (CPU)
très
rapide
MÉMOIRE MÉMOIRE
CENTRALE SECONDAIRE
Mémoire principale Auxiliaire
Interne Externe
Mémoire de masse
Accès RAM Disque dur Accès
rapide ROM Flash disque lent
SRAM CD/DVD
DRAM … etc
… etc
Les mémoires internes
MÉMOIRE
CENTRALE
La mémoire
RAM ROM
centrale est à
Volatile dominance RAM Non volatile
Lecture/Ecriture Lecture seule
Stocke temporairement Stocke des informations
les informations sur immuables sur l’ordinateur
lesquels vous travaillez (Ex:Bios)
39
14/02/2026
Les mémoires internes
RAM (Random Access Memory)
La RAM est une structure composée de plusieurs cases mémoire
de la même taille
Elle est formellement définie comme un tableau avec des cellules
indexées comme adresses
Elle est caractérisée par sa Taille (capacité), et le Mot mémoire.
Les mémoires internes
Mémoire centrale RAM
Case Adresse N-1
0 0 0 1 1 1 1 0
Case
Case
Mot mémoire = Nombre de bits
(8 bits) .
.
Taille = Nombre de cases (en octets) .
.
Taille = Nb_cases × Mot_Memm (en .
octets
Case Adresse 2
Nb_case = 16, Mot_Mem = 8 bits
Taille_Mem = 16 × 8bits(1 octet) Case Adresse 1
= 16 octets Case Adresse 0
40