0% ont trouvé ce document utile (0 vote)
201 vues173 pages

Architecture Ordi

Ce document présente le cours d'architecture des ordinateurs donné par le professeur Taha AIT TCHAKOUCHT. Le cours est divisé en 5 chapitres et aborde des sujets comme l'histoire de l'informatique, les composants d'un ordinateur, les bases de numération et les erreurs de transmission.

Transféré par

Anas Jb
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
201 vues173 pages

Architecture Ordi

Ce document présente le cours d'architecture des ordinateurs donné par le professeur Taha AIT TCHAKOUCHT. Le cours est divisé en 5 chapitres et aborde des sujets comme l'histoire de l'informatique, les composants d'un ordinateur, les bases de numération et les erreurs de transmission.

Transféré par

Anas Jb
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Euro-Méditeranéene de FES

Ecole de l'Ingénierie Digitale et de


l'Intelligence Artificielle

Architecture des
ordinateurs

Professeur: Taha AIT TCHAKOUCHT

1
Biographie:

- Taha AIT TCHAKOUCHT, 32 ans.

- Ingénieur d’Etat de l’Ecole Nationale des Mines Rabat (Ex. ENIM)


en 2012.

- Doctorat de la Faculté des Sciences et techniques, Tanger

- Travaillé en tant que qu’ ingénieur à B3G, spécialisé dans le développement


de solutions web et mobiles, Rabat

- Responsable du Tronc Commun EIDIA

- Travaux de recherches sur détection des intrusions et Réseaux de neurones. 2


Agenda :

ARCHITECTURE DE VON NEUMANN

LES COMPOSANTES PRINCIPALES D’UN ORDINATEUR

BASES DE NUMERATION

ERREUR DE TRANSMISSION

BASES DE L’ASSEMBLEUR 8086

3
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

INTRODUCTION AU MONDE
DES ORDINATEURS
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Architecture de Von Neumann

• Découverte des systèmes à microprocesseur


• Les différents types et caractéristiques des mémoires
• Les composantes principales d’un processeur
• L’échange de l’information entre mémoires et processeur

Matériel Informatique
• Ouverture d’une unité centrale
• L’intérieur de l’unité centrale : Alimentation, Lecteurs CD/DVDs,
Disque dur, carte mère, CPU, RAM, Carte graphique,
ventilateurs
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Bases de numération et erreur de transmissions


• Codage des nombres dans les bases binaire, octale,
hexadécimale, BCD, Gray
• Conversion entre les différentes bases précitées
• Opérations arithmétiques dans les différentes bases
• Codes ASCII et Unicode pour le codage des caractères
• Quelques techniques de détection et corrections des erreurs
(code de parité, CRC, Hamming)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Détails des TPs :


• Décortiquer l’unité centrale d’un ordinateur et voir de plus près
les différents composants.
• Découvrir les différents composants matériels d’un ordinateur à
travers une application de réalité virtuelle, qui permettra à
l’étudiant de tester ses connaissances vis à vis les composants
d’une unité centrale et leur interconnexion
• Optimisation des ressources d’un ordinateur et diagnostic des
erreurs système.
• Manipulation du langage Assembleur pour le processeur 8086
via le logiciel EMU8086 (Algorithmes et opérations de bases).
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

L'informatique a pour objet d'élaborer et de formuler l'ensemble de commandes,


d'ordres ou d'instructions permettant de commander l'ordinateur et de l'orienter
lors du traitement.

L’ordinateur est une machine capable d’effectuer


toute sorte d’opération et de traitement tels que les
Calculs et les traitements d’images, etc….
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Le Codage de l’information: La représentation d’un ensemble d’informations sous


une forme qui permettrait de les manipuler, stocker, transmettre, etc…

Quelle que soit la nature de l'information traitée par un ordinateur (image, son,
texte, vidéo), elle l'est toujours sous la forme d'un ensemble de nombres écrits en
binaire, par exemple 01001011.

0101101110011101
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Compilateur

Traduction
Programme Code binaire

main()
0101101110011101
{
int a =300;
}
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Le Codage de l’information: La représentation d’un ensemble d’informations sous


une forme qui permettrait de les manipuler, stocker, transmettre, etc…

Quelle que soit la nature de l'information traitée par un ordinateur (image, son,
texte, vidéo), elle l'est toujours sous la forme d'un ensemble de nombres écrits en
binaire, par exemple 01001011.

0101101110011101
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

L’informatique est le traitement automatique de l’information

Un ensemble de calcul à faire


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- L’humanité avait toujours besoin de compter et faire des calculs.

- Au cours de l’histoire l’homme a pu compter en utilisant:


Ses mains, ses pieds, des cailloux, etc.

- On trouve déjà des traces de symboles et chiffres ainsi que des méthodes de
calculs dans plusieurs civilisations, Chinois, Egyptiens, Sumériens, Babyloniens,
Grecs et romains.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Dans les années 500, les civilisations méditerranéennes utilisaient l’abaque.


- Les abaques sont des tables compter sur lesquelles étaient tracées lignes et
colonnes (construit généralement à base de bois).

Pour représenter un
nombre on place des jetons
de la droite vers la gauche
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Chaque colonne est divisée en 2 parties:

Un jeton du haut correspond à 5 unités

Un jeton du bas correspond à une unité

794 675
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Addition avec Abaque:


On Ajoute les jetons du
2ème nombre
A= 84 786

B = 795 301
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

On remplace cinq jetons de


bas par un jeton du haut
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Deux jetons du haut = 10


Ça correspont à une unité de la
colonne immédiatement à
gauche
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- D’autres civilisations, chinois, japonais, russes, utilisaient les bouliers

Soroban Japonais
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Au Moyen Âge, la culture était l’affaire des moines et la question des calculs et
diffusion de l’arithmétique était limitée à quelques personnes privilégiés dans la
société.

- Néanmoins, le besoin en calcul augmentaient, d’où l’apparition de sociétés


secrètes qui se chargeaient de résoudre des problèmes de comptabilité

- Il a fallu attendre jusqu’au 17ème siècle pour que l’esprit de la société se libère et
ainsi plus d’intérêt publique a été apporté à la science. On a donc pu découvrir
des systèmes de calculs plus rapides et plus automatiques (Période de la
révolution de la pensée scientifique)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Quelques avancées scientifiques marquante: 1614 – 1945

1614: John Neper Introduit les logarithmes → Transformation de multiplication


compliquées en simple additions.

1642: Pascal crée en sa première machine (La pascaline), basée sur des roues
dentées, qui permet d’additionner et soustraire des nombres de 6 chiffres.

1673: Leibniz invente une machine à calculer, pouvant réaliser automatiquement les 4
opérations arithmétiques (Il se base sur les travaux de Pascal)

1805: Jacquard crée une machine permettant d’exécuter un programme externe sous
forme de cartes perforées (Il se base sur les travaux de Falcon 1728)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Carte perforée
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Quelques avancées scientifiques marquantes: 1614 – 1945

1854: George Boole conçoit un système de logique symbolique (Algèbre booléenne)


qui sera appliqué après au système binaire et a donc a rendu
possible la création de l’ordinateur

1890: Hollerith perfectionne les cartes perforées et crée un calculateur de statistiques.


Il crée une compagnie pour produire les cartes perforées (Tabulating
machines company)

1924: Hollerith: Sa compagnie porta le nom de International Business Machines IBM


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Quelques avancées scientifiques marquantes: 1614 – 1945

Les années 30s ont aussi été marqué par des avancées révolutionnaire

1936: Alan Turing développe un modèle abstrait de fonctionnement des machines tel que
l’ordinateur.

1938: Claude Shanon développe ce qu’on appelle maintenant la théorie de l’information.


C’est une théorie qui fait le rapprochement entre le système binaire,
Algèbre de Boole et circuits électriques.
Il prouva donc que tous les calculs logiques et arithmétiques peuvent
se faire à l’aide de 3 opérations logiques de base : OU, ET, NO
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Quelques avancées scientifiques marquantes: 1614 – 1945

Les années 30s ont aussi été marqué par des avancées révolutionnaire

Entre 1939 et 1944: IBM et Université de Harvard (Howard Aiken) Créent un énorme
calculateur (Mark1 )qui permet de réaliser les opérations suivantes:
Additions et soustraction en 3/10 s
Multiplication de deux nombres de 23 chiffres en 6s.
Mark1 est l’un des derniers précurseurs de l’ordinateur
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Chapitre 1:
ARCHITECTURE DE VON NEUMANN
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Chapitre 1: Objectifs

1- ARCHITECTURE DE VON NEUMANN (Système à µProcesseur)

2-DIFFERENTS TYPES DE MÉMOIRE

3-COMPOSANTES PRINCIPALES DU PROCESSEUR

4- ECHANGE DE L’INFORMATION ENTRE MÉMOIRE ET PROCESSEUR


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

→ Né en 1903 à Budapest et Mort à 1957 à Washington.

→ Mathématicien et physicien Américano-Hongrois.

→ Il a apporté avec ses recherches scientifique plusieurs


contributions en Mécanique quantique, informatique, sciences économiques,
ainsi que dans plusieurs autres domaines liés aux mathématiques et physiques

→ Il a aussi participé aux programmes militaires américains


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

→ Pour répondre aux besoins d’un laboratoire de recherche financé


par l’armée américaine, qui est appelé « Balistics Research Laboratory »
Von Neumman a rédigé en Juin 1945, le premier descriptif d’un ordinateur dont
le programme est stocké dans sa mémoire.

→ Le rapport est intitulé: « First Draft of a report on the EDVAC (Electronic


Discrete Variable Automatic Computer) ».

→ En 1946: Signature du contrat de construction de ce nouvel ordinateur (EDVAC).

→ Coût de construction est de 500 000 $


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Description technique de l’EDVAC: Caractéristiques

- Une capacité mémoire de 5,5 Ko.

- Occupe une surface de 45,5 𝑚2 .

- Son poids est de 7850Kg.

- Il faut 3 équipes de 30 personnes pour le faire fonctionner.


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Description technique de l’EDVAC: Opérations

- Addition.

- Soustraction

- Multiplication.

- Division.

- Opérations de vérification automatique.


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Description technique de l’EDVAC: Temps d’exécution

- Addition → 864 µs

- Multiplication → 2900µs
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

EDVAC a été jugé productif et


performant à l’époque

Son fonctionnement a pris terme en


1961

EDVAC a été remplacé par BRLESC


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Citez les différentes


composantes d’un pc,
que vous pouvez reconnaître ??
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Classez ces composantes en


trois catégories:
- Périphériques d’E/S
- Mémoires
- Unités de traitement
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Unité d’échange

Périphérique Mémoire Périphérique


d’entrée secondaire de sortie

Commandes
Processeur
Mémoire
centrale UC UT Données

Unité centrale
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

L’Unité centrale:

- L’unité de traitement (UC): Commande tout traitement fait par l’ordinateur

- L’unité de calcul (UT): Effectue les opérations (arithmétiques, logiques…), commandées par l’UT

- L’ ensemble UC et UT est appelé Processeur.

- La mémoire centrale: Sert pour stockage de données. C’est une mémoire volatile (RAM).
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

L’Unité d’échange:

- Périphérique d’entrée/sortie: Le clavier, la souris, l'écran et l’imprimante

- La mémoire secondaire: sert également de support de stockage de données. Elle est permanente

et se caractérise par une capacité supérieure à celle de la mémoire centrale. (Disque dur)
Chapitre 1 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Aussi appelé CPU (Central Processing Unit), le processeur est le


véritable cerveau de l’ordinateur. Toutes les avancées technologiques
se concentrent sur ce composant, qui travaille toujours plus vite
et effectue des opérations de plus en plus compliquées.

- Les différents composants électroniques, nécessaires au fonctionnement d'un processeur ne


pouvaient pas tenir sur un seul circuit intégré, ce qui nécessitait d'interconnecter de nombreux
composants dont plusieurs circuits intégrés. En 1971, la société américaine Intel réussit, pour la
première fois, à placer tous les composants qui constituent un processeur sur un seul circuit
intégré (Naissance du micro-processeur).
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- On est passé de deux mille trois cents transistors (le composant de base
des circuits informatiques) pour le premier microprocesseur à plusieurs centaines de millions
actuellement.

Se charge de tous les


Rôle du Processeur: calculs mathématiques
et des transferts de
données internes et
externes

Instructions Exécution et Résultat


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Mémoire secondaire (ex. Disque Dur)


- La zone de stockage la plus importante en taille est le Disque dur.
- C’est une mémoire permanente qui permet d’archiver et données et
programmes

- Cependant, sa relative lenteur (par rapport à la vitesse de


fonctionnement du processeur) ne permet pas son utilisation
lors de l’exécution des programmes.

→ Nécessité d’utilisation d’une autre technique de stockage, qui est plus rapide en accès, et donc
pouvant servir en tant que zone de stockage lors de l’exécution d’un programme.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Mémoire centrale (Mémoire principal, Mémoire cache, Registres) :


- Pour pouvoir exécuter une application, il faut amener les instructions la composant ainsi que
les données dont elle a besoin dans une mémoire beaucoup
plus rapide (c’est-à-dire d’où on peut extraire très vite une
information précise) ; il s’agit de la mémoire principale.

- L’unité de base est l’octet (8 bits) et on peut voir la mémoire comme un ensemble ordonné
d’octets dans lequel chaque case mémoire (donc chaque octet) a une adresse numérique.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Interaction entre Processeur


Et Mémoire principale:

Ensemble de fils
véhiculant les
informations et Mémoire principale
CPU
les commandes

Bus principal
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les avancées en technologies, ont permis de construire des boîtiers mémoire de grande
capacité et pouvant répondre rapidement aux sollicitations du processeur. Mais les capacités
d’accélération des processeurs étaient au-delà de ces améliorations (au niveau de la
mémoire.)
- Les processeurs passaient une bonne partie de leur temps à attendre que la mémoire
réagisse aux demandes, d’où une perte d’efficacité importante due à ces temps d’attente.

→ Il a donc fallu modifier la structure en positionnant entre la mémoire principale et le


processeur une mémoire encore plus rapide (mais plus chère et de capacité moindre),
appelée « mémoire cache » ou simplement « cache »
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Shéma actuel: CPU Mémoire cache

Comme la contrainte majeure est la vitesse de


réaction et de transfert, ce cache est directement
en prise avec le processeur. Cette mémoire Bus principal
permet d’accélérer encore plus les échanges
de données avec le processeur, utilisant celui-ci
au maximum de ses capacités.
Mémoire principale
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Outre le processeur et le stockage, il serait intéressant d’ajouter la possibilité de


communiquer avec l’extérieur.

- Les périphériques d’Entrées/Sortie, permettent à l’ordinateur d ’échanger l’information avec le


monde extérieur (Clavier, souris, écran, imprimante, scanner…), et de stocker des informations
de manière permanente et de les relire (Disque dur, CD/DVD, clés USB…)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Périphériques d’Entrée Périphériques de Sortie

Mémoire de masse

Réseaux
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

CPU RAM

Equipements
Entrée/Sortie
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Carte mère
CPU RAM (Motherboard)

Equipements
Entrée/Sortie
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

En vert, les périphériques


(ici, USB et JACK)

Mémoire
(ici, RAM, SSD)

L’Unité de contrôle et l’UAL


(Processeur - CPU)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Bus de données
Périphériques
D’E/S
RAM ROM
CPU Interfaces
D’E/S

UAL UC Bus d’adresses

Bus de contrôle
Read/Write
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

La communication entre les différentes composantes de l’ordinateur se fait via les

3 bus:

- Bus de données: qui permet le transfert des informations.

- Bus de contrôle: qui contrôle les accès des constituants au bus de données

- Bus d’adresses: qui spécifie les bonnes sources (ROM et RAM) ou la bonne

destination (RAM uniquement).


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Le traitement automatique de l’information est réalisé à l’aide d’un ou plusieurs


programmes
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Programme:
Une série d’instructions (opérations) que la machine
exécute pour effectuer des traitements.

Logiciels:
En général, c’est un ensemble de programmes dont
l’objectif est d’effectuer automatiquement une tâche
complexe.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Un ordinateur peut comporter un ensemble de logiciels selon le choix de


l’utilisateur:
Logiciels de
traitement de
texte

Logiciels de
conception 3D

Jeux vidéos
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Le logiciel de base est appelé Système d’exploitation (système opératoire).


Un ensemble de programmes assurant:

- Fonctionnement de toutes les composantes matérielles d'un ordinateur

- La communication Homme/Machine

Gestion de la mémoire - Gestion des périphériques - La gestion de partage de


ressources entre plusieurs utilisateurs - Interface utilisateur
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Un traitement automatique est réalisé au moyen d’un ou plusieurs programmes.

- Dans ces programmes on doit spécifier au processeur la source de données, les

opérations à effectuer pour atteindre l’objectif, et la destination où les résultats doivent

être renvoyé (Algorithme).

- Ce programme doit être traduit en un programme exécutable par la machine.


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- L'exécution d'un programme par l'ordinateur passe, en général, par les étapes suivantes :

1- Le processeur extrait les données à traiter à partir de la source indiquée dans le


programme (soit auprès de l'utilisateur qui devrait les introduire au moyen du clavier, soit
en mémoire secondaire ou centrale)

2- Il exécute, ensuite, la série d'opérations élémentaires de manière séquentielle (dans


l'ordre prévu par le programme) et mémorise tous les résultats intermédiaires.

3- Il renvoie enfin le ou les résultats attendus à la destination (périphérique de sortie)


indiquée dans le programme.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Le traitement automatique est réalisé moyennant un programme chargé en mémoire et exécutable


par la machine (binaire = langage machine).

Un langage de programmation permet au programmeur d'écrire son programme suivant une


grammaire qui peut être, soit celle du langage machine même, soit une grammaire facilement
interprétable par la machine ou pouvant être traduite en langage machine au moyen d'un outil logiciel
dit compilateur du langage
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Il existe 3 catégories de langages de programmation:

- Langage binaire: Langage machine exprimé en 0 et 1. Il produit des programmes automatiquement


consommables par la machine, mais qui sont illisibles et non-portables

- Langage de bas niveau (ex. Assembleur): Ces langages produisent des programmes facilement
interprétables par la machine mais d'utilisation lourde pour les programmeurs.

- Langage évolué (de haut niveau): Ils produisent des programmes clairs et lisibles mais ils doivent
encore être compilés (traduits en langage machine par un compilateur du langage) pour générer
des programmes exécutables. (Ex. Langage C, Java, Visual Basic).
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Exemple:
- Pour calculer le montant total d’une facture de téléphone pour des appels locaux, il faut
préciser au processeur les informations suivantes:

1- Les données (La consommation totale, prix unitaire, la TVA) à demander à l’utilisateur.

2- L'ordre des opérations à faire et les résultats intermédiaires à mémoriser (dans cet
exemple, il s'agit de calculer respectivement le prix hors taxe (PHT) et le prix total (PT).

3- Le résultat final (PT) à afficher.


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Algorithme:

Lire (consommation, prix unitaire, TVA)


PHT  (consommation*prix unitaire)
PT  PHT * (1 + TVA)
Ecrire PT
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Bus de données
Périphériques
D’E/S
RAM ROM
CPU Interfaces
D’E/S

UAL UC Bus d’adresses

Bus de contrôle
Read/Write
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Algorithme: 1ère instruction Lire (consommation, prix unitaire, TVA)


- ‘Lire’ est une instruction en langage algorithmique qui permet à un utilisateur d’entrer
une donnée en utilisant un périphérique d’entrée (Clavier…).
- L’utilisateur entre les valeurs numériques de (consommation, prix unitaire, TVA), qui
seront enregistrées dans la RAM.
- L’ UC ensuite envoie une commande Read (Bus de contrôle), ainsi que l’adresse de
l’instruction suivante (Bus d’adresses),. La RAM envoie l’instruction à travers le (Bus de
données).
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Algorithme: 2ème instruction PHT  (consommation*prix unitaire)


- C’est une instruction qui permet de calculer la valeur de PHT.
- L’UC envoie donc une commande Read (Bus de contrôle), ainsi que l’adresse des
données (consommation et prix unitaire) (Bus d’adresse) vers la RAM. Ces données sont
transférées à la CPU (Bus de données). PHT est calculée dans l’UAL. L’UC envoie une
commande Write vers la RAM pour enregistrer la valeur de PHT qui sera utilisée dans la
prochaine instruction.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Algorithme: 3ème instruction PT  PHT * (1 + TVA)

- C’est une instruction qui permet de calculer la valeur de PT, en utilisant PHT et TVA.
- De la même manière que l’instruction précédente, l’instruction est récupérée, ainsi que
les données nécessaire à la réalisation de l’opération (PHT et TVA).
- Le calcul est fait via l’UAL, puis le résultat est retranscrit dans la RAM
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Algorithme: 4ème instruction Ecrire PT

- C’est une instruction qui permet d’afficher PT dans l’écran.


- Une commande est envoyé à l’ écran pour afficher le résultat, et une commande vers le
RAM pour envoyer le résultat à l’écran.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Carte mère
(Motherboard)

l’ensemble des éléments qui essaient de


communiquer avec le processeur, il risquerait
d’y avoir des conflits d’accès au bus principal.
Le contrôleur gère donc les différentes
demandes pour garantir à chacun un libre
accès au bus
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Avant l’exécution d’une instruction, celle-ci ainsi que les


données correspondant doivent être placés en mémoire à
partir d’un équipement d’entrée ou une mémoire secondaire.
Quand ceci est fait, CPU réalise les 4 tâches suivantes:
1 : L’unité de contrôle (Control Unit) ramène l’instruction à
partir de la mémoire en utilisant la commande Fetch

2 : L’unite de contrôle (Control Unit) decode l’instruction


pour comprendre son sens, et commande la mémoire
d’envoyer les données nécessaires pour le calcul à l’UAL
(Arithmetic/Logic unit)

3 : l’UAL exécute l’opération arithmétique ou logique

4 : l’UAL enregistre le résultat dans un registre ou bien dans


la mémoire

Etape 1 et 2 sont appelées: Instruction time (I-time). Etape 3 et 4 sont appelées: Execution time (E-time).
I-time + E-time = Machine Cycle
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Comment l’unité de contrôle cherche et ramène les instructions et données à partir de la mémoire?
*Dans la RAM il y’a deux parties de stockage:
- Le bloc réservé aux instructions.
- Le bloc réservé aux données.

*Chaque instruction/donnée est transférée et enregistrée dans une


place mémoire.

*Chaque place mémoire (généralement de l’ordre d’un octet) est


identifiée avec une adresse mémoire. Donc chaque instruction/donnée
est connue à partir de son adresse mémoire.

*Ces adresses mémoire vont être utilisées par le processeur pour


récupérer les instructions une par une dans l’ordre indiqué par le
programme.

* La même principe s’applique sur les données


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Décrire en détail les différentes étapes


d’execution de l’instruction située dans la figure
ci-après, tout en indiquant le I-time et le E-time
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

CPU Programme
Program Counter v
A=3
Memory address Register v B=6
C= A+B
Memory Data Register v
Instruction Register v
Decoder v

Bus de données Périphériques


D’E/S
Accumulator RAM ROM Interfaces
CPU bus D’E/S
Bus d’adresses

Bus de contrôle
v
UAL UC
Read/Write
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Processeur: CPU

Accumulator

Decoder

UC

UAL
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

UAL: Unité Arithmétique et Logique

- C’est l’unité ou s’effectuent les opérations mathématiques.


- L’UAL reçoit les opérandes depuis les registres, effectue l’opération, et retourne le résultat
vers les registres (une zone de stockage interne du processeur, ce qui permet un accès
rapide, beaucoup plus rapide que si les données provenaient directement de la mémoire.
- Pour alimenter ces registres, le processeur cherche les données en mémoire principale et les
ramène via le bus principal.
- Ainsi, si une donnée provenant de la mémoire est acheminée jusqu’au processeur pour un
calcul mathématique, elle est d’abord envoyée dans l’un des registres pour ensuite se
retrouver au niveau de l’UAL.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

UAL: Unité Arithmétique et Logique


- Réciproquement, le résultat d’un calcul est temporairement mis dans l’un des registres (ce
qui permet une réutilisation immédiate pour un autre calcul) et peut ensuite être renvoyé vers
le bus pour un stockage de plus longue durée en mémoire principale.
- L’UAL, est constituée à base de circuits combinatoires, et donc n’a pas de capacité propre de
mémorisation. Il faut cependant garantir la présence sur ses entrées des opérandes pendant
le temps nécessaire au calcul. C’est le rôle des tampons (buffer) situés avant l’UAL. Simples
mini-registres de stockage, ils assurent la présence (en les mémorisant temporairement) aux
entrées de l’UAL des données provenant des registres principaux.
- De même, un tampon en sortie de l’UAL permet d’être sûr de disposer du résultat le temps
qu’un registre le mémorise, libérant au passage l’UAL.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les registres et l’UAL sont régis par des commandes.

- L’UAL doit savoir quel calcul effectuer (addition, soustraction, multiplication…) et un registre
sélectionné peut avoir à envoyer l’information mémorisée sur l’une des entrées de l’UAL ou
bien à la transférer vers le bus principal.

- Le séquenceur, aussi appelé « unité de contrôle », est le chef d’orchestre du processeur. Il a


en charge l’envoi des commandes aux différents circuits internes en fonction des instructions
à exécuter.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Le séquenceur récupère les instructions (en mémoire principale) depuis l’interface via le bus
et les stocke une à une dans le registre d’instructions (RI) pendant l’exécution.
- Le séquenceur décide alors quels sont les transferts de données nécessaires (registre vers
UAL, bus vers registre…) et les commandes à envoyer (lecture ou écriture dans un registre,
opération de calcul…), d’où les liens qui le relie à tous les autres circuits.
- Pour finir un registre PC, qui sert à récupérer la prochaine instruction à exécuter.
- La mémoire cache de niveaux 1 et 2 qui sert à accélérer les transferts entre la mémoire
principale et le processeur.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

L’UAL et les registres font partie des composants internes du processeur qui obéissent aux commandes du
séquenceur, envoyées en fonction des instructions exécutées.

L’UAL est un circuit logique combinatoire formé de portes logiques prenant deux nombres en entrée et
générant un nombre en sortie en fonction de signaux de commande indiquant l’opération arithmétique
(+,-,x,/) ou logique (Not, And, Or…), à effectuer. Une UAL peut être caractérisée par sa taille et ses
possibilités.
A et B : Sont les opérandes
F : Le code de l’opération à effectuer
F(A,B) : Le résultat
N,Z,V,C : Indicateurs donnant des
informations sur la nature du
résultat
N: Résultat négatif | Z: Résultat Nul
V: Débordement | C: Retenue
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Sa taille, ou largeur, correspond au nombre maximum de bits que peuvent occuper les entrées, autrement
dit à la taille maximale des nombres que l’UAL peut traiter. Elle est évidemment fortement liée à la taille
des nombres que les registres peuvent stocker puisque ce sont les mêmes qui passent par l’UAL.

Les possibilités de l’UAL correspondent simplement aux différentes commandes qu’elle reconnaît : elle peut
certainement faire une addition et une soustraction, mais qu’en est-il des multiplications et divisions ?
Toutes les fonctions logiques sont-elles possibles ?

Le constructeur d’un processeur a toujours la possibilité d’étendre les capacités de l’UAL (en autorisant des
opérations plus complexes) ou d’augmenter sa taille (pour permettre la manipulation de nombres plus
grands). Mais cela implique d’utiliser plus de portes logiques et donc d’occuper plus de place sur la puce, au
détriment des autres circuits.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Cin

Exemple d’une UAL 1 bit simplifiée:


Elle est capable de calculer le ET et le OU de 2 bits,
le NON du second bit, et la somme des 2 bits avec
une retenue d’entrée. Le choix parmi ces quatre
opérations se fait via les deux lignes de commandes
f0 et f1. Suivant la valeur de ces 2 bits, un décodeur
active une des quatre lignes de sortie, sélectionnant
soit une des trois fonctions logiques (ab, a + b, !b ),
soit la retenue et la sortie de l’additionneur.
Cout
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Pour concevoir une UAL plus large, il suffit de « chaîner » plusieurs UAL 1 bit, reliant la retenue de sortie
d’un étage à la retenue d’entrée du suivant.

Exemple: 0011+0101 =?
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Plusieurs UAL dans un seul processeur:

- L’exemple précédent concernait une UAL effectuant une addition sur un nombre entier.
- Les circuits nécessaires au calcul sur des nombres flottants sont totalement différents et on ne
gagnerait rien à les incorporer au même circuit combinatoire.
- Maintenant, les processeurs ont deux UAL distinctes, une pour les opérations logiques et pour les
calculs entiers, une autre pour les opérations en virgule flottante.
- L’avantage est de pouvoir accélérer les traitements en effectuant deux calculs simultanés, un dans
chaque UAL
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

L’UC est composant qui permet de contrôler et diriger toutes les opérations, en envoyant des signaux
électriques aux différents composants .

Fonction d’une UC:


1. L’UC contrôle les différents transferts d’informations (Read/ Write) Depuis/Vers la RAM.
2. L’UC génère des signaux de contrôle vers tous les composants matériels, pour organiser leur activité,
tout en se basant sur une horloge (clock) qui régule la vitesse d’exécution d’une instruction.
3. L’UC permet de décoder les instructions, et commande l’UAL pour réaliser les opérations adéquates.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

L’UC est composant qui permet de contrôler et diriger toutes les opérations, en envoyant des signaux
électriques aux différents composants .

Composants d’une UC:


1. Horloge.
2. Program Counter
3. Registre d’instructions.
4. Décodeur d’instructions (Decoder)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

En interne, l’horloge (Timing unit) consiste en un cristal oscillant à quartz qui génère un signal analogique.
Ce signal est convertie en un signal numérique (Signal carrée), moyennant un convertisseur analog to
Digital.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Pour chaque période du signal, la CPU réalise une partie de l’instruction:


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- La CPU commence l’exécution du programme en plaçant l’adresse de la première instruction dans le

registre Program Counter, pour pouvoir la récupérer à partir de la RAM.

- Le Program Counter est automatiquement incrémentée après avoir récupéré l’instruction. Ainsi, ce

registre contiendra toujours l’adresse de la prochaine instruction.


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Processeur: CPU

Accumulator

Decoder

UC

UAL
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Le registre d’instruction contient l’instruction en cours d’exécution.


- L’instruction est un mot binaire qui définit l’opération à exécuter, caractérisée par un code appelé
OPCODE.
- La CPU décode l’instruction pour exécuter l’opération voulue.

Le registre d’instruction
reçoit l’instruction à partir
du MBR (Memory buffer
Register), appelé aussi
MDR(Memory Data Register)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- L’objectif principal du Decodeur (Decoder) est de traduire L’OPCODE en une opération, qui sera ensuite
exécutée par l’UAL.
- Le Decodeur consiste en un nombre de (Sub-Decoders) qui permettent d’identifier chaque partie de
l’instruction
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- La RAM (Random Access Memory), est une mémoire volatile principalement utilisée pour le stockage
des programmes (Instructions et données)

- La RAM est chargée au niveau de la carte mère sous forme de modules appelés DIMM (Dual In-line
Memory Module)
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Memory slots : Emplacement mémoire


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les ‘DIMMs’ sont installés dont les ‘Memory slots’


- En général il y’a 2 à 4 ‘Memory slots’ dans une carte mère
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Pour que le programme marche il doit en premier lieu être


chargé dans la RAM
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- La CPU, maintenant peut avoir accès aux données et exécuter


le programme
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Dans la plupart des cas la RAM ne peut stocker tous les données
nécessaire pour l’exécution du programme
- Dans ce cas la RAM sollicite le disque dur pour charger les données
nécessaires, ce qui rend les traitements très lents
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- La solution est simple. Augmenter le nombre de DIMMs de


mémoire, pour ne pas solliciter à chaque fois le disque dur.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Pour que le RAM puisse stocker de l’information, elle a


constamment besoin d’énergie électrique.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- DRAM est un type de RAM contenant des capacités.


- Les capacités sont comme des petits seaux qui stockent de
l’électricité (Qui représentent l’information 0 et 1).
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les capacités ont besoin d’être constamment chargés d’électricité


(puisqu’ils se déchargent après une période de temps)
- D’où le nom Dynamic, puisqu’elles doivent être chargé de façon
dynamique.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Un autre type de RAM est SDRAM : Synchronous DRAM


- Ils sont utilisés dans les RAM actuels.

- DRAM: opère de façon asynchrone avec l’horloge du système


- SDRAM: opère de façon synchrone avec l’horloge du système.
- Tous les signaux sont liés à l’horloge du système pour une
- meilleure gestion du rythme des traitements
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les SDRAM viennent avec différentes tailles.


- Il peuvent aller de 128MB à 32 GB
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les RAMs disposent d’un bus de données qui peut transférer à la


fois (Dans un cycle d’horloge) soit 64 ou bien 32 bits.
- Les DIMM sont plus rapide puisqu’ils permettent de transférer
plus de données à la fois.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

PC-100

100MHz = La vitesse de l’horloge

DIMM permet de transférer 64 bits à la fois = 8 octets

Débit: 100 x 8 = 800Mo/s


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

PC-133

133MHz = La vitesse de l’horloge

DIMM permet de transférer 64 bits à la fois = 8 octets

Débit: 133 x 8 = 1066Mo/s


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Comme la technologie s’est développé et la rapidité des processeurs


a augmenté, il a fallu développer de nouveaux types de mémoires, plus
rapides, pour suivre la rapidité des processeurs.

- D’où l’introduction de la technologie DDR: Double Data Rate

- Les RAM DDR sont capable de transférer le double de la quantité de


données envoyé par les RAM non DDR
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les RAM DDR sont libellés différemment par rapport aux RAM non
DDR

DDR-333MHZ | PC-2700

333MHz = La vitesse de l’horloge.


2700 = le débit.

DIMM permet de transférer 64 bits à la fois = 8 octets

Débit: 333 x 8 = 2700Mo/s


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les RAM DDR2 sont capable d’envoyer le double des RAM DDR
- Les RAM DDR2 consomment moins d’énergie que Les RAM DDR

DDR2-800MHZ | PC2-6400

800MHz = La vitesse de l’horloge.


6400 = le débit.

DIMM permet de transférer 64 bits à la fois = 8 octets

Débit: 800 x 8 = 6400Mo/s


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les RAM DDR3 sont capable d’envoyer le double des RAM DDR2
- Les RAM DDR3 consomment moins d’énergie que Les RAM DDR2

DDR3-1600MHZ | PC3-12800

1600MHz = La vitesse de l’horloge.


12800 = le débit.

DIMM permet de transférer 64 bits à la fois = 8 octets

Débit: 1600 x 8 = 12800Mo/s


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les RAM DDR4 sont capable d’envoyer le double des RAM DDR3
- Les RAM DDR4 consomment moins d’énergie que Les RAM DDR3

DDR4-4266MHZ | PC4-34100

4266MHz = La vitesse de l’horloge.


34100 = le débit.

DIMM permet de transférer 64 bits à la fois = 8 octets

Débit: 4266 x 8 = 34128Mo/s


Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

ROM (Read-Only Memory) ou Mémoire morte:


- C’est une mémoire où on peut uniquement lire le contenu, mais
jamais écrire dedans.
- C’est une mémoire non-volatile (Permanente).
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Presque tous les ordinateurs intègrent une petite quantité de ROM qui contient le
micrologiciel de démarrage.
- Ce micrologiciel de démarrage est appelé système d'entrée/sortie de base (BIOS).
- Ce logiciel se compose d'un code qui instruit les processus de démarrage de
l'ordinateur, tels que le chargement du système d'exploitation (OS) dans la
mémoire vive (RAM) ou l'exécution de diagnostics matériels.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Les ROM ont petit à petit évolué de mémoires mortes figées à des mémoires
programmables, puis reprogrammables.

MROM (Masked ROM):


Les premières ROM étaient fabriquées à l'aide d'un procédé inscrivant directement
les données binaires (programme) dans une plaque de silicium par le constructeur.
Ce procédé est maintenant obsolète. Quand on voulait changer le contenu d’une
MROM, toute la ROM devait être remplacée.
PROM (Programmable ROM):
Les PROM (Programmable Read Only Memory) ont été mises au point à la fin des
années 70 par la firme ‘Texas Instruments’. Ces mémoires sont des puces constituées
de milliers de fusibles (ou bien de diodes) pouvant être "grillés" grâce à un appareil
appelé « programmateur de ROM », appliquant une forte tension (12V) aux cases
mémoire devant être marquées. Les fusibles ainsi grillés correspondent à des 0, les
autres à des 1.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

EPROM (Erasable Programmable ROM):


Les EPROM (Erasable Programmable Read Only Memory) sont des PROM pouvant
être effacées. Ces puces possèdent une vitre permettant de laisser passer des rayons
ultra-violets. Lorsque la puce est en présence de rayons ultra-violets d'une certaine
longueur d'onde, les fusibles sont reconstitués, c'est-à-dire que tous les bits de la
mémoire sont à nouveau à 1. C'est pour cette raison que l'on qualifie ce type de
PROM d'effaçable

EEPROM (Electrically Erasable Programmable ROM):


L'EEPROM est programmée et effacée électriquement. Il peut être effacé et
reprogrammé environ dix mille fois. L'effacement et la programmation prennent
environ 4 à 10 ms (milliseconde). Dans l'EEPROM, n'importe quel emplacement peut
être effacé et programmé de manière sélective. Les EEPROM peuvent être effacées un
octet à la fois, plutôt que d'effacer la totalité de la puce. Par conséquent, le processus
de reprogrammation est flexible mais lent.
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Chapitre 2:
Bases de numération | Erreurs de
transmission

117
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

En 1930:

Claude Shannon démontra qu'à l'aide des interrupteurs fermés pour « vrai » et ouverts pour « faux »,

il était possible d'effectuer des opérations logiques, en associant le nombre 1 pour « vrai » et 0 pour

« faux ».

Ce codage de l'information est nommé base binaire. C'est avec ce

codage que fonctionnent les ordinateurs. Il consiste à utiliser deux états

(représentés par les chiffres 0 et 1), appelés bit, pour coder les informations.

118
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

les bases de numération (décimal, binaire, octal, hexadécimal) :

Décimal : Ce système est représenté par dix symboles (0-9).

Binaire : Ce système de numération ne prend que deux états 0 ou 1.

Octal : Ce système est basé sur 8 symboles (0-7).

Hexadécimal : Ce système est représenté sur 16 symboles (0-F):

(0 ; 1 ; 2 ; 3 ; 4 ; 5 ; 6 ; 7 ; 8 ; 9 ; A ; B ; C ; D ; E ; F)

Exemple: 4D5

119
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Le terme bit (b avec une minuscule dans les notations) signifie « binary digit », c'est-à-dire

0 ou 1 en numérotation binaire. Il s'agit de la plus petite unité d'information manipulable par

une machine numérique. Il est possible de représenter physiquement cette information

binaire :

par un signal électrique, qui, au-delà d'un certain seuil, correspond à la valeur 1 ;

120
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Avec un seul bit, on peut obtenir 2 états: 0 et 1

- Avec deux bits, on peut obtenir 4 états (2*2):

00 → 0
01 → 1
10 → 2
11 →3

121
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Avec trois bits, on peut obtenir 8 états (2*2*2):

000 → 0
001 → 1 Généralement

010 → 2
011 →3 Pour un groupe de n bits, il est possible de
100 → 4 représenter 𝟐𝒏 valeurs.

101 →5
110 →6
111 →7
122
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Dans un nombre binaire, la valeur d'un bit, appelée poids, dépend de la position du bit en
partant de la droite. A la manière des dizaines, des centaines et des milliers pour un
nombre décimal, le poids d'un bit croît d'une puissance en allant de la droite vers la
gauche. Soit le nombre binaire 1 1 1 1 1 1 1 1

Nombre binaire: 1 1 1 1 1 1 1 1
Poids: 𝟐𝟕 = 128 𝟐𝟔 = 64 𝟐𝟓 = 32 𝟐𝟒 = 16 𝟐𝟑 = 8 𝟐𝟐 = 4 𝟐𝟏 = 2 𝟐𝟎 = 1

123
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Nombre binaire: 1 1 1 1 1 1 1 1
Poids: 𝟐𝟕 = 128 𝟐𝟔 = 64 𝟐𝟓 = 32 𝟐𝟒 = 16 𝟐𝟑 = 8 𝟐𝟐 = 4 𝟐𝟏 = 2 𝟐𝟎 = 1

Conversion du binaire en décimal:


Pour convertir un mot binaire en nombre décimal, il suffit de multiplier la valeur de chaque
bit par son poids, puis d'additionner chaque résultat. Ainsi, le mot binaire 1010 vaut en
décimal :
𝟐𝟑 x 1 + 𝟐 𝟐 x 0 + 𝟐 𝟏 x 1 + 𝟐 𝟎 x 0
= 𝟖x1 +𝟒x0 + 𝟐x1 +𝟏x0
= 10
124
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- L’Octet (byte ou B avec une majuscule dans les notations) est une unité d'information
composée de 8 bits.
- Pour un octet, le plus petit nombre est 0 (représenté par huit zéros 00000000), et le
plus grand est 255 (représenté par huit chiffres « un » 11111111), ce qui représente 256
possibilités de valeurs différentes (𝟐𝟖 ).

1 1 1 1 1 1 1 1

𝟐𝟕 = 128 𝟐𝟔 = 64 𝟐𝟓 = 32 𝟐𝟒 = 16 𝟐𝟑 = 8 𝟐𝟐 = 4 𝟐𝟏 = 2 𝟐𝟎 = 1

125
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Le Mot (Word en anglais) : C’est une unité de mesure composée de 16 bits.

- Le Double mot (Double Word en anglais) : C’est une unité de mesure composée de 32 bits.

126
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les autres unités standardisées par le IEC ( International Electrotechnical Commission):

Un kilooctet (ko ou kB) = 103 octets


Un Mégaoctet (Mo ou MB) = 1000 ko = 106 octets
Un Gigaoctet (Go ou GB) = 1000 Mo = 109 octets
Un Téraoctet (To) = 1000 Go = 1012 octets

127
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- L'addition en binaire est régie par les mêmes règles qu'en décimale :

On commence à sommer les bits de poids faible (les bits de droite) puis on a des

retenues lorsque la somme de deux bits de même poids dépasse la valeur de l'unité la

plus grande (dans le cas du binaire : 1), cette retenue est reportée sur le bit de poids plus

fort suivant.

128
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Règle d’addition
- Exemple:
0+0=0
0 1 1 0 1 0+1=1
+ 0 1 1 1 0 1+0=1
1+1=10 (On pose 0 et on retient 1)
1 1 01 1 1+1+1= 11 (On pose 1 et on retient 1)

129
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Résoudre les opérations d’addition suivante:

1) 1011 + 0110

2) 1010111 + 10010

130
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Solution:

1011 101 0 1 1 1

+ 0110 +001 00 1 0

10001 1 1 0 1 00 1

131
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

la soustraction en binaire est également basée sur la notion de retenue. Cependant, dans le
système binaire, il n'y a que deux chiffres dont le plus grand est 1. Quatre règles sont alors
nécessaires pour effectuer rigoureusement la soustraction en binaire:

Règle de Soustraction

0-0=0
1-1=0
1-0=1
0-1=1 avec retenue
132
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Exemple:
1 1 1 1 0
- 0 1 0 0
1 1 0 1 0

133
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Résoudre l’opération de soustraction binaire suivante: 101001 1 - 1 1 1

134
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Solution:
101001 1
- 1 1 1
10011 00

135
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Règle générale de soustraction:

Lorsque le chiffre pour lequel il faut effectuer une retenue est 0, le diminuende est parcouru

vers la gauche jusqu'au premier chiffre différent de 0. Une retenue de 1 est effectuée sur ce

chiffre alors que les 0 intermédiaires sont remplacés par le plus grand chiffre du système

de numération.

136
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Plus d’exercices:
Résoudre les soustractions binaires suivantes:
1) 111101 -100101
2) 1 0 0 1 - 1 0
3) 1 1 0 0 1 0 1 0 - 1 0 0 1 1 0 1 1

137
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Solution 1:
111101
- 1 00 1 0 1
011000

138
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Solution 2:
1001
- 10
01 1 1

139
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Solution 2:
11001010
-1001101 1
0010111 1

140
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

C’est la plus simple des opérations. Elle est régie par les 4 règles suivantes:

Règles de Multiplication

0x0=0
0x1=0
1x0=0
1x1=1

141
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Exemple:
0 1 0 1
x 0 0 1 0
0 0 0 0
0 1 0 1
0 0 0 0
0 0 1 0 1 0

142
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

La division binaire repose essentiellement sur la soustraction, elle est donc similaire à
l’opération de division dans la base décimale.

Dividende Diviseur

10110 11
- 11 111
101
- 11
100
- 1 1
1
143
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Résoudre les opérations de divisions suivantes:

1) 1 0 0 1 1 0 1 1 / 1 0 1
2) 1 1 0 0 1 / 1 0 1
3) 1 0 0 0 1 0 / 1 1

144
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Résoudre les opérations de divisions suivantes:

1) 1 0 0 1 1 0 1 1 / 1 0 1 → 1 1 1 1 1
2) 1 1 0 0 1 / 1 0 1 → 101
3) 1 0 0 0 1 0 / 1 1 → 1011

145
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertissons 01001101 en décimal à l'aide du schéma ci-dessous:

𝟏𝟐𝟖 𝟔𝟒 𝟑𝟐 𝟏𝟔 𝟖 𝟒 𝟐 𝟏
𝟐𝟕 𝟐𝟔 𝟐𝟓 𝟐𝟒 𝟐𝟑 𝟐𝟐 𝟐𝟏 𝟐𝟎
0 1 0 0 1 1 0 1 → 𝟔𝟒+ 𝟖+ 𝟒+ 𝟏= 77

146
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertissons maintenant dans l’autre sens (décimal → binaire):

77 2
1 38 2
0 19 2 77 s ’écrit donc en base binaire: 1001101
1 9 2
1 4 2
0 2 2
Sens de lecture 0 1

147
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertissons les nombres décimaux suivants en binaire:


Combien faut t-il réserver pour chaque nombre?
1) 64
2) 75
3 105

148
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertissons les nombres décimaux suivants en binaire:

Combien faut t-il réserver pour chaque nombre?

1) 64 → 1000000 (représentable sur 7 bits)

2) 75 → 1001011 (représentable sur 7 bits)

3) 105 → 1101001 (représentable sur 7 bits)

149
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Hexadécimal : Ce système est représenté sur 16 symboles (0-F):

(0 ; 1 ; 2 ; 3 ; 4 ; 5 ; 6 ; 7 ; 8 ; 9 ; A ; B ; C ; D ; E ; F)

Exemple: 4D516 = 4x162 + Dx161 + 5x160 = 1024 + 208 + 5 = 123710

150
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertir 123710 en Hexadécimal:

1237 16
5 77 16 𝟒𝐃𝟓𝟏𝟔
13 4

Sens de lecture

151
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertir les nombres décimaux suivants en Hexadécimal:

1) 𝟐𝟒𝟖𝟏𝟎
2) 𝟏𝟎𝟖𝟎𝟏𝟎

152
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertir 24810 en Hexadécimal:

248 16
8 15 1 𝐅𝟖𝟏𝟔

Sens de lecture

153
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertir 108010 en Hexadécimal:

1080 16
8 67 16 𝟒𝟑𝟖𝟏𝟔
3 4

Sens de lecture

154
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Décimal

Binaire Hexadécimal

155
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Hexadécimal : Ce système est représenté sur 16 symboles (0-F):

(0 ; 1 ; 2 ; 3 ; 4 ; 5 ; 6 ; 7 ; 8 ; 9 ; A ; B ; C ; D ; E ; F)

Combien de bits faut- il pour représenter ces chiffres (0-F)?

𝟐𝟒 = 16 valeurs (0-F)

La plus grande valeur est F (15) = 𝟐𝟒 - 1

156
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Hexa Binaire Hexa Binaire


0 0000 8 1000
1 0001 9 1001
2 0010 A 1010
3 0011 B 1011
4 0100 C 1100
5 0101 D 1101
6 0110 E 1110
7 0111 F 1111

157
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Convertir en binaire les chiffres hexadécimaux suivants:

1) 𝟒𝐃𝟓𝟏𝟔

2) 𝟏𝟐𝐂𝟏𝟔

158
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

𝟒𝐃𝟓𝟏𝟔 → 0100 1101 0101

𝟏𝟐𝐂𝟏𝟔 → 0001 0010 1100

159
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Comment peut-on réaliser la conversion dans l’autre sens?

Binaire → Hexadécimal:

1) 10011010101

2) 100101100

160
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- On réalise un découpage du chiffre binaire par tranches de 4 bits:

10011010101 → 100 1101 0101 → 𝟒𝐃𝟓𝟏𝟔

100101100 → 1 0010 1100 → 𝟏𝟐𝐂𝟏𝟔

161
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- C’est la même chose que pour l’Hexadécimal, sauf qu’au lieu de réserver 4 bits, on

réserve 3 bits. Car le plus grand nombre à représenter par 3 bits est 𝟐𝟑 - 1 = 7 (La plus

grande valeur de la base octal)

162
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Les conversions en base 8 ou 16 sont très fréquentes pour l’affichage des nombres

binaires qui, par leurs longueurs, sont rapidement illisibles.

Exemple : octal pour les codes de caractères, hexadécimal pour les adresses mémoires.

163
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Un entier naturel est un nombre entier positif ou nul. Le choix à faire (c'est-à-dire le
nombre de bits à utiliser) dépend de la fourchette des nombres que l'on désire utiliser.
- Pour coder des nombres entiers naturels compris entre 0 et 255, il nous suffira d’utiliser
8 bits (un octet): 𝟐𝟖 = 256 (valeurs).
- Généralement un codage sur n bits pourra permettre de représenter des nombres
entiers naturels compris entre 0 et 𝟐𝒏 - 1
- Exemple: Pour coder le nombre 9 (décimal) en binaire il faut 4 bits car:
- 𝟐𝟑 − 𝟏 = 𝟕 𝒅𝒐𝒏𝒄 𝟑 𝒃𝒊𝒕𝒔 𝒏𝒆 𝒑𝒆𝒖vent 𝒑𝒂𝒔 𝒓𝒆𝒑𝒓é𝒔𝒆𝒏𝒕𝒆𝒓 𝒍𝒆 𝒏𝒐𝒎𝒃𝒓𝒆 𝟗
- 𝟐𝟒 −𝟏 = 𝟏𝟓 > 𝟗 Donc on peut représenter 9 avec 4 bits.
164
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

- Combien faut t-il de bits pour représenter le nombre décimal 510 en binaire?
- 𝟐𝟗 −𝟏 = 512 – 1 = 511 > 510
- 510 peut donc être représenté par au moins 9 bits.

165
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Un entier relatif est un entier pouvant être négatif. Il faut donc coder le nombre de telle
façon que l'on puisse savoir s'il s'agit d'un nombre positif ou d'un nombre négatif, et il faut
de plus que les règles d'addition soient conservées. L'astuce consiste à utiliser un codage
que l'on appelle complément à deux. Cette représentation permet d'effectuer les opérations
arithmétiques usuelles naturellement.

166
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Un entier relatif positif ou nul est représenté en binaire comme un entier naturel,
à la seule différence que le bit de poids fort (le bit situé à l'extrême gauche) représente le
signe. Il faut donc s'assurer pour un entier positif ou nul que ce bit est à zéro (0 correspond
à un signe positif, 1 à un signe négatif).

167
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Maintenant essayons de faire l’opération suivante sur 5 bits: 7 – 7 → 0


00111
1 0111
11110 → résultat non nul. Pour faire ce type d’opération au niveau de l’ordinateur on code
un nombre entier relatif d’une autre manière

168
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Un entier relatif négatif sera codé moyennant le codage en complément à deux:


Règle du complément à deux:
1- Écrire la valeur absolue du nombre en base 2. Le bit de poids fort doit être égal à 0.
2- Inverser les bits : les 0 deviennent des 1 et vice versa. On fait ce qu'on appelle le
complément à un.
3- On ajoute 1 au résultat (les dépassements sont ignorés).

169
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

On veut coder le nombre -19 sur 8 bits:


1- Ecrire 19 en binaire sur un octet: 00010011
2- Ecrire son complément à 1: 11101100
3- Ajouter 1: 11101101

La représentation binaire sur 8 bits de – 19 est donc: 11101101

170
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Remarque:
Dans le cas d’un nombre négatif, il est important d’indiquer sur combien de bits doit s’écrire
le nombre car on ne rajoute pas des zéros en tête mais des uns (suite à l’inversion obtenue
lors du calcul du complément à 1). La phrase « représentez –19 en complément à 2 » n’a pas
de sens si l’on ne précise pas le nombre de bits de la représentation.

171
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

Exemple:
Le nombre -19 peut bien aussi être représenté sur 6 bits.
1- Ecrire 19 en binaire sur 6 bits: 010011
2- Ecrire son complément à 1: 101100
3- Ajouter 1: 101101

La représentation binaire sur 6 bits de – 19 est donc: 101101

172
Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5

On remarque que lorsqu’on fait la somme d’un nombre et son complément à 2 on obtient 0:
(Dans ce cas 19 et -19 codés sur 8 bits)
00010011
+ 1 1 101 101
100000000 Avec une retenue de 1 qui est éliminé car on a dépassé le nombre de bits
alloué (8 bits).

Eliminé car la représentation doit être sur 8 bits

173

Vous aimerez peut-être aussi