Vous êtes sur la page 1sur 57

STRUCTURE INTERNE DES

ORDINATEURS

Dr. Wissam JENKAL


PhD on signal processing and embedded systems Cycle d’ingénieur : GI - 2018/2019
Current research interests include Embedded systems, Biomedical Engineering and
Information Technologies
Structure Interne Des Ordinateurs

Objectifs du Module
■ Acquérir les connaissances de base sur la structure interne des ordinateurs.

■ Appréhender les liens entre les applications informatiques, les systèmes


d'exploitation et l'architecture de la machine utilisée.

■ Planifier et proposer des solutions pour une utilisation adéquate des processeurs.

■ Développer des applications en assembleur des pentiums.

2
Structure Interne Des Ordinateurs

Planning du cours
■ Chapitre 1 : Présentation générale & Représentation interne des informations

■ Chapitre 2 : Unité centrale de traitement

■ Chapitre 3 : Architecture du Pentium

■ Chapitre 4 : Architecture logicielle

■ Chapitre 5 : Mémoires et Entrées/Sorties

■ Chapitre 6 : Programmation assembleur

2
Chapitre 1 : Présentation générale & Représentation interne des informations

Sommaire
I. Introduction

II. Définitions et vocabulaire de base (information, informatique, traitement…)

III. L’ordinateur et le traitement de l’information

IV. Principe de fonctionnement

V. Les unités de mesure de l’information

VI. Représentation interne des informations : Codage ASCII

VII.Représentation interne des informations : Codage de données numériques

VIII. Représentation interne des informations : Notion d’Endianisme


4
I. Introduction

2
| Chapitre 1 : Présentation générale & Représentation interne des informations

1 50
4
Retrouver la donnée qui se répète dans les différentes figures ?
5
Trouver les figures qui donnent un renseignement significatif (sens) ?
6
| Chapitre 1 : Présentation générale & Représentation interne des informations

I. Introduction

S’agit-il de la même information ?

DEFENSE
DE FUMER
I. Introduction
| Chapitre 1 : Présentation générale & Représentation interne des informations

Danger Signe de panneau Symbole de la radiation nucléaire


routier

7
8
| Chapitre 1 : Présentation générale & Représentation interne des informations

I. Introduction
II. Définitions et vocabulaire de base (information,
informatique, traitement…)
Définition 1 : Le mot information est parfois utilisé pour théoriser des choses pratiques relevant en
réalité de la perception (prise de connaissance). (sens commun)
Exemple : un individu a faim parce que son estomac l'a informé de son besoin
| Chapitre 1 : Présentation générale & Représentation interne des informations

Définition 2 : Une définition pratique et efficace (dans le domaine des systèmes d’information par
exemple), est de définir l'information comme étant une « connaissance pouvant avoir un effet » (sens
pratique). Cette connaissance doit être portée par un support et mise en présence d'une entité (un être
humain ou un dispositif) et que cette entité fasse quelque chose à partir de cette information.

Information = Données + Sens


9
II. Définitions et vocabulaire de base (information, informatique,
traitement…)

■ L’information peut prendre plusieurs formes : texte, image, son, vidéo, symbole …etc
| Chapitre 1 : Présentation générale & Représentation interne des informations

Texte Son

Image Vidéo
10
II. Définitions et vocabulaire de base (information, informatique,
traitement…)

■ L’information peut prendre plusieurs formes : texte, image, son, vidéo, symbole …etc
| Chapitre 1 : Présentation générale & Représentation interne des informations

11
II. Définitions et vocabulaire de base (information, informatique,
traitement…)

■ Notion de traitement : Traitement des eaux usées

Information
d’entrée
Le traitement est une suite d’opérations
effectuées pour transformer des données
| Chapitre 1 : Présentation générale & Représentation interne des informations

en résultats

Traitement

Information de
sortie
12
II. Définitions et vocabulaire de base (information, informatique,
traitement…)

Types de traitement

Traitement manuel : Toutes les opérations sont effectuées par l’être humain.
| Chapitre 1 : Présentation générale & Représentation interne des informations

Traitement Semi-automatique : Une partie des tâches sont assurés par l’être
humain et l’autre partie réalisée par des moyens technologiques.

Traitement automatique : Toutes les tâches sont effectuées uniquement par


des moyens technologiques.

13
II. Définitions et vocabulaire de base (information, informatique,
traitement…)

■ Automatique
| Chapitre 1 : Présentation générale & Représentation interne des informations

Guichet automatique Porte automatique


bancaire Distributeur automatique
a café
14
II. Définitions et vocabulaire de base (information, informatique,
traitement…)

Infor
Information
| Chapitre 1 : Présentation générale & Représentation interne des informations

Traitement automatique
matique

15
Traitement manuel Informatique
II. Définitions et vocabulaire de base (information, informatique,
traitement…)

L’informatique est la science du traitement automatique des informations

INFORMATIQUE= INFORMATION + AUTOMATIQUE


| Chapitre 1 : Présentation générale & Représentation interne des informations

 Définition 1 : L'informatique est un domaine d'activité scientifique, technique et industriel


concernant le traitement automatique de l'information par l'exécution de programmes
informatiques par des machines : des systèmes embarqués, des ordinateurs, des robots, des
automates, etc.

 Définition 2 : Théorie et traitement de l'information à l'aide de programmes mis en œuvre sur des
machines.

16
III. L’ordinateur et le traitement de
l’information

+
| Chapitre 1 : Présentation générale & Représentation interne des informations

Partie matérielle Partie logicielle

Système Informatique
17
| Chapitre 1 : Présentation générale & Représentation interne des informations

18
Smartphone
l’information

Ordinateur
III. L’ordinateur et le traitement de

ROBOT
III. L’ordinateur et le traitement de
l’information L’Ordinateur?

 Machine qui permet de traiter de l’information:


 d’acquérir et de conserver de
l’information (acquisition, stockage)
 d’effectuer des traitements (calcul),
 de restituer les informations stockées
(restitution)
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Permet de lier «information»  «données» (0


ou 1)
 Différents types d’informations: valeurs
numériques, textes, images, sons, …:
tout cela avec des 0 ou 1

19
III. L’ordinateur et le traitement de
l’information Historique

 Apparition du calcul

 Dès la préhistoire on comptait avec des


cailloux et avec ses doigts.
 Calcul vient du latin Calculi signifiant
caillou.
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Antiquité

 Chaque civilisation (Grecs, Romains,


Chinois ...) avait développé des
systèmes et bases de numérotation et
des méthodes pour compter et
calculer.

 Ensuite sont apparus les outils pour


aider aux calculs.
20
III. L’ordinateur et le traitement de
l’information Historique

 17ème siècle : la science s'intéresse de plus en plus aux outils de calcul

 1620 : Règle à calcul (selon les principes de Neper)


 1623, Schickard : Première machine à calculer, roues dentées et retenues
 1642, Pascal : machine faisant des additions et soustractions de 6 chiffres (la Pascaline)
 1674, Leibniz : calculatrice avec 4 opérations arithmétiques
| Chapitre 1 : Présentation générale & Représentation interne des informations

21
III. L’ordinateur et le traitement de
l’information Historique

 Avancées théoriques

 1854, Boole : algèbre de Boole, logique symbolique


 1938, Shannon : liens entre nombres binaires, algèbre de Boole et les
signaux électriques
 1936, Turing : machine de Turing
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Naissance de l'ordinateur

 Fin des années 30/début 40, plusieurs prototypes fonctionnant en binaire et


basés sur logique booléenne
 Ex : 1941, Zuse : Z3, calculateur utilisant une technologie électro-mécanique
 1945, Eckert & Mauchly : ENIAC (Electronical Numerical Integrator And
Calculator)

22
III. L’ordinateur et le traitement de
l’information Historique

 ENIAC
 Premier calculateur/ordinateur moderne
 Entièrement électronique
 Utilise des tubes à vide et des relais
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Machine universelle, programmable


 Utilise un système décimal
 Inconvénient : difficulté de passer d'un
programme à un autre (6000
commutateurs connectables pour
programmer)
 30 tonnes, forme de U de 6 mètres de
large et 12 de long.
23
III. L’ordinateur et le traitement de
l’information
Machine de Von Neumann

 Avancée majeure : Von Neumann, 1945


 Idée : stocker le programme à exécuter dans la mémoire de l'ordinateur.
Avant : suite séquentielle d'instructions
 Programme était généralement entré via des cartes perforées

Maintenant
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Le programme peut prendre des décisions selon des résultats intermédiaires.


 Changer de chemin dans la séquence d'instructions
 Effectuer des tests, des boucles, des sauts conditionnels ...
 Von Neumann définit également une architecture générale : naissance de l'ordinateur

Machine de Von Neumann = Ordinateur

24
III. L’ordinateur et le traitement de
l’information
Machine de Von Neumann

 Machine de Von Neumann = ordinateur


 Machine universelle contrôlée par un
programme.
 Les instructions du programme sont
stockées en mémoires et codées en
binaire.
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Les instructions sont exécutées en


séquence par défaut.
 Mais le programme peut en modifier
l'ordre d'exécution.
 Création d'instructions pour ruptures
de séquences.
 Le programme peut se modifier.

25
III. L’ordinateur et le traitement de
l’information
Machine de Von Neumann

 Von Neumann a également défini


l'architecture générale d'un ordinateur.

 5 éléments principaux

 Unité arithmétique et logique (UAL


| Chapitre 1 : Présentation générale & Représentation interne des informations

ou ALU)
 Unité de contrôle
 Unité d'entrées
 Unité de sorties
 Mémoire centrale

 Cette architecture est toujours en


vigueur de nos jours

26
III. L’ordinateur et le traitement de
l’informationMachine de Von Neumann

 Génération 0 : 17ème siècle à 1945


 Calculateurs mécaniques
 Première génération : 1945 – 1955
 Tubes à vide
 Premiers calculateurs électroniques
 Ex: ENIAC
 Seconde génération : 1955 – 1965
 Transistors remplacent les tubes à vides
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Premières séries commerciales d'ordinateurs


 Troisième génération : 1965 – 1980
 Circuits intégrés : permettent de placer un 1. Filament chauffé par une source électrique
auxiliaire.
nombre important de transistors sur une même
2. Cathode : chargée négativement.
puce de silicium
3. Flux d'électrons se déplaçant de la cathode vers
 Début de la montée en puissance et de la
l'anode.
miniaturisation
4. Anode : chargée positivement.
 1971 : Intel 4004
5. Courant électrique mesuré dans le circuit.
 Première unité de calcul (sur 4 bits) intégrée
6. Source de tension permettant de charger
entièrement sur une seule puce
positivement l'anode.
27  Premier micro-processeur
III. L’ordinateur et le traitement de
l’informationMachine de Von Neumann

 Génération 0 : 17ème siècle à 1945


 Calculateurs mécaniques
 Première génération : 1945 – 1955
 Tubes à vide
 Premiers calculateurs électroniques
 Ex: ENIAC
 Seconde génération : 1955 – 1965
 Transistors remplacent les tubes à vides
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Premières séries commerciales d'ordinateurs


 Troisième génération : 1965 – 1980
 Circuits intégrés : permettent de placer un
nombre important de transistors sur une même
puce de silicium
 Début de la montée en puissance et de la
miniaturisation
 1971 : Intel 4004
 Première unité de calcul (sur 4 bits) intégrée
entièrement sur une seule puce
28  Premier micro-processeur
III. L’ordinateur et le traitement de
l’information Génération d’ordinateurs électroniques

Mécanique 1623-1900

Electromécanique 1900-1945

1 Triodes 1946-1957

2 Transistors 1958-1964

3 Circuit intégrés SSI et MSI 1965-1971

LSI 1972-1977
| Chapitre 1 : Présentation générale & Représentation interne des informations

4 Microprocesseurs VLSI 1978

Loi de Moore
Croissance du nombre de transistors dans
les microprocesseurs Intel par rapport à la
loi de Moore. La prédiction initiale voulant
que ce nombre double tous les 18 mois

29
| Chapitre 1 : Présentation générale & Représentation interne des informations

30
l’information
Evolution de la famille Intel
III. L’ordinateur et le traitement de
IV. Principe de fonctionnement
 Mémoire centrale
 Stocke les programmes et les données
 Enregistre les résultats

 Unités d'entrées et de sorties, pour


Communication avec :
 En entrée : clavier, souris, disque dur
 En sortie : carte graphique, disque dur
| Chapitre 1 : Présentation générale & Représentation interne des informations

 Processeur est divisé en deux parties


 l’unité de commande est responsable
de la lecture en mémoire et du
décodage des Instructions.
 l’unité de traitement, aussi appelée
Unité Arithmétique et Logique (U.A.L.),
exécute les instructions qui manipulent
les données.

31
| Chapitre 1 : Présentation générale & Représentation interne des informations

IV. Principe de fonctionnement

 Le bus d'adressage : sur lequel le processeur envoie les adresses des cellules mémoire et des entrées/sorties
auxquelles il veut accéder.
 Le bus de données : est bidirectionnel puisque le processeur l'utilise pour lire et pour écrire en mémoire ou
dans les I/O.
 Le bus de contrôle (parfois bus de commandes) : transporte les ordres et les signaux de synchronisation en
provenance de l'unité de commande et à destination de l'ensemble des composants matériels. Il s'agit d'un bus
directionnel dans la mesure où il transmet également les signaux de réponse des éléments matériels.
32
IV. Principe de fonctionnement
 Parmi les registres, le plus important est le registre accumulateur, qui est utilisé pour stocker les résultats
des opérations arithmétiques et logiques. L’accumulateur intervient dans une proportion importante des
instructions.

 On distingue les registres suivants :


 ACC : Accumulateur.
 RTUAL : Registre Tampon de l’UAL, stocke
temporairement l’un des deux opérandes d’une
| Chapitre 1 : Présentation générale & Représentation interne des informations

instructions arithmétiques
 Reg. d’état : stocke les indicateurs, que nous
étudierons plus tard.
 RI : Registre Instruction, contient le code de
l’instruction en cours d’exécution .
 IP : Instruction Pointer ou Compteur de Programme,
contient l’adresse de l’emplacement mémoire où se
situe la prochaine instruction à exécuter.

33
V. Les unités de mesure de l’information

1 Octet = 1 0 0 1 1 0 1 1 = 8 Bits

1 Kilo-octet = … = 1024 Octets


| Chapitre 1 : Présentation générale & Représentation interne des informations

1 Méga-octet= … = 1024 Ko

1 Giga-octet= … = 1024 Mo

1 Téra-octet= … = 1024 Go

34
VI. Représentation interne des informations : Codage ASCII

Codage de données

 Toute information sera traitée comme une suite de


0 et de 1. L’unité d’information est le chiffre binaire
(0 ou 1), que l’on appelle bit (pour binary digit,
chiffre binaire).
 Le codage d’une information consiste à établir une
| Chapitre 1 : Présentation générale & Représentation interne des informations

correspondance entre la représentation externe


(habituelle) de l’information (le caractère A ou le
nombre 36 par exemple), et sa représentation
interne dans la machine, qui est une suite de bits.

Codage : Fonction établissant une correspondance entre


la représentation externe de l'information (e.g., A, 36,
une image, un son) et sa représentation interne qui est
une suite de bits (e.g., 01000001, 100100, ...).

35
VI. Représentation interne des informations : Codage ASCII

System binaire

 Un système de numération utilisant la base 2. Toutes les informations sont codées avec des 0 et
des 1.
 1 bits : 2 possibilités = 0, 1
 2 bits : 4 possibilités = 00, 01, 10, 11
| Chapitre 1 : Présentation générale & Représentation interne des informations

 3 bits : 8 possibilités = 000, 001, 010, 011, 100, 101, 110, 111
 n bits : possibilités
 Un mot = un ensemble de bit avec un poids

Avantage
 Facile a réaliser techniquement. En électronique ces 2 états corresponde a l'existence ou non
d'une tension (+5V=1 et 0V=0).
 Operations fondamentales faciles a effectuer (circuits logiques)
 Arithmétique binaire peut être réalisée a partir de la logique symbolique
36
VI. Représentation interne des informations : Codage ASCII

System binaire

 Un système de numération utilisant la base 2. Toutes les informations sont codées avec des 0 et
des 1.
 1 bits : 2 possibilités = 0, 1
 2 bits : 4 possibilités = 00, 01, 10, 11
| Chapitre 1 : Présentation générale & Représentation interne des informations

 3 bits : 8 possibilités = 000, 001, 010, 011, 100, 101, 110, 111
 n bits : possibilités
 Un mot = un ensemble de bit avec un poids

Avantage
 Facile a réaliser techniquement. En électronique ces 2 états corresponde a l'existence ou non
d'une tension (+5V=1 et 0V=0).
 Operations fondamentales faciles a effectuer (circuits logiques)
 Arithmétique binaire peut être réalisée a partir de la logique symbolique
37
VI. Représentation interne des informations : Codage ASCII

System binaire

 Avant d’aborder la représentation des différents types de données (caractères, nombres naturels,
nombres réels), il convient de se familiariser avec la représentation d’un nombre dans une base
quelconque (par la suite, nous utiliserons souvent les bases 2, 8, 10 et 16).
 Habituellement, on utilise la base 10 pour représenter les nombres, c’est-à-dire que l’on écrit à l’aide de
10 symboles distincts, les chiffres.
| Chapitre 1 : Présentation générale & Représentation interne des informations

 En base b, on utilise b chiffres. Notons ai la suite des chiffres utilisés pour écrire un nombre

38
VI. Représentation interne des informations : Codage ASCII

Codage ASCII

 Caractères ASCII (American Standard Code for Information Interchange)


| Chapitre 1 : Présentation générale & Représentation interne des informations

39
VI. Représentation interne des informations : Codage ASCII

Codage ASCII

 Caractères ASCII (American Standard Code for


Information Interchange)
| Chapitre 1 : Présentation générale & Représentation interne des informations

40
V. Représentation interne des informations : Codage de données numériques

Codage de données numériques

Règle d’addition en binaire:


0+0=?
0+1=?
1+0=?
1+1=?
| Chapitre 1 : Présentation générale & Représentation interne des informations

41
V. Représentation interne des informations : Codage de données numériques

Codage de données numériques

Représentation pondérée d’un nombre N dans une base B


| Chapitre 1 : Présentation générale & Représentation interne des informations

 Base binaire B=?


 Base octale B=?
 Base décimale B=?
 Base hexadécimale B=?

42
| Chapitre 1 : Présentation générale & Représentation interne des informations

43
Codage de données numériques
V. Représentation interne des informations : Codage de données numériques
V. Représentation interne des informations : Codage de données numériques

Codage de données numériques

Exercices:

 1. Donner la valeur décimale des entiers suivants:

(a) 1011011 et 101010 en binaire (base 2).


Correction : 1011011 = 91, 101010 = 42.
| Chapitre 1 : Présentation générale & Représentation interne des informations

(b) A1BE et C4F3 en hexadécimal (base 16).


Correction : A1BE= 41 406, C4F3 = 50 419.
(c) 77210 et 31337 en octal (base 8).
Correction : 77210 = 32 392, 31337 = 13 023.
 2. Coder l’entier 2 397 successivement en base 2, 8 et 16.
Correction : 2 397 = 100101011101 = 4535 = 95D.
 3. Donner la valeur décimale du nombre 10101, dans le cas où il est codé en base
2, 8 ou 16.
Correction : 10101 = 21, 10101 = 4 161, 10101 = 65 793.
Même question avec le nombre 6535 codé en base 8 ou 16.
44 Correction : 6535 = 3 42110, 6535 = 25 909
| Chapitre 1 : Présentation générale & Représentation interne des informations

45
Codage de données numériques
V. Représentation interne des informations : Codage de données numériques
| Chapitre 1 : Présentation générale & Représentation interne des informations

46
Codage de données numériques
V. Représentation interne des informations : Codage de données numériques
| Chapitre 1 : Présentation générale & Représentation interne des informations

47
Codage de données numériques
V. Représentation interne des informations : Codage de données numériques
| Chapitre 1 : Présentation générale & Représentation interne des informations

48
Codage de données numériques
V. Représentation interne des informations : Codage de données numériques
| Chapitre 1 : Présentation générale & Représentation interne des informations

49
Codage de données numériques
V. Représentation interne des informations : Codage de données numériques
V. Représentation interne des informations : Codage de données numériques

Représentation des nombres réels

■ Un nombre réel est constitué de deux parties : la partie entière et la partie


fractionnelle ( les deux parties sont séparées par une virgule )

■ Problème : comment indiquer à la machine la position de la virgule ?


| Chapitre 1 : Présentation générale & Représentation interne des informations

■ Il existe deux méthodes pour représenter les nombre réel :

– Virgule fixe : la position de la virgule est fixe

– Virgule flottante : la position de la virgule change ( dynamique )

50
V. Représentation interne des informations : Codage de données numériques

Représentation des nombres réels : Virgule fixe

■ Dans cette représentation la partie entière est représentée sur n bits et la partie fractionnelle sur p
bits , en plus un bit est utilisé pour le signe.

■ Exemple : si n=3 et p=2 on va avoir les valeurs suivantes


| Chapitre 1 : Présentation générale & Représentation interne des informations

valeur P.F P.E Signe

+ 0,0 00 000 0
Dans cette représentation les valeurs sont
+ 0,25 01 000 0
limitées et nous n’avons pas une grande
+ 0,5 10 000 0
précision
+ 0,75 11 000 0
+ 1,0 .00 001 0

51
V. Représentation interne des informations : Codage de données numériques

Représentation des nombres réels : Virgule flottante

N = (1)s  M  BE
Exemples
où : M = mantisse 10110 = 1,01  102
B = base - 510 = - 1012 = - 1,01  22
| Chapitre 1 : Présentation générale & Représentation interne des informations

E = exposant
s = signe de la mantisse

Norme IEEE 754 de simple précision


La mantisse M est normalisée sous la forme 1,f et
l’exposant est ajusté en conséquence. La partie f
est codée sur 23 bits.
On ajoute 127 à E et le total est codé sur 8 bits.
s est le signe de la mantisse.
52
V. Représentation interne des informations : Codage de données numériques

Représentation des nombres réels : Virgule flottante

Exemple :
• 100010 = 3E816 = 11111010002 = 1,111101000  29
• s = 0 car nombre positif
| Chapitre 1 : Présentation générale & Représentation interne des informations

• E = 9 donc E + 127 = 136 = 100010002


• M = 1,111101000 donc f = ,111101000

0 1000 1000 111 1010 0000 0000 0000 0000

On peut écrire 447A0000IEEE en groupant les bits 4 par 4 et en les codant en hexadécimal.

53
V. Représentation interne des informations : Codage de données numériques

Représentation des nombres réels : Virgule flottante

Exercice :
Convertir le nombre de simple précision 40500000IEEE en décimal.

0 10000000 10100000000000000000000
| Chapitre 1 : Présentation générale & Représentation interne des informations

s = 0 donc signe = +
E + 127 = 128, donc E = 1
M = 1,f = 1,101
N = +1,1012  21 = 11,012  20 = 3,2510

54
V. Représentation interne des informations : Codage de données numériques

Représentation des nombres réels : Virgule flottante

725 => 1011010101


Norme IEEE 754 de double précision
La mantisse M est normalisée sous la forme 1,f 1,011010101
et l’exposant est ajusté en conséquence. La
=> 2^9
partie f est codée sur 52 bits.
On ajoute 1023 à E et le total est codé sur 11 bits. 0 10001000 011 0101 0100 0000 0000 0000
s est le signe de la mantisse.
| Chapitre 1 : Présentation générale & Représentation interne des informations

7.25 => 111,01

1,11 01 => 2^2

0 10000001 110 1000 0000 0000 0000 0000


Exercice
Codage en IEEE 754 Coder le réel suivant (représentés en base 10) en simple précision (simple précision codage
sur 32 bits)
a) 725 b) 7,25
55
| Chapitre 1 : Présentation générale & Représentation interne des informations

56
VI. Représentation interne des informations : Notion d’Endianisme
VI. Représentation interne des informations : Notion d’Endianisme

• Le mode big endian accélère les


opérations qui nécessitent de regarder en
premier les bits de poids forts comme la
recherche du signe, la comparaison de
deux entiers et la division.
| Chapitre 1 : Présentation générale & Représentation interne des informations

• Au contraire le mode little endian


favorise les opérations qui commencent
par les bits de poids faible comme
l’addition et la multiplication.

57