architecture et maintenance des ordinateurs · iset-sfax 1 plan du cours: architecture et...
Post on 16-Feb-2021
72 Views
Preview:
TRANSCRIPT
-
Ministère de l’Enseignement Supérieur
Direction Générale des Etudes Technologiques
Institut Supérieur des Etudes Technologiques de Sfax
DEPARTEMENT INFORMATIQUE
(Notes de cours, TD et TP)
AUDITOIRE : Niveau 1, Informatique
CHARGE HORAIRE : 45 Heures de Cours Intégré
45 Heures de Travaux Pratiques
ENSEIGNANT : Mondher HADIJI
Mondher.Hadiji@isetsf.rnu.tn
Année Universitaire : 2004-2005
Architecture et Maintenance
des Ordinateurs
-
SOMMAIRE
PARTIE I : PRESENTATION PEDAGOGIQUE…...1 Plan du cours : Architecture et Maintenance des
Ordinateurs………………………….………………...1 1. Table de matière pédagogique……………………………………….…..1
2. But du cours et objectifs généraux………………………………….…...4
3. Décomposition des objectifs généraux en objectifs spécifiques…….5
4. Evaluation du module……………………………………………………..8
PARTIE II : PRESENTATION DU COURS…………...9
Contenu du cours
Chapitre1 : Introduction……………………………………….11 1. Historique…………………………...……………………………....13
2. Les différentes générations …...…………………………….........15
3. L’architecture de l’ordinateur et l’Homme ………………........17
Chapitre2 : Les Systèmes de Numérations…………...….21 1. Introduction...……………………………………………………….23
2. Codage des alphanumériques ……………………………...…….24
3. Codage des nombres entiers………………………………...…....27
4. Changement de base…………………………………….................31
5. L’arithmétique binaire………………………………...…..............34
6. Les nombres réels…………………………………….....................39
Chapitre3 : Les Microprocesseurs……………………...….43 1. Introduction……………………………………………………...….45
2. Définitions…………………………………………..…………...….45
3. Caractéristiques des processeurs……………..……………....….47
4. Les principales unités du Microprocesseur..………..………….48
5. Exécution d'une instruction……………..……………....………..63
6. Modèles de microprocesseur……………..……………...........….67
-
Chapitre4 : Les Mémoires…………..…………..…...........….69 1. Introduction……………..………………………………............….71
2. Organisation des mémoires……………………………...............72
3. Mémoire centrale……………………………............................….73
4. Mémoire de masse ou mémoire auxiliaire............................….81
5. Hiérarchie des mémoires............................……………………...81
6. Conclusion............................……………………………………....82
Chapitre5 : Les Bus…………..…………..….........................….83 1. Généralités…………..…………..…...........................................….85
2. Caractéristiques d’un bus…………..…………..…..................….86
3. Mode de fonctionnement…………..…………..…..................….86
4. Modes de transmissions de l’information…..…..................…..86
5. Exemples de Bus…..…..................……………………………….88
Liste des Travaux Pratiques TP1 : Vue Externe des composants d’un Ordinateur….....….99
TP2 : Vue Interne des composants d’un Ordinateur…….…111
TP3 : Montage et démontage d’un ordinateur………………127
TP4 : Configuration SETUP………………………………...…137
TP5 : Installation et configuration d’un Système
d’exploitation…………………………………………...…159
TP6 : Installation et Configuration des Cartes d’Extensions et
des Périphériques…………………..……………………...169
TP7 : Installation, Configuration et gestion des disques…...179
TP8 : Outils de sécurité et de maintenance informatique….187
Liste des Travaux Dirigés TD1 : Les périphériques
TD2 : Les systèmes de numération
TD3 : Les microprocesseurs
TD4 : Les mémoires
Bibliographies
-
Partie 1 :
Présentation Pédagogique
-
Cours Architecture et Maintenance des Ordinateurs
ISET-SFAX 1
PLAN DU COURS :
ARCHITECTURE ET MAINTENANCE DES
ORDINATEURS
Le cours architecture et maintenance des Ordinateurs est destiné aux étudiants de l’ISET
niveau 1, profil Informatique. Ce cours a comme volume horaire 45 heures de cours intégré
et 45 heures de travaux pratiques en raison de 3 heures de cours intégré et 3 heures de TP
par semaine.
Dans cette première partie, je commence par présenter le plan de cours architecture et
maintenance des systèmes informatiques, en second lieu les objectifs généraux, et enfin une
décomposition des objectifs généraux en objectifs spécifiques.
1. Table de matière pédagogique
CHAPITRE1 : Introduction (3 heures) 1. Historique
1.1. Les précurseurs de l'ordinateur
1.2. La machine de Turing
1.3. La machine de Von Neumann
1.4. Les premiers micro-ordinateurs
2. Les différentes générations 2.1. La première génération
2.2. La deuxième génération
2.3. La troisième génération
2.4. La quatrième génération
2.5. La cinquième génération
2.6. Que nous réserve l’avenir ?
3. L’architecture de l’ordinateur et l’Homme 3.1. Un corps dénommé hardware
3.2. Une âme dénommée software ou logiciel
CHAPITRE2 : Les Systèmes de Numérations (12 heures) 1. Introduction
2. Codage des alphanumériques 2.1. Le code EBCDIC
-
2 Mondher HADIJI
Partie 1 Présentation pédagogique
2.2. Le code ASCII
3. Codage des nombres entiers 3.1. Système décimal
3.2. Cas général : BASE B
3.3. Numération binaire
3.4. Numération octale
3.5. Base seize (hexadécimal)
3.6. Autres bases de représentation
4. Changement de base 4.1. Passage de la base B vers la base DIX
4.2. Passage de la base DIX vers la base B
4.3. Passage de la base 2n vers la base 2 et de la base 2 vers base 2n
4.4. Passage de la base i vers la base j
5. L’arithmétique binaire 5.1. Les 4 opérations arithmétiques usuelles
5.2. Les nombres négatifs
6. Les nombres réels 6.1. Représentation en virgule fixe
6.2. Représentation en virgule flottante
CHAPITRE3 : Les Microprocesseurs (15 heures) 1. Introduction
2. Définitions
3. Caractéristiques des processeurs 3.1. Architecture
3.2. La taille du bus externe
3.3. La taille du bus d'adresses
3.4. La fréquence interne et la fréquence externe
3.5. Présence de mémoire Cache
4. Les principales unités du Microprocesseur 4.1. Notions d’Horloge, Pipeline, Superscalaire
4.2. Unité de commande ou unité de contrôle
4.3. Unité de mémoire cache
4.4. Unités d’exécutions
4.5. Unités de Segmentation et de Pagination
4.6. Unité d'interface de Bus
4.7. Unité d'anticipation
4.8. Unité queue
4.9. Unité de décodage
4.10. Les Registres
-
Cours Architecture et Maintenance des Ordinateurs
ISET-SFAX 3
5. Exécution d'une instruction 5.1. Exemple1
5.2. Exemple2
6. Modèles de microprocesseur
CHAPITRE4 : Les Mémoires (9 heures) 1. Introduction
2. Organisation des mémoires 2.1. Organisation interne
2.2. Organisation externe
3. Mémoire centrale 3.1. Mémoire vive
3.2. Mémoire morte
4. Mémoire de masse ou mémoire auxiliaire
5. Hiérarchie des mémoires
6. Conclusion
CHAPITRE5 : Les Bus (1.5heures) 1. Généralités
2. Caractéristiques d’un bus
3. Mode de fonctionnement 3.1. Les Bus synchrones
3.2. Les Bus asynchrones
4. Modes de transmissions de l’information 4.1. Bus parallèle
4.2. Bus série
5. Exemples de Bus 5.1. Le Bus ISA ou PC-AT
5.2. Le Bus MCA
5.3. Le Bus EISA
5.4. Le Bus VESA
5.5. Le bus PCI
5.6. Le Bus SCSI
5.7. Le Bus USB
5.8. Le Bus FireWire – iLink
5.9. Le Bus graphique AGP
-
4 Mondher HADIJI
Partie 1 Présentation pédagogique
2. But du cours et objectifs généraux
BUTS DU COURS :
Faire comprendre aux étudiants l’architecture d’un ordinateur et ses
périphériques ainsi que les interactions qui existent entres ses différents
composants.
Maîtriser les différentes actions de maintenance des ordinateurs dans les
TP.
Objectifs généraux Conditions de réalisation de la
performance
Critères d’évaluation
de la performance
Présenter l’évolution
de l’ordinateur
depuis ses débuts.
A partir des notes de cours et des
références bibliographiques, l’étudiant
devra savoir l’historique des ordinateurs.
Aucune erreur n’est
permise.
Manipuler les
systèmes de
numération et de
codage dans un
ordinateur.
A partir des notes de cours, des
références bibliographiques ainsi que le
TD2, l’étudiant devrait pouvoir effectuer
la conversion vers les différentes bases,
représenter les nombres et réaliser les
différents types d’opérations
arithmétiques.
90 % des exercices
devront être réussis.
Comprendre
l’architecture et le
fonctionnement d’un
microprocesseur.
A partir des notes de cours, des
références bibliographiques ainsi que le
TD3, l’étudiant devrait pouvoir
représenter les étapes élémentaires de
l’exécution des instructions par un
microprocesseur
Aucun concept ne doit
être omis.
Distinguer les
différents types de
mémoires et leur
fonctionnement.
A partir des notes de cours, des
références bibliographiques ainsi que le
TD4, l’étudiant devrait distinguer les
différents types de mémoires, leurs rôles
et fonctionnements
Aucun concept ne doit
être omis.
Comprendre le rôle,
les différents types
A partir des notes de cours, des
références bibliographiques, l’étudiant
Aucune erreur n’est
permise.
-
Cours Architecture et Maintenance des Ordinateurs
ISET-SFAX 5
et le fonctionnement
des bus dans un
ordinateur.
doit distinguer les différents types de bus,
détailler leurs rôles et leur
fonctionnement.
3. Décomposition des objectifs généraux en objectifs
spécifiques
ENONCE DE L’OBJECTIF GENERAL :
Présenter l’évolution de l’ordinateur depuis ses débuts.
Objectifs spécifiques Eléments de contenu Méthodologies Durée
Enumérer les étapes
marquantes dans
l’évolution des
ordinateurs
Les précurseurs de l'ordinateur
La machine de Turing
La machine de Von Neumann
Les premiers micro-ordinateurs
Les différentes générations
Exposé informel
(tableau,
transparents)
1.5 H
Présenter une vue
d’ensemble de
l’organisation générale
d’un ordinateur
Présenter l’architecture de base
d’un ordinateur et faire une
comparaison entre l’architecture
de l’ordinateur et l’Homme
Exposé informel
(tableau,
transparents)
1.5 H
ENONCE DE L’OBJECTIF GENERAL :
Manipuler les systèmes de numération et de codage dans un ordinateur.
Objectifs spécifiques Eléments de contenu Méthodologies Durée
Comprendre comment
représenter les
caractères et les
nombres positifs et
négatifs dans la
mémoire
Codage des alphanumériques
Codage des nombres entiers
Changement de base
Exercices applicatifs
Exposé informel
(tableau,
transparents)
6 H
-
6 Mondher HADIJI
Partie 1 Présentation pédagogique
Expliquer comment
effectuer les
opérations
arithmétiques
Les opérations arithmétiques :
addition, soustraction,
multiplication et division dans des
différentes bases de numération
Exercices applicatifs
Exposé informel
(tableau,
transparents)
6 H
ENONCE DE L’OBJECTIF GENERAL :
Comprendre l’architecture et le fonctionnement d’un microprocesseur.
Objectifs spécifiques Eléments de contenu Méthodologies Durée
Définir le
microprocesseur et
présenter ses
caractéristiques
Définition du microprocesseur
Le rôle du microprocesseur dans
l’ordinateur
Les caractéristiques des
microprocesseurs
Exposé informel
(tableau,
transparents)
Schémas
explicatifs
3 H
Expliquer le rôle des
principales unités du
Microprocesseur et
présenter leurs
interactions
Unité de commande
Unité de mémoire cache
Unité de calcul
Unité de segmentation et de
pagination
Unité d’interface de bus
Unité d’anticipation
Unité de Queue
Unité de décodage
Les registres
Exposé informel
(tableau,
transparents)
Schémas
explicatifs
7.5 H
Comprendre les étapes
d’exécutions d’une
instruction
Exécution d’une instruction
Exercices applicatifs
Exposé informel
(tableau,
transparents)
Schémas
explicatifs
3 H
-
Cours Architecture et Maintenance des Ordinateurs
ISET-SFAX 7
Présenter les modèles
de microprocesseur
les plus répondus
Evolutions rapides des
microprocesseurs
Famille Intel, Famille AMD
Exposé informel
(tableau,
transparents)
1.5 H
ENONCE DE L’OBJECTIF GENERAL :
Distinguer les différents types de mémoires et leur fonctionnement.
Objectifs spécifiques Eléments de contenu Méthodologies Durée
Connaître les
différents types de
mémoires et leur
hiérarchie.
Les caractéristiques des différents
types de mémoires et leur
hiérarchie dans un ordinateur
Exposé informel
(tableau,
transparents)
3 H
Comprendre
l’organisation de la
mémoire centrale
Présentation de l’organisation de
la mémoire centrale
Exposé informel
(tableau,
transparents)
Schémas
explicatifs
3 H
Comprendre le
fonctionnement de la
mémoire centrale
Fonctionnement interne de la
mémoire centrale
Exposé informel
(tableau,
transparents)
Schémas
explicatifs
1.5 H
Connaître les
différents types de
mémoires
Présentation des différents types
de mémoires vives et mémoires
mortes
Exposé informel
(tableau,
transparents)
1.5 H
ENONCE DE L’OBJECTIF GENERAL :
Comprendre le rôle, les différents types et le fonctionnement des bus dans un
ordinateur.
Objectifs spécifiques Eléments de contenu Méthodologies Durée
Distinguer les Bus de données Exposé informel 0.5 H
-
8 Mondher HADIJI
Partie 1 Présentation pédagogique
différents types de bus Bus d’adresses
Bus de commandes
(tableau,
transparents)
Connaître le mode de
fonctionnement d’un
bus
Bus synchrones
Bus asynchrones
Exposé informel
(tableau,
transparents)
0.5 H
Connaître quelques
exemples de bus dans
un ordinateur
Présenter les bus les plus connus
dans un ordinateur : PCI, ISA,
AGP, USB..
Exposé informel
(tableau,
transparents)
0.5 H
4. Evaluation du module
Test : 10 %
Devoir : 20%
TP : 20 %
Examen : 50%
-
Partie 2 :
Présentation du Cours
-
INTRODUCTION
Objectifs
A la fin de ce chapitre, vous saurez :
Enumérer les étapes marquantes dans l’évolution des ordinateurs
Présenter une vue d’ensemble de l’organisation générale d’un ordinateur
Durée approximative de ce chapitre : 3heures
Eléments de contenu
1. Historique…………………………...……………………...…....13 1.1. Les précurseurs de l'ordinateur...………………….………....13 1.2. La machine de Turing ...……………………...…………….....13 1.3. La machine de Von Neumann...…………………….......…....13 1.4. Les premiers micro-ordinateurs...……………………....…....15 2. Les différentes générations …...………………………........15 3. L’architecture de l’ordinateur et l’Homme ………........17
-
12 Mondher HADIJI
Chapitre 1 Introduction
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 13
1. Historique
1.1. Les précurseurs de l'ordinateur
Les premières machines à calculer mécaniques étaient les machines à roues dentées de
Wilhelm Schickard (1592-1635), de Blaise Pascal (1623-1662) et de Gottfried Wihelm
Leibniz (1646-1716). Fragiles et peu maniables, elles ne furent guère utilisées. Le
premier véritable précurseur de l'informatique est l'anglais Charles Babbage (1792-1871).
Sa «machine analytique», qui utilise, au XIXe siècle, des cartes perforées indiquant les
données et les opérations à effectuer, était théoriquement novatrice mais techniquement
tellement complexe qu'elle n'a jamais fonctionné.
1.2. La machine de Turing
Alan Turing (1912-1954) est un mathématicien britannique qui a étudié des problèmes de
logique et de fondement des mathématiques qui le conduisent à définir, en 1936, ce que
l'on appelle maintenant «machine de Turing» et qui est un des concepts de base de
l'informatique. C'est un pur objet mathématique abstrait, qui permet de formaliser
rigoureusement la notion de calcul et de délimiter la frontière entre problèmes
«calculables» et problèmes non «calculables». La notion introduite par Turing de
«machine universelle» préfigure le principe de l'ordinateur. Par ailleurs, pendant la
Seconde Guerre mondiale, Turing a travaillé pour les services secrets alliés en participant
à l'équipe de scientifiques qui ont utilisé des moyens automatiques de calcul pour
déchiffrer les codes secrets de l'armée allemande.
1.3. La machine de Von Neumann
John Von Neumann (1903-1957), mathématicien américain d'origine hongroise, est l'un
des plus brillants scientifiques du XXe siècle. Pendant la Seconde Guerre mondiale, Von
Neumann participe, entre autres, aux calculs nécessaires à la mise au point de la bombe
atomique américaine. Pour faire ces calculs, il cherche à utiliser les calculateurs
disponibles aux États-Unis. En 1944, il rencontre à l'université de Pennsylvanie J. P.
Eckert et J. W. Mauchly qui construisent un très gros calculateur: l'ENIAC (Electronic
Numerical Integrator, Analyser and Computer) :machine universelle, programmable,
numérique, basée sur le système décimal, et entièrement électronique. Avec ses 18000
tubes et ses 30 tonnes, l’ENIAC pouvait multiplier deux nombres de 10 chiffres en 3
millisecondes !
-
14 Mondher HADIJI
Chapitre 1 Introduction
Bien que très puissante, cette machine n'est pas encore un ordinateur. Son usage est très
fastidieux et Von Neumann cherche à améliorer sa conception. Avec Eckert, Mauchly et
une équipe d'ingénieurs, il conçoit, en 1945, les plans d'une nouvelle machine qu'il
appelle l'EDVAC (Electronic Discrete Variable Automatic Computer). Cette machine est
fondamentalement nouvelle dans son architecture. L'innovation fondamentale est que
dans sa mémoire centrale sont placés non seulement les données mais aussi le
programme. Une unité de commande interne permet d'organiser le travail de la machine
et les échanges avec l'extérieur.
La machine de Von Neumann met cinq principes qui figurent dans les ordinateurs
actuels :
- Une unité effectuant les opérations arithmétiques élémentaires (addition, soustraction,
multiplication et division) : c’est l’unité arithmétique et logique
- Une Unité pour le contrôle logique de la machine et l’ordonnancement correct de ses
opérations : c’est l’unité de commande.
- Une unité pour la sauvegarde de l’information : c’est la mémoire centrale.
- Des organes pour transférer l’information du médium d’enregistrement externe de la
machine vers la partie arithmétique centrale, la partie de contrôle centrale et la
mémoire : ce sont les unités d’entrées.
- Des organes pour transférer l’information de la partie arithmétique centrale, la partie
de contrôle centrale et la mémoire vers le médium d’enregistrement externe : ce sont
les unités de sorties.
-
Unités
d’entrées
Unités de
sorties
Unité
Arithmétique
et logique
Unité de
commande
Unité de
sauvegarde
Figure1.1. Machine de Van Neumann
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 15
1.4. Les premiers micro-ordinateurs
La micro-informatique se développe à partir de 1975. Les immenses progrès dans la
miniaturisation des circuits conduisent à l'invention du microprocesseur, qui est l'organe
de base du micro-ordinateur.
2. Les différentes générations
2.1. La première génération : tubes à vide (1945-1958)
C’est l’époque de la technologie des tubes à vides (lampes ou des relais). L’organisation
de l’ordinateur était simple avec peu d’unités différentes. Le nombre d’éléments logiques
était de l’ordre de 104 environ
Au niveau logiciel, la programmation se faisait en langage machine, grâce à l’assembleur
symbolique.
La plupart des concepts architecturaux que l’on trouve dans les ordinateurs modernes ont
été inventés à cette époque : les registres d’indexation (1949), la microprogrammation
(1951), la représentation des nombres avec virgule flottante (1954), les interruptions de
programme (1954), les registres à usage non spécialisé (1956), les entrées-sorties
asynchrones (1956) et l’adressage indirect (1958).
2.2. La deuxième génération : le transistor (1958-1964)
D’un point de vue technologie, le passage à la seconde génération correspond à
l’utilisation du transistor dans la conception des éléments de l’ordinateur. Cela permet
d’augmenter d’un ordre de grandeur, le nombre d’éléments logiques (105). Les systèmes
étaient composés d’un petit nombre d’unités assez complexes. Le premier ordinateur à
transistor, appelé TRADIC (800 transistors) est apparu en 1964.
Coté logiciel, les premiers langages évolués de programmation voient le jour (COBOL,
FORTRAN, ALGOL, LISP).
2.3. La troisième génération : les machines à circuits intégrés
(1964-1978)
La troisième génération est celle du passage du traitement de données au traitement de
l’information. La donnée possède une sémantique et pas seulement une syntaxe.
-
16 Mondher HADIJI
Chapitre 1 Introduction
Au niveau technologique, elle est marquée par l’utilisation de circuits intégrés SSI (Small
Scale Integration) puis MSI (Medium Scale Integration), c’est à dire des circuits
contenant environ une dizaine de composants élémentaires, puis quelques centaines. Le
nombre d’éléments logiques constituant une machine a encore augmenté d’un ordre de
grandeur (106).
Au niveau de l’architecture des machines, c’est l’avènement de la notion de famille, avec
la série 360 d’IBM, l’apparition de la génération des mini-ordinateurs et c’est aussi la
génération des premiers microprocesseurs avec le circuit 4004 d’INTEL, apparu en 1972.
Côté logiciel, le système d’exploitation devient la ressource la plus importante et aussi la
plus complexe. Au niveau des langages de programmation, on voit apparaître PL1, Algol
68, Simula 67, Pascal, Basic, APL.
2.4. La quatrième génération : LSI, machines spéciales, réseaux
(1978-1985)
Cette génération est caractérisée principalement par la notion de réseaux de machines.
Au niveau technologique, l’utilisation de circuits LSI (Large Scale Integration) contenant
plusieurs centaines d’éléments logiques, permet d’augmenter, encore d’un ordre de
grandeur, le nombre de composants logiques élémentaires (107)
Face à la stagnation de la sémantique des jeux d’instructions et à la complexité
grandissante des langages de programmation qui entraîne une forte augmentation de la
complexité des compilateurs, l’époque charnière entre la troisième et la quatrième
génération voit l’apparition d’un nouveau concept architectural : les machines langages
ou multi-langages.
2.5. La cinquième génération : VLSI, parallélisme 1985 -…
La dernière génération est celle des systèmes distribués interactifs.
Niveau technologique, les progrès sont immenses, par rapport aux premières générations.
On parle de niveau d’intégration VLSI (Very Large Scale Integration) voire même de
WSI (Wafer Scale Integration), ce qui a permis d’augmenter de plusieurs ordres de
grandeurs, le nombre de composants logiques élémentaires dans une machine (108). Un
processeur complet de plusieurs millions de transistors se trouve dorénavant dans un seul
circuit intégré.
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 17
Côté architecture, c’est le retour à des jeux d’instructions beaucoup plus simples
(architecture RISC : Reduced Instruction Set Computers), permettant des organisations
plus performantes (processeurs multi-scalaires). La cinquième génération est aussi la
génération des architectures à parallélisme massif (plusieurs milliers ou millions de
processeurs élémentaires).
On distingue donc cinq générations d’ordinateurs :
Génération Date Technologie
1 1945 Tubes à vide
2 1958 Transistors
3 1964 Circuits Intégrés
4 1978 LSI
5 1985 VLSI
2.6. Que nous réserve l’avenir ?
La technologie électronique actuelle semble obéir à la loi de Moore (Gordon Moore de
Intel) : le nombre de transistors qu’on peut placer sur une puce augmente par quatre à
tous les trois ans parce que la taille des traits dans les circuits intégrés diminue de 10 %
chaque année.
3. L’architecture de l’ordinateur et l’Homme
L’ordinateur a été conçu par l’Homme et comme son nom l’indique pour ordonner des
informations, des données. Cette capacité d’ordonner présuppose des fonctions, qui sans
être une intelligence, telle que celle de l’homme, en constitue une partie.
L’Homme créa l’ordinateur à son image : c’est pour cette raison que l’ordinateur est
constitué principalement :
- d’un corps (hardware ou matériel)
- d’une âme (software ou logiciel)
Tableau 1.1. Les cinq générations d’ordinateur
-
18 Mondher HADIJI
Chapitre 1 Introduction
Ordinateur Homme M
até
riel
ou
ha
rdw
are
Un
ité
cen
tra
le Mémoire centrale
Le
corp
s
La
co
lon
ne
ver
téb
rale
La mémoire pour garder les souvenirs,
les informations …
L’horloge Le cœur pour rythmer son travail
Le microprocesseur Le cerveau pour réfléchir
Les bus Les nerfs pour relier ces composantes
Autres… Autres…
Pér
iph
ériq
ues
Clavier, scanner…
Org
an
es D’entrées : l’œil, l’oreille…
Imprimante, écran… De sorties
Modems… D’entrées-sorties : le nez, la bouche…
Mémoires de masses
(disques durs, disquettes…)
Documents (blocs-notes…)
Logiciel ou software L’âme
3.1. Un corps dénommé hardware ou matériel
Le hardware de l’ordinateur c’est son corps. A l’image de celui de l’homme, il est
composé d’une colonne vertébrale et d’organes. Mais comme la mémoire de l’homme
est insuffisante pour tout retenir, il fut obligé de créer des supports extérieurs comme les
blocs-notes, les carnets d’adresses, les livres … l’ordinateur, de même, fut doté de
supports extérieurs (mémoires auxiliaires ou mémoires de masses) servant de
complément à la mémoire limitée dont il est pourvu dans son cerveau.
3.1.1. Une colonne vertébrale dénommé unité centrale
La colonne vertébrale de l’ordinateur est dénommée unité centrale (U.C.) du fait que
tous les autres organes sont situés autour de lui, à sa périphérie. Celle-ci constituée
principalement d’une carte électronique sur laquelle sont soudées ou enfichées d’autres
composantes. La carte principale est appelée la carte-mère.
Tableau 1.2. Comparaison entre l’ordinateur et l’Homme
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 19
A l’image de la colonne vertébrale de l’Homme, l’unité centrale de l’ordinateur contient
d’un côté la mémoire (pour ne pas oublier l’information) et de l’autre le
microprocesseur (le cerveau pour réfléchir) qui est composé d’un ensemble d’éléments
dédiés aux fonctions logiques et de réflexion mais aussi de contrôle des organes.
Mais l’ordinateur comporte aussi dans son unité centrale une horloge (un cœur) qui
rythme le travail du microprocesseur et de tous les organes qui sont reliés à l’unité
centrale.
Enfin, un ordinateur est comme l’être humain a besoin de relier toutes ces composantes
pour qu’elles puissent communiquer : c’est le rôle dans le corps humain des nerfs et dans
l’ordinateur des bus.
3.1.2. Des organes dénommés périphériques
Les organes de l’ordinateur sont dénommés « périphériques », car ils sont
schématiquement placés autour de l’unité centrale. Ces périphériques vont permettre à
l’ordinateur de communiquer avec son monde extérieur comme le fait l’homme avec les
mains, les oreilles, le nez ou la bouche.
3.1.3. Des mémoires externes dénommées mémoires de masses
L’ordinateur a certes, une mémoire interne située dans l’unité centrale, mais elle est
insuffisante et surtout temporaire car on ne peut y garder de l’information que s’il est
alimenté en électricité. Comme l’ordinateur ne peut fonctionner en continu, on lui a créé
des mémoires externes (disques durs, disquettes, CD…) où l’on peut stocker les
informations auxquelles on a recours.
3.2. Une âme dénommée software ou logiciel
Le software ou logiciel est la partie immatérielle de l’ordinateur c’est son âme puisqu’il
le fait vivre. Un logiciel est une suite d’instructions données à l’ordinateur dans un
langage informatique.
-
LES SYSTEMES DE NUMERATION
Objectifs
A la fin de ce chapitre, vous saurez :
Représenter les caractères et les nombres positifs et négatifs dans la mémoire
Effectuer les opérations arithmétiques
Durée approximative de ce chapitre : 12 heures
Eléments de contenu
1. Introduction...…………………………………………………….23 2. Codage des alphanumériques …………………………...….24 3. Codage des nombres entiers………………………………....27 4. Changement de base………………………………...................31 5. L’arithmétique binaire………………………………..............34 6. Les nombres réels……………………………….......................39
-
22 Mondher HADIJI
Chapitre 2 Systèmes de numération
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 23
1. Introduction
Les systèmes informatiques actuels étant construits à l’aide de circuits intégrés,
composants électroniques qui rassemblent sur une puce de silicium quelques millions
de transistors, ils ne peuvent fonctionner que selon une logique à deux états telle que,
de façon schématique, le courant passe ou ne passe pas dans le transistor.
Ces deux états logiques, conventionnellement notés 0 et 1, déterminent une logique
dite binaire qui correspond à deux niveaux électriques que nous donnerons, pour
simplifier, comme étant équivalents à 0 volt et à 5 volts.
Toute information à traiter devra donc pouvoir être représentée sous une forme
assimilable par la machine, et donc sous une forme binaire. Que ce soit en interne
dans la machine, comme nous venons de le signaler, ou sur les fils permettant de faire
circuler l’information entre tous les composants d’un ordinateur.
Le passage d’une information, d’un langage compréhensible par l’homme à un
langage compréhensible par le système informatique, s’appelle codage ou
codification.
En effet, le codage d’une information consiste à établir une correspondance entre la
représentation externe de l’information et sa représentation interne dans la machine
qui est une suite de bits. Plusieurs types de codifications sont mises au point pour
représenter les chiffres et les lettres.
Etat 0
Etat 1
Un interrupteur ouvert : Etat logique 0
Un interrupteur fermé : Etat logique 1
-
24 Mondher HADIJI
Chapitre 2 Systèmes de numération
2.Codage des alphanumériques (textes)
Les caractères alphanumériques sont des données non numériques, on ne peut pas
donc effectuer des opérations arithmétiques (addition, multiplication,…) sur des
caractères. Par contre, il est souvent utile de comparer deux caractères, pour une
opération de trie ou autre.
Ils sont composés de :
- Les lettres majuscules : A, …, Z ;
- Les lettres minuscules : a, …, z ;
- Les symboles de ponctuations : , . ; ! ? « …
- Les chiffres : 0, …, 9
Un texte, ou chaîne de caractères, sera représenté comme une suite de caractères. Le
codage des caractères est fait par une table de correspondance indiquant la
configuration binaire représentant chaque caractère.
Les deux codes les plus connus sont :
- Le code EBCDIC
- Le code ASCII
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 25
2.1. Le code EBCDIC
Le code EBCDIC (Extended Binary Coded Decimal Interchange Code) est utilisé
principalement par IBM, représenté sur 8 bits et il est en voie de disparition.
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0000 NUL DLE DS SP & - { } \ 0
0001 SOH DC1 SOS / A J a j 1
0010 STX DC2 FS SYN B K S b k s 2
0011 ETX TM C L T c l t 3
0100 PF RES BYP PN D M U d m u 4
0101 HT NL LF RS E N V e n v 5
0110 LC BS ETB UC F O W f o w 6
0111 DEL IL ESC EOT G P X g p x 7
1000 CAN H Q Y h q y 8
1001 EM I R Z i r z 9
1010 SMM CC SM ! ::
1011 VT CUI CU2 CU3 $ , #
1100 FF IFS DC4 < * % @
1101 CR IGS ENQ NAK ( ‘
1110 SO IRS ACK + ; > =
1111 SI IUS BEL SUB | ? "
Tableau 2.1. Table EBCDIC
-
26 Mondher HADIJI
Chapitre 2 Systèmes de numération
2.2. Le code ASCII
Le code ASCII (American Standard Code for Information Interchange) est l’un des
codes les plus utilisés en informatique. L’ASCII standard représente chaque caractère
sur 7 bits, on peut donc avoir seulement 128 caractères possibles et on ne peut
représenter ni les caractères accentués ( é, è, à, ê, ù…), ni d’autres caractères de
contrôles (NUL, STX, …) ce qui a fait naître le code ASCII étendu utilisant 8 bits.
Déc. Binaire Carac. Déc. Binaire Carac. Déc. Binaire Carac. Déc. Binaire Carac.
0 0000000 32 0100000 ESPACE 64 1000000 @ 96 1100000 `
1 0000001 33 0100001 ! 65 1000001 A 97 1100001 a
2 0000010 34 0100010 “ 66 1000010 B 98 1100010 b
3 0000011 35 0100011 # 67 1000011 C 99 1100011 c
4 0000100 36 0100100 $ 68 1000100 D 100 1100100 d
5 0000101 37 0100101 % 69 1000101 E 101 1100101 e
6 0000110 38 0100110 & 70 1000110 F 102 1100110 f
7 0000111 39 0100111 ‘ 71 1000111 G 103 1100111 g
8 0001000 40 0101000 ( 72 1001000 H 104 1101000 h
9 0001001 41 0101001 ) 73 1001001 I 105 1101001 i
10 0001010 42 0101010 * 74 1001010 J 106 1101010 j
11 0001011 43 0101011 + 75 1001011 K 107 1101011 k
12 0001100 44 0101100 , 76 1001100 L 108 1101100 l
13 0001101 45 0101101 - 77 1001101 M 109 1101101 m
14 0001110 46 0101110 . 78 1001110 N 110 1101110 n
15 0001111 47 0101111 / 79 1001111 O 111 1101111 o
16 0010000 48 0110000 0 80 1010000 P 112 1110000 p
17 0010001 49 0110001 1 81 1010001 Q 113 1110001 q
18 0010010 50 0110010 2 82 1010010 R 114 1110010 r
19 0010011 51 0110011 3 83 1010011 S 115 1110011 s
20 0010100 52 0110100 4 84 1010100 T 116 1110100 t
21 0010101 53 0110101 5 85 1010101 U 117 1110101 u
22 0010110 54 0110110 6 86 1010110 V 118 1110110 v
23 0010111 55 0110111 7 87 1010111 W 119 1110111 w
24 0011000 56 0111000 8 88 1011000 X 120 1111000 x
25 0011001 57 0111001 9 89 1011001 Y 121 1111001 y
26 0011010 58 0111010 : 90 1011010 Z 122 1111010 z
27 0011011 59 0111011 ; 91 1011011 [ 123 1111011
28 0011100 60 0111100 < 92 1011100 \ 124 1111100 |
29 0011101 61 0111101 = 93 1011101 ] 125 1111101
30 0011110 62 0111110 > 94 1011110 ^ 126 1111110 ~
31 0011111 63 0111111 ? 95 1011111 _ 127 1111111
Notons encore que pour d’autres langues (arabes, chinois,…), d’autres codages
existent utilisant 16 bits par caractères tel que le code UNICODE (UNIversal CODE).
Tableau 2.2. Table ASCII Standard (sur 7 bits)
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 27
3.Codage des nombres entiers
Dans la vie courante, nous utilisons différents types de nombres : les nombres
naturels, les nombres relatifs, les nombres rationnels, les nombres réels, ainsi que
différentes formes de représentations de ceux-ci.
3.1. Système décimal
Pour ce système, on a besoin des chiffres de 0 à 9 pour écrire tous les naturels. On dit
que DIX est la BASE de ce système de numération.
Il s’agit d’un code PONDERE c’est à dire chaque chiffre décimal acquiert un POIDS
lié à sa position dans l’écriture du nombre.
Le POIDS vaut : 10r, où r est le RANG du chiffre (r=0 à droite, chiffre des unités).
Exemple :
1997 = 1x103 + 9x102 + 9x101 + 9x100
N° RANG : 3 2 1 0 Correspond à l’exposant
POIDS : 1000 100 10 1 Valeur du chiffre
3.2. Cas général : BASE B
Soit B un entier naturel dans N* \ {1}
On appelle système de numération pondérée à base B, la donnée de B symboles
différents appelés CHIFFRES, affectés à la notation des premiers naturels de 0 à B-1.
L’adoption de la règle d’écriture des naturels à partir de B par pondération suivant les
puissances, définie par :
Le chiffre de droite, de rang 0, a le poids B0 = 1
Tout chiffre à gauche d’un chiffre I a un poids B fois supérieures à celui de I
Exemple :
Trouver l’écriture décimale du nombre : 123 (B)
123 (B) = 1xB2 + 2xB1 + 3xB0 (10)
-
28 Mondher HADIJI
Chapitre 2 Systèmes de numération
3.3. Numération binaire
Chaque information traitée par l’ordinateur est définie par un ensemble fini
d’informations simples à deux états possibles, représentées par un chiffre 1 ou 0 : des
bits (BIT : Binary digIT).
Avec 1 bit, on a 2 valeurs possibles : 0 et 1 ;
Avec 2 bits, on a 4 valeurs possibles : 00, 01, 10 et 11 ;
Avec 3 bits, on a 8 valeurs possibles : 000, 001, 010, 011, 100, 101, 110 et 111 ;
…
les unités employées
Préfixe Symbole Valeur en
octets
Valeur possible Valeur
approximative
Quartet Quartet ½
Octet (Byte) O 1
Kilo octet K 10 210 103
Méga octet M 20 220 106
Giga octet G 30 230 109
Tétra octet T 40 240 1012
Péta octet P 50 250 1015
Exa octet E 60 260 1018
Tableau de conversion binaire-décimale
Binaire Décimale
0 0 1 1
10 2 11 3
100 4 101 5 110 6 111 7
1000 8 1001 9
Tableau 2.3. Unités employées
Tableau 2.4. Conversion binaire-décimale
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 29
3.4. Numération octale
Pour ce système de numération, on a besoin des chiffres de 0 à 7
Exemple
53(8) = 5x81 + 3x80 = 43(10)
Tableau de conversion octale-décimale
Octale Décimale
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
10 8
11 9
3.5. Base seize (hexadécimal)
Pour ce système de numération on a besoin de 16 symboles qui sont :
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F où
A est égale à 10 dans la base décimale ;
B est égale à 11 dans la base décimale ;
C est égale à 12 dans la base décimale ;
D est égale à 13 dans la base décimale ;
E est égale à 14 dans la base décimale et
F est égale à 15 dans la base décimale .
Exemple
B7(16) = 11x161 + 7x160 = 183(10)
Tableau 2.5. Conversion octale-décimale
-
30 Mondher HADIJI
Chapitre 2 Systèmes de numération
Table de correspondance
Binaire Hexadécimale Décimale
0000 0 0
0001 1 1
0010 2 2
0011 3 3
0100 4 4
0101 5 5
0110 6 6
0111 7 7
1000 8 8
1001 9 9
1010 A 10
1011 B 11
1100 C 12
1101 D 13
1110 E 14
1111 F 15
3.6. Autres bases de représentation
3.6.1. Code DCB (Décimal Code en Binaire)
Le code DCB ou BCD (Binary Coded Decimal) consiste à remplacer chaque chiffre
décimal du nombre par sa codification sur 4 bits en binaire
Exemple
1 9 7 5 en décimal
0001 1001 0111 0101 en DCB
Le code DCB 8-4-2-1 permet une implémentation des additions simples à l’aide de
l’addition duale présentée ci-dessous : les bits de même Quartet sont additionnés dans
un premier temps comme s’il s’agissait d’un nombre binaire. Ensuite, on contrôle les
valeurs des Quartets et on ajoute la valeur 6 chaque fois que la valeur d’un Quartet
dépasse 9.
Tableau 2.6. Table de correspondance
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 31
Exemple
125 0001 0010 0101
+
628 0110 0010 1000
0111 0100 1101
= + 0000 0000 0110
753 0111 0101 0011
3.6.2. Code majoré de trois
Le code majoré de trois d’un nombre décimal se trouve de la même manière que le
code DCB, sauf qu’on ajoute 3 à chaque chiffre décimal avant d’opérer la conversion.
Exemple
On veut convertir le nombre décimal 48 en code majoré de 3. Tout d’abord, on ajoute
3 aux deux chiffres 4 et 8, on obtient 7 et 11. Puis, on convertit ces deux chiffres en
décimal sur 4 positions. Le résultat calculé est :
48(10) = 0111 1011 en code majoré de 3
4. Changement de base
4.1. Passage de la base B vers la base DIX
Soit N(10) = an-1…a1a0 (B)
N(10) = an-1xBn-1 + … + a1xB1 + a0xB0
Exemples
B=2 : 100101(2) = 1x25 + 0x24 + 0x23 + 1x22 + 0x21 + 1x20
= 37(10)
B=16 : A3D(16) = 10x162 + 3x161 + 13x160
= 2621(10)
-
32 Mondher HADIJI
Chapitre 2 Systèmes de numération
4.2. Passage de la base DIX vers la base B
4.2.1. Première méthode
Elle consiste à soustraire successivement la plus grande puissance de B :
Exemples
De la base 10 vers base 2
363(10) = 1x28 + 1x26 + 1x25 + 1x23 + 1x21 +1x20
= 101101011(2)
De la base 10 vers base 16
363(16) = 1x162 + 6x161 + 11x160
= 16B(16)
4.2.2. Deuxième méthode
Elle consiste à diviser par B autant de fois que cela est nécessaire pour obtenir un
quotient nul, on écrit les restes dans l’ordre inverse où ils sont obtenus.
Exemples
De la base 10 vers base 2
145(10) = 10010001(2)
De la base 10 vers base 16
145(10) = 91(16)
145 2 1 72 2 0 36 2 0 18 2 0 9 2 1 4 2 0 2 2 0 1 2 1 0
145 16 1 9 16 9 0
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 33
4.3.Passage de la base 2n vers la base 2 et de la base 2 vers
base 2n
A l’aide de n (sur n positions), on convertit chaque chiffre en base 2 et on juxtapose
les résultats.
Exemples
De la base 16 = 24 vers la base 2
3 A 9 dans la base 16
0011 1010 1001 dans la base 2
Donc 3A9(16) = 001110101001(2)
De la base 8 = 23 vers la base 2
2 6 4 dans la base 8
010 110 100 dans la base 2
Donc 264(8) = 010110100(2)
Dans la conversion inverse, on découpe le nombre binaire en tranches de n chiffres
que l’on convertit.
Exemples
n = 4 (24 =16) 0011 1010 1001 dans la base 2
3 A 9 dans la base 16
n = 3 (23 = 8) 010 110 100 dans la base 2
2 6 4 dans la base 8
4.4. Passage de la base i vers la base j
Si i et j sont tous les deux des puissances de 2, on utilise la base 2 comme base
intermédiaire pour la conversion : i 2 j
Si i et j ne sont pas tous les deux des puissances de 2, on utilise la base 10 comme
base intermédiaire pour la conversion : i 10 j
-
34 Mondher HADIJI
Chapitre 2 Systèmes de numération
5.L’arithmétique binaire
5.1. Les 4 opérations arithmétiques usuelles
Elles s’effectuent selon les mêmes règles que dans le système décimal. Ces règles
caractérisent en fait la numération de position.
Il suffit de connaître les tables d’addition, de soustraction, de multiplication et de
division :
Addition Retenue Soustraction Retenue Multiplication Division Quotient Reste
0 +0 = 0
0 +1 = 1
1 +0 = 1
1 +1 = 0
0
0
0
1
0 – 0 = 0
0 – 1 = 1
1 – 0 = 1
1 – 1 = 0
0
1
0
0
0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
1 x 1 = 1
0 : 0
0 : 1
1 : 0
1 : 1
Imp.
0
Imp.
1
0
0
5.2. Les nombres négatifs
5.2.1. Représentation avec la valeur absolue et le signe
On sacrifie d’un bit dont le poids et le plus fort pour représenter le signe.
Normalement, 0 est le code du signe +, 1 est celui du signe -.
On peut ainsi, avec un mot de k bits, coder les entiers positifs ou négatifs N tels que :
-(2k-1 -1)
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 35
Remarque
Cette représentation a plusieurs inconvénients :
- Deux codages différents pour le nombre 0 : 00000000 et 10000000, soit +0 et –0 ;
- On est obligé de bien distinguer les 4 cas différents pour le nombre avec signe (+/+,
+/-, -/+, -/-). Il n’est pas possible, entre autre, de réaliser une soustraction comme une
addition de la négation du deuxième opérande.
Exemple Sur un octet :
45-35 : [00101101] 45
+[10100011] -35
[11010000] -80 ???
5.2.2. Représentation par le complément restreint (complément à 1)
- On calcule le complément logique (complément à 1) d’un nombre X noté CR(X), en
remplaçant, pour les valeurs négatives, chaque bit à 0 par 1 et vice versa.
Exemple
Par exemple sur un octet :
+1 = 00000001 -1 = 11111110
+0 = 00000000 -0 = 11111111
Remarques
- On a deux représentations de zéro
- Si n est le nombre de bit de X, on a X + CR(X) = 2n –1
Exemple
Si X = 1101
CR(X) = 0010
X+CR(X) = 1101+0010=1111=(15)10 = 24 –1
On en déduit que -X = CR(X) + 1 – 2n
5.2.3. Représentation par le complément vrai (complément à 2)
C’est la représentation la plus utilisée, on l’obtient en ajoutant +1 au complément
restreint. Elle simplifie l’addition et la soustraction et donne une seule représentation
de zéro.
-
36 Mondher HADIJI
Chapitre 2 Systèmes de numération
Un nombre positif de n bits, les n-1 bits de poids faible représente la valeur en binaire
naturel comme un nombre sans signe. Le nième bit de poids fort est à 0 et représente le
signe +. Par définition, le nombre opposé d’un nombre positif donné, s’obtient en
prenant le complément à 2 du nombre positif. Avec n bits, on peut représenter les
nombres positifs de 0 à 2n-1 –1 et des nombres négatifs de –1 à –2n-1. les nombres
négatifs se caractérisent par un bit de signe à 1.
CV(X) = CR(X) + 1
Exemple
La valeur de code en complément à 2 pour –35 sur un octet:
35 00100011
CR(00100011) : 11011100
CV(00100011) = CR(00100011) +1=11011101 -35
D’un point de vue mathématique, on représente les nombres entiers par une
arithmétique modulo 2n, où les représentants sont choisis dans l’intervalle [-2n-1, 2n-1[
Exemple
sur 4 bits l’intervalle est [-23, 23[ en complément à 2
Chaîne de bits Entier positif Complément à 2
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0 1 2 3 4 5 6 7 8 9
10 11 12 13 14 15
0 1 2 3 4 5 6 7 -8 -7 -6 -5 -4 -3 -2 -1
Remarque
De la relation X + CR(X) = 2n – 1, on déduit CV(X) = 2n – X et CV(CV(X)) = X
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 37
5.2.4. Problèmes liés à la longueur des nombres
5.2.4.1.Addition de deux nombres positifs
Soit deux nombres A et B à quatre éléments binaires, la somme de a1 et b1 donne un
résultat partiel S1 et une retenue r1. On forme alors la somme de r1, a2 et b2 pour
obtenir la somme partielle S2 et la retenue r2 et ainsi de suite.
Exemple
Addition de +7 et +5 sur 5 bits :
1 retenue 1 1 1 retenues
+ 7 0 0 1 1 1
+ 5 0 0 1 0 1
+12 0 1 1 0 0
Remarque
En ajoutant 2 nombres positifs (bit de signe est égal à 0) on peut obtenir un résultat
dont le bit de signe est 1 bien que le résultat soit positif , si le résultat est hors de
l’intervalle autorisé.
Par exemple si on effectue l’opération de l’addition de +49 et +88 sur 8 bits on
obtient : 00110001 + 01011000 = 1001001
On remarque que le 8ème bit est à 1 : donc il y a un dépassement de capacité. Pour
cela, les calculateurs utilisent un indicateur de dépassement de capacité (Overflow
Flag) .
Nombre A a4 a3 a2 a1
Nombre B b4 b3 b2 b1
Somme A+B s4 s3 s2 s1
Retenues r4 r3 r2 r1
-
38 Mondher HADIJI
Chapitre 2 Systèmes de numération
5.2.4.2.Addition des entiers signés
5.2.4.2.1. Avec le complément restreint
La soustraction est obtenue par simple addition des deux opérandes mais la retenue du
poids le plus fort est ensuite ajoutée au résultat
Exemples
- Sur 5 bits : +7-14
+7 0 0 1 1 1
-14 1 0 0 0 1 complément à 1 de 01110
-7 1 1 0 0 0 qui est –7 en complément à 1
- Sur 5 bits : -4-3
-4 1 1 0 1 1 complément à 1 de 00100
-3 1 1 1 0 0 complément à 1 de 00011
-7 1 1 0 1 1 1
1
1 1 0 0 0 qui est –7 en complément à 1
On note que si la retenue de signe apparaît, il faut l’ajouter au résultat de l’addition
algébrique pour obtenir le résultat correct.
5.2.4.2.2. Avec le complément vraie
La soustraction est obtenue par simple addition des deux opérandes en ne tenant pas
compte de la retenue du poids le plus fort.
Exemples
- Sur 5 bits : +7-14
+7 0 0 1 1 1
-14 1 0 0 1 0 complément à 2 de 01110
-7 1 1 0 0 1 qui est –7 en complément à 2
- Sur 5 bits : -4-3
-4 1 1 1 0 0 complément à 2 de 00100
-3 1 1 1 0 1 complément à 2 de 00011
-7 1 1 1 0 0 1
à rejeter
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 39
6.Les nombres réels
En base B, un nombre réel qui s’écrit abc,def vaut :
abc,def (B) = a x B2 + b x B1 + c x B0 + d/B1 + e/B2 + f/B3(10)
Exemples
- 12,31(5) = 51 + 2x50 +3/51 + 1/52 = 7,64(10)
- 1101,11(2) = 23 + 22 + 20 + 1/21 + 1/22 = 13,75(10)
Inversement, exemple de conversion en système octal :
634,328125(10) = ? (8)
634(10) = 1172(8)
0,328125 x 8
2 , 625 2 0,625
x 8 5 , 0 5
0,328125 (10) = 0,25 (8) d’où 634,328125(10) = 1172,25(8)
6.1. Représentation en virgule fixe
Un nombre de n bits est partagé en deux parties dont l’une correspond aux valeurs
entières, l’autre aux valeurs fractionnaires. La virgule n’est pas matérialisée
réellement comme le signe, mais se trouve fictivement entre les deux zones entières et
fractionnaires. La position de la virgule est fixée par l’utilisateur en fonction de ses
besoins.
634 8 2 79 8 7 9 8 1 1 8 1 0
-
40 Mondher HADIJI
Chapitre 2 Systèmes de numération
Exemple
Supposons que sur 8 bits : 1 bit pour le signe, 5 bits pour la zone entière et 2 bits pour
la zone fractionnaire
Signe Valeur entière(CR) Valeur fractionnaire(CV) Valeur décimale
0
0
0
0
1
1
1
00111
00110
00000
00000
11111
00110
11000
11
10
01
00
11
10
01
7,75
6,5
0,25
0
-0.25
-25,5
-7,75
6.2. Représentation en virgule flottante
Elle s’écrit sous la forme N = M x BE
Où B : est la base du système numérique utilisé
M : est la mantisse qui est de la forme 0,d1d2d3…..dm avec d1 0
E : est l’exposant
Les codages utilisés par différents ordinateurs et langage de programmation ne sont
pas uniformisés. Ce n’est que dans les tout derniers temps que l’on observe une
convergence vers le standard IEEE74 (Institute of Electrical and Electronics
Engineers 74). On va étudier un peu plus en détail ci-dessous la version « single
precision » de ce standard qui est utilisée par les processeurs d’Intel.
Dans la version de précision simple, on utilise 32 bits pour la représentation d’un
nombre réel. 23 bits sont réservés pour la mantisse, un bit pour le signe et les 8 bits
restants sont utilisés pour l’exposant.
Signe : 1 bit
Exposant : 8 bits Mantisse : 23 bits
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 41
Exemple
Représenter selon le standard IEEE74 le nombre 0,0001011101101(2)
0,0001011101101 = 0,1011101101 x 2-3
D’où la représentation de 0,0001011101101(2) selon le standard IEEE74 est :
1 1 1 1 1 1 1 0 0 1 0 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
-
LES MICROPROCESSEURS
Objectifs
A la fin de ce chapitre, vous saurez :
Définir le microprocesseur et présenter ses caractéristiques
Expliquer le rôle des principales unités du Microprocesseur et présenter leurs
interactions
Présenter les modèles de microprocesseur les plus répondus
Durée approximative de ce chapitre : 15 heures
Eléments de contenu
1. Introduction………………………………………………..………….45 2. Définitions………………………..………………………………..….45 3. Caractéristiques des processeurs……….................................….47 4. Les principales unités du Microprocesseur..………………...48 5. Exécution d'une instruction………………………………............63 6. Modèles de microprocesseurs………..............................……….67
-
44 Mondher HADIJI
Chapitre 3 Microprocesseurs
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 45
1. Introduction
Dans ce chapitre nous aborderons un des plus importants composants de l'ordinateur, il
s'agit du microprocesseur, qui interagit avec d'autres éléments de l'unité centrale pour
exécuter les programmes utilisateur.
Quand on parle du microprocesseur d´un ordinateur, on pense au Pentium II,et III,.. d´Intel,
au K6, ATHLON,… d´A.M.D, mais en réalité, il existe de nombreux microprocesseurs
dans votre ordinateur. Ils gèrent votre carte son, votre carte graphique ou encore réseau.
Ces microprocesseurs-là sont dits spécialisés ou gestionnaire de carte.
2. Définitions
Le microprocesseur (L’unité centrale de traitement (UCT) ou processeur central [
Central Processing Unit = CPU] ) :
C'est l’organe (le circuit) qui se charge de manipuler les données (i.e. calculer) mais c'est
aussi le " chef d'orchestre " de la machine : Il pilote et distribue les tâches
Il est capable de recevoir des informations de n’importe quel élément de l’ordinateur, de
les traduire et de les renvoyer vers un autre.
Il permet : d’exécuter les instructions, d’effectuer des calculs et de contrôler le
fonctionnement de l’ordinateur.
Il est composé principalement d´un seul élément de base, le transistor découvert en 1948.
C´est en les assemblant par million, selon une organisation précise, que l´on peut créer des
commandes qui exécuteront une addition, une comparaison entre deux données, etc.
La mémoire centrale (Instructions , Données)
Le microprocesseur
La mémoire auxiliaire (Disque, CD, DVD…)
Les Interfaces d’entrées
Les Interfaces de sorties
Bus
Bus
Bus
Bus
Figure 3.1. Microprocesseur et composants associés
Entrées Sorties
-
46 Mondher HADIJI
Chapitre 3 Microprocesseurs
Il est connecté à la carte mère par le biais d’un slot ou d’un socket.
Mémoires :
Les mémoires représentent tous dispositifs capable de sauvegarder une information
Bus :
Les différentes unités de l’ordinateur sont interconnectés par un système de câblage qui
transporte les signaux électriques. Ce système est appelé bus par analogie avec le transport
public.
Instructions :
Ecrites en langage machine, les instructions représentent les opérations effectuées par un
ordinateur. Une instruction est composée de :
Code de l’opération à effectuer
Opérandes impliqués dans l’opération.
On peut distinguer différents types d’instructions :
- Instruction de manipulation de l’information ou de traitement : opération arithmétiques et
logiques
- Instruction de rupture de séquence : opération pour exécuter un branchement
conditionnel, une répétition, saut de programme ou de traitement, appel de fonction
- Instruction d’échange et d’E/S: dialogue entre le microprocesseur et l’unité périphérique
sélectionner : par exemple imprimer
- Instruction de contrôle système : réservées à un mode d’exécution privilégié
( pour l’utilisation du Système d’Exploitation)
Données :
Les données sont les opérandes sur lesquels portes les opérations (traitements), ou
produits par celles-ci.
Une addition, par exemple, peut s’appliquer à 2 opérandes, donnant un résultat qui est la
somme des 2 opérandes.
On distingue les données numériques, pouvant être l’objet d’une opération arithmétique,
des données non numériques, par exemple, les symboles constituant un texte.
a. Données non numériques
Les données non numériques correspondent aux caractères alphanumériques: A, B, C, ...Z,
a, b, c,...z, 0, 1, 2,...9... et aux caractères spéciaux : ?,!, »;...
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 47
b. Données numériques
Les données numériques sont de différents types:
- nombres entiers positifs ou nuls: 0, 1,315...
- nombres entiers négatifs: -1.-1255...
- nombres fractionnaires: 3.1415, -0.5...
- nombres en notation scientifiques : 4.9x 107, 1023
Etapes de création et d’exécution d’un programme :
3. Caractéristiques des processeurs Les processeurs se distinguent essentiellement par les critères suivants:
3.1. Architecture
Son architecture change d’un microprocesseur à un autre
Exemples :
Présence ou non d'une mémoire cache ainsi que sa taille,
Présence ou non d'une unité de calcul numérique en virgule flottante, etc.
3.2. La taille du bus externe
c’est la taille des données qu'ils manipulent
Exemple :
Un caractère est représenté sur 8bits donc avec un bus externe de 64 bits, 8 caractères
peuvent être envoyés simultanément, alors qu'avec un bus de 16 bits il faudra quatre
opérations pour effectuer le même transfert.
3.3. La taille du bus d'adresses
C’est l'espace mémoire adressable
Algorithme & description des données
Programme en langage évolué (Basic,Pascal..)
Programme exécutable
Résultats
Le programmeur Le programme compilateur
Le microprocesseur
Traduction Compilation Exécution
-
48 Mondher HADIJI
Chapitre 3 Microprocesseurs
Exemple : pour un bus d'adresses de 20 bits, on peut avoir (adresser) 220 de mémoire
physique
3.4. La fréquence interne et la fréquence externe
La fréquence externe :
Elle correspond à la fréquence de la carte mère.
La fréquence interne :
La vitesse à laquelle il peut communiquer avec ses composants. Elle correspond à la
fréquence externe multipliée par un coefficient. Cette fréquence est obtenue en multipliant
celle de la carte mère par un facteur compris entre 1.5 et k (k est une constante qui change
d’une carte mère à une autre) avec des valeurs intermédiaire ayant un pas de 0.5.
Quand on parle d'un microprocesseur de 1.6 Giga Hertz (GHz), on veut dire par là que le
processeur exécute 1600 millions d'instructions par seconde et que sa fréquence interne
égale à 1.6GHZ
3.5. Présence de mémoire Cache
La mémoire cache a pour rôle d'optimiser l'accès aux informations que le processeur a
besoin.
La présence et la taille d'une mémoire cache interne est l'un des critères de performance
les plus importants d'un microprocesseur.
4. Les principales unités du Microprocesseur
Le microprocesseur est composé de plusieurs unités qui travaillent en parallèle : c’est le
principe de pipeline.
Toutes les unités ne sont pas présentes sur tous les modèles.
Exemples :
L'unité de calcul en virgule flottante (l'unité chargée des calculs arithmétiques
complexes) n'est pas active sur les processeurs 486SX.
L’unité de Multimédia n'a fait son apparition qu'avec le Pentium.
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 49
4.1. Notions d’Horloge et Pipeline
4.1.1. Le rôle de l’horloge
L’horloge est pilotée par des oscillateurs à quartz. Elle envoie des signaux (des impulsions
électriques) pour enchaîner les commandes élémentaires au microprocesseur. L’intervalle
de temps entre deux impulsions consécultifs représente le temps de cycle ou la période de
l’horloge.
Le microprocesseur est chargé d’exécuter les diverses instructions d’un programme le plus
rapidement possible. Afin d’augmenter ces performances la solution consiste à augmenter
la fréquence d’horloge du microprocesseur : c’est pour cela la fréquence de l’horloge a
passé de 4.77Mhz pour les premiers microprocesseurs à plus que 3Ghz.
4.1.2. Pipeline
La technique pipeline (ou anticipation dans le processeur) repose sur le découpage de
l’instruction en sous ensembles logiques élémentaires ou micro-opérations de longueur
fixe, de type chargement, décodage, exécution, rangement. Par exemple avec Intel Pentuim,
on distinque 5 phases :
Dans un tel pipêline on peut traiter cinq instructions simultanément. Ainsi, pendant que
l’on traite la phase de rangement, on peut exécuter en même temps la phase d’exécution de
f1 f2 f3 f4
1 cycle pour f1
Oscillateurs à Quartz
Horloge
Fréquence destinée au processeur central
Figure 3.2. L’horloge
Chargement Décodage Adressage Exécution Rangement
Chargement Décodage Adressage Exécution Rangement
Chargement Décodage Adressage Exécution Rangement
Chargement Décodage Adressage Exécution Rangement
Chargement Décodage Adressage Exécution Rangement
En cours d’exécution
-
50 Mondher HADIJI
Chapitre 3 Microprocesseurs
l’instruction suivante, la phase de génération des adresses de la troisième instruction, la
phase de décodage de la quatième instruction et la phase de chargment de la cinquième
instruction…
A chaque cycle d’horloge, le processeur fait ainsi avancer l’instruction en cours d’une
action élémentaire et commence une nouvelle instruction
Exemple : Pour comparer le fonctionnement d’une laverie en mode séquentiel et pipeline
A, B, C et D ont chacun du linge à Nettoyer(30mn), Sécher(40mn), Repasser(20mn)
La laverie est composée donc de 3unités : une unité pour nettoyer le linge, une deuxième
unité pour sécher le linge et une troisième pour le repasser.
Fonctionnement séquentiel :
Linge A N S R Linge B N S R Linge C N S R Linge D N S R
Durée : (30mn + 40mn + 20mn)*4 =360mn
Fonctionnement parallèle :
Durée : 30mn + 40mn + 40mn+40mn+40mn+20mn =210mn
30 40 20
30 40 20
30 40 20
30 40 20
Linge A
Linge B
Linge C
Linge D N S R
N S R
N S R
N S R
Les
Tac
hes
30 40 20 30 40 20 30 40 20 30 40 20
Les
Tac
hes
Temps
Temps
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 51
4.2. Unité de commande ou unité de contrôle
Ensemble de dispositifs coordonnant le fonctionnement de l’ordinateur afin de lui faire
exécuter la suite d’opérations spécifiées dans les instructions du programme.
Séquenceur : c’est le composant essentiel de cette unité génère les signaux de commande
nécessaire pour actionner et contrôler les unités participantes à l’exécution d’une
instruction donnée.
Registre : est une mémoire temporaire rapide se trouvant dans le processeur et il est
composé de un ou plusieurs cases mémoire.
Registre d’instruction : Contient l’instruction en cours d’exécution
Compteur ordinal : Indique l’adresse de la prochaine instruction a exécuté
Registre d’état : c’est un registre indicateur d’état du programme
4.3. Unité de mémoire cache
La mémoire cache a pour fonction de stocker les instructions ou données les plus
souvent utilisées. La raison est qu´elle est plus rapide que la mémoire R.A.M. Grâce à cette
mémoire, l’exécution des programmes est plus rapides.
Registre d’état Séquenceur
Horloge Registre
d’instruction Compteur
ordinal
Mémoire
Partie du processeur
bus de données bus d’adresse
décodage
Figure3.3. Interaction entre l’unité de commande et la mémoire
-
52 Mondher HADIJI
Chapitre 3 Microprocesseurs
Les performances du processeur sont étroitement liées à la mémoire cache de niveau1
(Level1), puisqu'il y a une autre (de niveau2 et de niveau3) sur la carte mère.
La taille de la mémoire cache de niveau 1 est de l'ordre des kilo octets ( de 32 ko à 256 ko
en fonction du microprocesseur).
4.4. Unités d’exécutions
4.4.1. L´unité arithmétique et logique U.A.L
C´est la plus importante unité : tous les programmes l´utilisent ,elle existe depuis que les
ordinateurs existent. Mais elle ne s´occupe que des calculs simples et sur des nombres
entiers.
Généralement on trouve au moins deux (à partir du Pentium), ce qui permet de traiter
jusqu’à deux instructions par cycle d’horloge. L’UAL contient tous les circuits
électroniques qui réalisent effectivement les opérations désirées.
C’est en effet, l’UAL qui exécute les additions, les soustractions et toutes les opérations
simple sur ses entrées, et qui produit un résultat placé dans le registre de sortie.
1er opérande
A B
UAL
A+B
Registre d ’entrée de l’UAL 2ème
opérande
Commandes
Registre d’état
Registre de sortie de l’UAL
Registre Accumulateur
Figure 3.4. L’unité arithmétique et logique
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 53
4.4.2. L´unité de calcul flottant (ou F.P.U Floating Point Unit)
A l´origine, c´était un processeur indépendant (série des 8087, 80287, 80387). Elle a été
intégrée au microprocesseur en 1989 pour optimiser les calculs.
Cette unité est capable de calculer non seulement des entiers mais aussi des nombres à
virgule (des réels).
De plus, elle réalise des opérations sur les racines carrées, les sinus, etc.
4.4.3. L´ unité multimédia
Il n´y a pas de standardisation. Les microprocesseurs pour PC ont vu la première unité
multimédia avec le MMX, puis le 3DNow d´A.M.D, le SSE sur les Pentium IV. Elles ont
pour fonction d´optimiser les programmes multimédia (son, graphique 3D, audio, vidéo).
4.5. Unités de Segmentation et de Pagination
Elles traduisent les adresses logiques(telles qu'elles sont manipulées par les programmes)
en adresses physiques(correspondants à des adresses réelles en mémoire).
4.6. Unité d'interface de Bus
Elle gère tous les échanges entre le microprocesseur et tous les autres composants reliés
par l'intermédiaire de bus.
4.7. Unité d'anticipation
Elle s'occupe d'aller tout d’abord chercher en mémoire cache interne du processeur les
instructions à exécuter. Si elles ne s'y trouvent pas, l'unité d'anticipation s'adresse à l'unité
d'interface du bus afin qu'elles soient lus dans la mémoire centrale.
Adresses logiques
Unités de Segmentation
et de Pagination
Adresses physiques
Figure 3.5. Rôle des unités de segmentation et de pagination
-
54 Mondher HADIJI
Chapitre 3 Microprocesseurs
Lors de cette opération, le contenu de l’adresse cherchée en mémoire est lu également et
placé dans la mémoire cache du processeur.
De cette façon, les prochaines instructions recherchées seront disponibles plus
rapidement(à condition que le contenu ne pas modifié d'ici là).
4.8. Unité queue (File d ‘Attente)
L'unité d'anticipation place l'instruction dans une queue et s'occupe d'aller chercher la
suivante. Grâce à ce dispositif, les unités d'exécutions n'ont pratiquement jamais d'attendre
que les instructions à exécuter leurs soient amenées(cela peut cependant se produire si une
série d'instructions très rapides à exécuter se présente).
A l'inverse, si les instructions demandent un temps d'exécution important, la queue se
remplie. Dans ce cas l'unité d'anticipation cesse de travailler jusqu'à ce que de l'espace se
libère pour de nouvelles instructions.
4.9. Unité de décodage
Elle traduit les instructions se trouvant dans la queue, en une forme compréhensible par
l'unité d'exécution puis les passe à l'unité de contrôle.
Exemple :
Soit un microprocesseur dont le format d’une instruction à deux adresses est le suivant :
Unité de
mémoire
cache
Unité
d’anticipation
Unité
d’interface
bus
Mémoire
centrale
Recherche dans la cache
Réponse négative
Aller chercher à partir de la MC
Contenu des adresses(Bus de données)
Partie du microprocesseur
Figure 3.6. Rôle de l’unité d’anticipation
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 55
Code opération (8bits) , 1ére adresse mémoire (16bits) et 2ème adresse mémoire
(16bits)
Le code d’une instruction d’addition de deux nombres en mémoire rassemblera à celui-ci
1 0 1 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 1 0 1 1 0 1 0 1 0 1 0 1 1 0 1 1 0 1
4.10. Les Registres
Un registre est un dispositif capable de mémoriser une information
Le nombre et le type des registres que possède le CPU sont une partie déterminante de
son architecture et ont une influence importante sur la programmation.
La structure des registres du CPU varie considérablement d’un constructeur à l’autre.
Nous allons décrire les registres les plus importants ainsi que leurs fonctions :
4.10.1. Registre tampon d’adresse
Il contient l’adresse mémoire de l’instruction qui est encours d’exécution. La taille du
registre d’adresse dépend de la taille du bus d'adresses qui détermine par conséquent le
nombre de cellules mémoire.
Exemple :
Avec 8 bits on peut adresser 28 (égale à 256) cellules mémoire.
Adresse mémoire de la première valeur à additionner
Adresse mémoire de la deuxième valeur à additionner
Unité de décodage
Addition des contenu De deux cases mémoire
-
56 Mondher HADIJI
Chapitre 3 Microprocesseurs
4.10.2. Registre mot mémoire ou registre de données
Le mot mémoire : est composé d’une ou plusieurs case mémoire. Toute opération de
lecture ou d'écriture porte sur un mot mémoire.
Le registre de données contient le contenu du mot mémoire. La taille du registre mot
mémoire est égale à la taille du mot mémoire. La lecture et l'écriture dans la mémoire se
fait de la façon suivante :
Pour la lecture : on met dans le registre adresse l’adresse du mot mémoire.
Le dispositif de sélection et d’accès permet de transférer le contenu du mot mémoire dans
le registre mot mémoire.
Pour l’écriture : le registre d’adresse contient l’adresse du mot dans lequel on va écrire
le contenu du registre mot mémoire.
L’opération de lecture ne détruit pas le contenu de l’emplacement, par contre l’écriture
détruit l’emplacement de l’information précédente.
4.10.3. Le Compteur ordinal C.O (pointeur de programme PC)
Il contient l'adresse en mémoire de la prochaine instruction à exécuter. L'unité de
commande incrémente le compteur ordinal (PC) du nombre d'octets sur lequel l'instruction,
en cours d'exécution, est codée. Le compteur ordinal contiendra alors l'adresse de
l'instruction suivante.
Registre d’adresse
Dispositif de sélection et d’accès
à la mémoire
mot 0
mot 1
mot 2
Registre mot mémoire ou registre de données
Adresse Sélection
Ecriture Lecture
Mémoire
Figure 3.7. Rôle du registre mot mémoire
-
Cours Architecture et maintenance des Ordinateurs
ISET-SFAX 57
Exemple :
Hypothèses : La mémoire est organisée en octet (cellule mémoire)
Le bus d’adresses est de 20 bits
Le bus de données est de 16bits (mot mémoire)
Le compteur ordinal contient l’adresse (PC)=10000H ;
Il pointe la mémoire a l’adresse 10000H qui contient l'instruction MOV C,B
MOV C,B est codée sur deux octets (89 D9H) ;
L'unité de commande incrémentera de deux le contenu du PC : (PC) = 10002H (la
mémoire sera supposée être organisée en octets).
Le RI contient l’instruction 89D9H
4.10.4. Registre instruction (RI)
Il contient l’instruction en cours d’exécution. Lorsque le CPU cherche une instruction il la
place dans RI. Une instruction est composée par :
Code opération : représente la nature de l’opération à effectuer par le microprocesseur.
Zone adresse : contient les adresses en mémoire des opérandes (0, 1 et 2) qui
participent dans une opération, dans certains cas elle contient l’opérande même. Il
existe plusieurs modes d’adressages pour accéder aux données.
PC RI
MOV C,B
Instruction suivante :
(PC) + 2 = 10002H
…. 10000H 10001H 10002H 10003H …
89 MOV C,B D9
Programme
Microprocesseur Mémoire
Bus d’adresses
Bus de données
10000H 89D9H
-
58 Mondher HADIJI
Chapitre 3 Microprocesseurs
Format des instructions :
On distingue six groupes d’instructions :
Transferts de données : de mémoires à registre, de registre à registre, de registre à
mémoires
Opérations arithmétiques : addition, soustraction, multiplication et division
Opérations logiques : ET, OU, NON, etc.
Contrôle de séquence : branchements conditionnels, appel de procédure, etc.
Entrées/sorties.
Manipulation diverses : incrémentation, etc.
Les modes d’adressage :
Un champ adresse peut permettre de référencer un registre ou un mot en mémoire. Il peut
contenir le numéro du registre ou
top related