Informatique: Architecture des ordinateurs Pr. Houssam AMIRY H. AMIRY 08/11/2022 1 PLAN Historique Introduction du module Partie 1: Systèmes de numération Partie 2: Architecture des ordinateurs H. AMIRY 08/11/2022 2 Historique ➢ A l’origine de l’ordinateur, on retrouve une très longue série d’inventions dont les premières siècles. ➢ Au fil des siècles, le but des hommes sera de calculer de plus en plus vite et en minimisant le plus possible la marge d’erreur. C’est de ce besoin de calculer que naissent les premières machines à calculer. Le boulier ou abaque (7ème siècle avant J.C, Mésopotamie) H. AMIRY 08/11/2022 3 Historique ✓ En 1642, Blaise Pascal crée une machine capable d’additionner et de soustraire : la Pascaline. ✓ Elle est créée spécifiquement pour le père de Blaise Pascal, qui était percepteur d’impôts. ✓ En 1673, Leibniz qui s’est inspiré de la Pascaline invente une machine capable de multiplier et de diviser. H. AMIRY 08/11/2022 4 Historique ✓ En 1834, Charles Babbage s’inspire du métier à tisser de Jacquard(!) pour élaborer une machine qui, à l’aide de cartes perforées, évalue les différentes fonctions (addition, soustraction, multiplication, et division). ✓ A partir de 1885, les calculateurs sont dotés de clavier et avec la découverte de l’électricité, des moteurs électriques remplacent les manivelles. H. AMIRY 08/11/2022 5 Historique ✓ Pendant la première partie du 20e siècle, l’avancée des mathématiques permet de donner un nouveau souffle à la recherche informatique. ✓ Celle-ci aboutit à partir de 1938 à la naissance du premier ordinateur programmable qui utilise le binaire : le Z3, créé par l’Allemand Konrad Zuse. Cet ordinateur réalise une multiplication en 4 secondes en moyenne. H. AMIRY 08/11/2022 6 Historique ✓ En 1943, Howard Aiken met en place en collaboration avec IBM le premier calculateur électromécanique : Mark I. C’est une machine qui pèse 5 tonnes et mesure 17 m de long et 2,5 m en hauteur. Cette machine calcule 5 fois plus vite que l’homme. ✓ En 1943, l’ENIAC devient le premier ordinateur ne comportant plus aucune pièce mécanique. ✓ Il est composé de 18 000 lampes et s’étend sur plus 160 m2. ✓ Il sera utilisé pour mettre au point la bombe H. H. AMIRY 08/11/2022 7 Historique ✓ Alors que l’ENIAC n’était programmable que manuellement, l’EDVAC permet la mémorisation. ✓ C’est une réelle innovation en 1946, puisqu’il permet de mémoriser 1024 mots en mémoire centrale et 20 000 en mémoire magnétique. ✓ L’apparition du transistor en 1948 révolutionne l’informatique, permettant ainsi de fabriquer des ordinateurs moins encombrants et qui consomment moins d’électricité. H. AMIRY 08/11/2022 8 Historique ✓ 1950 : apparition de nouveaux langages de programmation et des premiers circuits intégrés. La taille et le coût de l’ordinateur sont réduits. ✓ 1970 : création des premiers systèmes d’exploitation, dont l’inévitable UNIX. ✓ 1971 : création du 1er microprocesseur par Intel. H. AMIRY 08/11/2022 9 Historique ✓ IBM crée en 1981 son premier PC. ✓ L’ordinateur rentre alors dans les foyers et on parle pour les années 1980 d’informatique familiale. ✓ Parallèlement, l’apparition des jeux sur ordinateur rend l’informatique conviviale. H. AMIRY 08/11/2022 10 Historique ✓ Les avancées technologiques s’accélèrent considérablement dans les années 1990. ✓ Aujourd’hui, la micro-informatique se développe à un rythme très rapide. Avec la miniaturisation des composants matériels, on parle de nano-technologie. H. AMIRY 08/11/2022 11 Introduction du module Informatique ➢ Science du traitement automatique de l’information grâce à une machine appelée ordinateur. Ce mot est utilisé pour la première fois en 1962 par Philippe Dreyfus. ➢ Le terme « informatique » vient de la contraction des mots « information » et « automatique ». Informatique = information + automatique H. AMIRY 08/11/2022 12 Introduction du module ➢ Ensemble de circuits Ordinateur ????? électroniques permettant de manipuler des données sous forme binaire , c'est-à-dire sous forme de bits (0 ou 1). ➢ Les trois éléments essentiels d'un ordinateur sont, le processeur, les mémoires et les dispositifs de gestion des entréessorties. H. AMIRY 08/11/2022 13 Introduction du module : Utilisation des ordinateurs Système d'exploitation Programme système qui gère les différentes ressources de la machine Programme Suite d'instructions dans un langage donnée, définissant un traitement exécutable par un ordinateur • programmes systèmes • programmes d'application Programmation A partir d'un problème donné, réaliser un programme (langage de programmation machine) dont l‘exécution apporte une solution satisfaisante au problème posé H. AMIRY 08/11/2022 14 Partie 1: Systèmes de numération Objectifs: • Comprendre le principe de codage binaire. • Représenter des nombres entiers dans diverses représentations classiques (M&S, Cà1, Cà2). • Représenter des nombres réels en IEEE 754. • Comprendre le lien entre représentation des nombres et calcul arithmétique. • Représenter des données alphanumériques. H. AMIRY 08/11/2022 15 Partie 1: Systèmes de numération Plan 1. Le système binaire 2. Le système décimal 3. Le système octal 4. Le système hexadécimal 5. Passage de la base 2, 8, 16 à la base 10 6. Passage de la base 10 à la base 2, 8, 16 7. Passage de l’octal au binaire 8. Passage de l’hexadécimal au binaire 9. L'arithmétique binaire 10. Les nombres négatifs et les nombres réels 11. Différentes représentations relatives aux données H. AMIRY 08/11/2022 16 Systèmes de numération ➢ Instructions ➢ Données • Nombres (entiers, réels) • Images • Vidéos • Sons • etc. ➢ Toujours représentées sous forme binaire (0 ou 1) a l'aide de bits. H. AMIRY 08/11/2022 17 Systèmes de numération Définition ➢ Un système de numération est un ensemble de symboles et de règles permettant de représenter les nombres ➢ Un système de numération se définit par deux éléments: • La base du système, • Les symboles du système. En informatique, les systèmes les plus utilisés sont les suivants: décimal, binaire, octal et hexadécimal. H. AMIRY 08/11/2022 18 Systèmes de numération Notation Soit N un nombre quelconque exprimé dans une base b. N sera noté comme suit: N = (an-1 an-2 an-3………..a0)b Tel que: b: base du système de numération. ai: symbole du système, i = 0, … , n-1. avec . ai < b H. AMIRY 08/11/2022 19 Systèmes de numération Exemple: • N1 = (19017)10 En Décimal, avec: a4= 1, a3= 9, a2= 0, a1= 1, a0= 7. On remarque que les ai sont tous inférieurs à la base 10 (ai < 10). • N2 = (1011101)2 En Binaire, avec: a6= 1, a5= 0, a4= 1, a3= 1, a2= 1, a1= 0, a0= 1 (ai < 2). • N3 = (1370)8 En Octal, avec: a3= 1, a2= 3, a1= 7, a0= 0 (ai < 8). • N4 = (A9120)16 En Hexadécimal, avec: a4= A, a3= 9, a2= 1, a1= 2, a0= 0 (ai < 16). • N5 = (18095)8 La notation N5 = (18095)8 n’est pas correcte, car tous les chiffres doivent être inférieurs à 8 (ai < 8) ce qui n’est pas le cas pour le 2ième chiffre et aussi pour le 4ième (a1= 9 > 8) et (a3= 8). H. AMIRY 08/11/2022 20 1. Le système binaire 20 21 • C’est le système de numération utilisant la base 2. • On nomme bit les chiffres de la 22 numération binaire positionnelle. 23 • Un bit peut prendre deux valeurs, notées par convention 0 et 1. • C’est le système utilisée en informatique pour la représentation des informations au niveau machine. • Les deux états 0 et 1 sont les seuls que la machine peut assimiler. • La position des 0 et des 1 indique respectivement l'absence ou la présence d'une puissance de 2. H. AMIRY 08/11/2022 24 (101101) 2 1 x 20 0 x 21 1 x 22 1 x 23 0 x 24 1 x 25 21 2. Le système décimal • C’est le système usuel dans la vie quotidienne. La base du système décimal est la base 10 et ses symboles sont les dix chiffres: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. • Les dix chiffres précédents sont suffisants pour exprimer n’importe quel nombre . • La machine ne pouvant assimiler que les deux valeurs 0 et 1, il serait important de savoir comment exprimer les nombres décimaux en binaires et comment effectuer l’opération inverse et (319038) 10 8 x 100 3 x 101 0 x 102 9 x 103 1 x 104 3 x 105 on parle de conversion de base. H. AMIRY 08/11/2022 22 3. Le système octal (540371) 8 • La base du système octal est 8. • En octal, les nombres sont représentés sous forme de combinaisons de chiffres parmi les suivants: 0, 1, 2, 3, 4, 5, 6, et 7. H. AMIRY 08/11/2022 1 x 80 7 x 81 3 x 82 0 x 83 4 x 84 5 x 85 23 4. Le système hexadécimal • Le système hexadécimal ( base 16) utilise 16 chiffres pour la (140FC1) H représentation des nombres, à savoir: - les chiffres du système décimal: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. - les six (6) premières lettres de l’alphabet: A, B, C, D, E, F. H. AMIRY 08/11/2022 1 x 160 12 x 161 15 x 162 0 x 163 4 x 164 1 x 165 24 5. Passage de la base 2, 8, 16 à la base 10 • L’exemple suivant illustre la méthode de conversion, en décimal, d’un nombre exprimé dans une base b quelconque. Soit N = (an-1 an-2 an-3………..a0)b • Pour avoir la représentation en décimal du nombre N exprimé dans une base b quelconque, il suffit d’effectuer le calcul suivant: (N)b = an-1 * bn-1 + an-2 * bn-2 + ………..+ a1 * b1 + a0 * b0 • La formule générale s’écrit comme suit: Avec : i étant le poids du chiffre ai. H. AMIRY 08/11/2022 25 5. Passage de la base 2, 8, 16 à la base 10 • Exemple 1 : On considère le nombre: N = (1023)4 ✓ On commence par définir le poids de chaque chiffre et cela en les numérotant de droite à gauche et on commençant la numérotation à partir de 0. 3 2 1 0 Poids des chiffres (i) 1 0 2 3 ✓ Puis, on multiplie chaque chiffre ai de poids i par la base b élevée à la puissance i. (ai * bi ) N = 1 * 43 + 0 * 42 + 2 * 41 + 3 * 40 = 64 + 0 + 8 + 3 = 75. Ainsi, nous avons: N = (1023)4 = (75)10 H. AMIRY 08/11/2022 26 5. Passage de la base 2, 8, 16 à la base 10 • Exemple 2 : Soit à convertir en décimal, le nombre N exprimé en binaire comme suit: N = (10111001)2 ✓ Les poids des chiffres: 7 6 5 4 3 2 1 0 Poids des chiffres (i) 1 0 1 1 1 0 0 1 ✓ Ainsi, le nombre N en décimal est calculé comme suit: N = 1 * 27 + 0 * 26 + 1 * 25 + 1 * 24 + 1 * 23 + 0 * 22 + 0 * 21 + 1 * 20 = 128 + 0 +32 + 16 + 8 + 0 + 0 + 1 = 185. D’où: N = (10110101)2 = (185)10 H. AMIRY 08/11/2022 27 5. Passage de la base 2, 8, 16 à la base 10 • Exemple 3 : Soit à convertir en décimal le nombre X = (175)8 . (X)10 = 1*82 + 7*81 + 5*80 = 64 + 56 +5 = 125. Ainsi, (175)8 = (125)10 Soit à convertir en décimal le Nombre X = (A24)H . (X)10 = A * 162 + 2 * 161 + 4 * 160 = 10 * 162 + 2 * 161 + 4 * 160 = 2596. Ainsi, (A24)H = (2596)10 H. AMIRY 08/11/2022 28 6. Passage de la base 10 à la base 2, 8, 16 Pour exprimer en binaire, un nombre exprimé dans une base b, on dispose d’une méthode par divisions successives. Conversion par division successives Soit X un nombre exprimé dans la base 10. Pour l’exprimer dans une autre base b, il suffit d’effectuer des divisions successives sur b jusqu’à l’obtention d’un résultat nul. Les étapes à suivre sont les suivantes: soit Xi: le résultat de la division. ri: le reste de la division n°i. 1) Effectuer la division X / b = X0 et le reste r0 si X0 = 0 alors aller à 3) sinon aller à 2) 2) Effectuer la division Xi / b = Xi+1 et le reste ri+1 si Xi+1 = 0 alors aller à 3) sinon aller à 2) 3) Arrêter la division. Le résultat est (X)10 = (rm rm-1 … r1r0 )b H. AMIRY 08/11/2022 29 6. Passage de la base 10 à la base 2, 8, 16 Exemple: H. AMIRY 08/11/2022 30 7. Passage de l’octal au binaire La base 8 est une puissance de la base 2. Pour convertir un nombre octal en binaire, on possède comme suit: • On a 8 = 23 cela veut dire que pour représenter un seul chiffre octal en binaire, il faut utiliser 3 bits. • Ainsi, la représentation des chiffres de la base 8 en binaire est la suivante: H. AMIRY 08/11/2022 31 7. Passage de l’octal au binaire Exemple: Soit le nombre Y = (175)8 = (???)2 . Pour trouver l’équivalent binaire de ce nombre octal, il suffit de trouver l’équivalent binaire de chaque chiffre octal. H. AMIRY 08/11/2022 32 8. Passage de l’hexadécimal au binaire La base 16 est une puissance de la base 2. Pour convertir un nombre hexadécimal en binaire, on possède comme suit: On a 16 = 24 cela veut dire que pour représenter un seul chiffre hexadécimal en binaire, il faut utiliser 4 bits. Ainsi, la représentation des chiffres de la base 16 en binaire est la suivante: H. AMIRY 08/11/2022 33 8. Passage de l’hexadécimal au binaire Exemple: Soit le nombre Y = (A24)H = (???)2 . Pour trouver l’équivalent binaire de ce nombre hexadécimal, il suffit de trouver l’équivalent binaire de chaque chiffre hexadécimal. H. AMIRY 08/11/2022 34 9. L'arithmétique binaire Addition • 60+17 en base 2 11 1 1 1 0 0 + 0 1000 1 1 00 1101 ➔ 77 • 25 + 24 + 23 + 22 = 32 +16 + 8 + 4 = (60)10 • 24 + 20 = 16 + 1= (17)10 • 26 + 23 + 22 + 20 = 64 + 8 + 4 + 1 = (77)10 H. AMIRY 08/11/2022 35 9. L'arithmétique binaire Soustraction • 8-1 en base 2 1 10 10 - 01 01 01 0 1 1 ➔7 • 23 = (8)10 • 20 = (1)10 • 22 + 21 + 20 = 4 H. AMIRY 10 1 1 + 2 + 1 = (7)10 08/11/2022 36 9. L'arithmétique binaire Multiplication 7*5 en base 2 111 *101 111 1 1 01 0 0 . 1 1 1 . . 100 011 ➔ 35 • 22 + 21 + 20 = 4 + 2 + 1 = (7)10 • 22 + 20 = 4+ 1=(5)10 • 25 + 21 + 20 = 32+ 2+ 1 = (35)10 H. AMIRY 08/11/2022 37 9. L'arithmétique binaire Division • 37/5 en base 2 / 100101 101 000111 ➔7 • Tapez une équation ici. • 25 + 22 + 20 = 32+ 4+ 1 = (37)10 • 22 + 20 = 4+ 1= (5)10 • 22 + 21 + 20 = 4 + 2 + 1 = (7)10 H. AMIRY 08/11/2022 100101 101 00111 -000 100 - 000 1001 - 101 1000 - 101 0111 - 101 010 38 10. Les nombres négatifs et les nombres réels Décimal négatif ➔ binaire 3 façons de représenter les nombres négatifs avec n bits: • Module et signe (noté M&S) ✓ on utilise le bit le plus à gauche pour représenter le signe ✓ exemple mots de 4 bits ((3)10=(011)2) donc (0011)2 =(3)10 et (1011)2 =(-3)10 • Complément à 1 (noté Cà1) ✓ pour un nombre négatif, on prend la représentation de la partie entière et on inverse tous les bits ✓ exemple mots de 4 bits: ((4)10=(100)2) donc (0100)2=4 et (1011)2 =(-4)10 • Complément à 2 (noté Cà2) ✓ idem, mais avant d’inverser, on soustrait 1 (ou on inverse puis on ajoute 1) ✓ exemple mots de 4 bits : ((6)10=(110)2) donc (0110)2=6 et (1010)2=(-6)10 H. AMIRY 08/11/2022 39 10. Les nombres négatifs et les nombres réels Addition (ADD) et soustraction (SUB) • Le bit signe est traité comme tous les autres bits • La soustraction est un cas particulier de l’addition • Les nombres négatifs sont traités comme des nombres à additionner Exemple mots de 3 bits: • Addition par C à 1, (si retenue? on ajoute 1 au résultat) ✓ 0102+1102 = 10002➔un retenu +1➔ 0012 équivalent on décimal 2+(-1)=1 ✓ 0012+1012 = 1102➔pas de retenu➔ 1102 équivalent on décimal 1+(-2)=-1 • Addition par Cà2 (Directe) ✓ 0102+1112 = 1 0012➔0012 équivalent on décimal2+(-1)=1 ✓ 0012+1102 = 1112➔1112 équivalent on décimal 1+(-2)=-1 H. AMIRY 08/11/2022 40 10. Les nombres négatifs et les nombres réels Conversion chiffre réel binaire ➔décimal • Virgule fixe: dn-1 dn-2 dn-3 ….. d2 d1 d0 , d-1 d-2 d-m avec n et m fixe • Un nombre qui s'exprime en base B par 3 bits avec n=2 et m=1 le chiffres 101 s'analyse : 1*B1 + 0*B0 +1*B-1 ✓ En binaire (10,1)2 = 1*21 + 0*20 +1*2-1=(2,5)10 ✓ En octale(10,1)8 = 1*81 + 0*80 +1*8-1=(8,125)10 ✓ En hexadécimal (10,1)16 = 1*161 + 0*160 +1*16-1=(16,0625)10 H. AMIRY 08/11/2022 41 10. Les nombres négatifs et les nombres réels Conversion chiffre réel décimal ➔Binaire Exemple : (77,75)10 = (??)2 avec n=8 et m=2 • Pour la partie entier ➔il faut faire une diversion successive des quotients sur 2 puis écrire les restes en commençant par le dernier: 77,7510 • Pour la partie réel ➔il faut faire une multiplication successive des parties réel par 2 puis écrire la suite de la partie entier en commençant par le premier. • 0,75*2=1,5 • 0,5*2 =1 • on binaire 0,11 (1*2 -1 +1*2 -2 =0,5 + 0,25 = 0,75) Résultat 77,7510 = 01001101,112 H. AMIRY 08/11/2022 42 10. Les nombres négatifs et les nombres réels Réel négatif (virgule fixe) • Pour les valeurs négatives ont utilisent les mêmes règles de représentations vu avant M&S, Cà1 et Cà2 Exemple pour n=3 et m=2: décimale M&S Cà1 Cà2 -1,25 101,01 110,10 110,11 • Calcule pour n et m fixes, e.g. en Cà2: n=5 et n=3 et m=2 n=5 et m=0 m=0 + 0 0 1 1 0 6 1,5 1 1 0 1 1 -5 -1,25 0 0 0 0 1 1 0,25 - n=3 et m=2 0 0 1 1 0 6 1,5 0 0 1 0 1 5 1,25 0 0 0 0 1 1 0,25 • Pour d’autres n et m fixes, la même opération à différentes interprétations selon les valeurs de n et m. H. AMIRY 08/11/2022 43 10. Les nombres négatifs et les nombres réels Réel négatif (virgule flottant): Notation exponentielle Exposant - 0 Signe de la mantisse . 9 8 Position du point décimal 6 x 10 7 -3 Mantisse Signe de l’exposant Base Base de système du nombre! H. AMIRY 08/11/2022 44 10. Les nombres négatifs et les nombres réels Réel négatif (virgule flottant): Représentation normalisée • Un nombre représenté en virgule flottante est normalisé s'il est sous la forme: • ± 0,M * X±c • M – un nombre dont le premier chiffre est non nul • Exemple: • + 59,4151 * 10-5 => Normalisé: +0,594151 * 10-3 H. AMIRY 08/11/2022 45 10. Les nombres négatifs et les nombres réels Réel négatif (virgule flottant): Norme IEEE 754 32 bits Un format standardisé S C M en base 2, avec un bit caché à 1 Format simple précision: 32 bits • Bit du signe (1 bit) • Exposant (8 bits) • Mantisse (23 bits) Format double précision: 64 bits • Bit du signe (1 bit) • Exposant (11 bits) • Mantisse (52 bits) Mantisse (23 bits) Exposant (8 bits) Signe de la mantisse (1 bit) 64 bits Mantisse (52 bits) Exposant (11 bits) Signe de la mantisse (1 bit) H. AMIRY 08/11/2022 46 10. Les nombres négatifs et les nombres réels Réel négatif (virgule flottant): Norme IEEE 754 • La mantisse est normalisé sous la forme • ±1,M*2±E • Le 1 précédant la virgule n’est pas codé en machine et est appelé bit caché • Exemple: • Simple précision: application, codons le nombre • −6, 625 • -=1 • (6, 625)10 = (110, 1010)2 • 110, 1010 = 1, 101010 × 2 2 • M = 10101000000000000000000 • E=127 + 2 = (129)10 = (10000001)2 • −6, 625 = 1 10000001 10101000000000000000000 • En hexadécimal : C0 D4 00 00 H. AMIRY 08/11/2022 47 11. Différentes représentations relatives aux données Nombres entiers positifs Conversion directe (Décimal binaire) Nombres entiers négatifs (M&S, Cà1, Cà2) Numériques Nombres fractionnaires Données Codage par tables (ASCII) Non numériques H. AMIRY 08/11/2022 48 11. Différentes représentations relatives aux données Codage ASCII Chaque caractère possède son équivalent en code numérique: c'est le code ASCII (American Standard Code for Information Interchange). Le code ASCII de base représentait les caractères sur 7 bits (c'est-à-dire 128 caractères possibles, de 0 à 127). H. AMIRY Binary Octal Décimal Hexadécimal Caractères 010 0001 010 0010 010 0011 041 042 043 33 34 35 21 22 23 ! " # 011 0000 011 0001 011 0010 060 061 062 48 49 50 30 31 32 0 1 2 100 0001 101 65 41 A 100 0010 110 0001 110 0010 110 0011 102 141 142 143 66 97 98 99 42 61 62 63 B a b c 08/11/2022 49 11. Différentes représentations relatives aux données Codage ASCII Cher ami, 67 104 101 114 32 97 109 105 44 (en décimal) Il faut différencier entre • Nombre 12 =(12)10=(00000000001100)2 • Texte "12" ou '12'= (49 50) 10 =(00110001 00110010)2 H. AMIRY 08/11/2022 50 11. Différentes représentations relatives aux données Représentation en mémoire : texte En informatique, un texte est une chaîne de caractères est à la fois conceptuellement une suite ordonnée de caractères et physiquement une suite ordonnée d'unité de code (code unit exemple ASCII) Dans une mémoire informatique, l'adresse mémoire du premier caractère est connu. Deux méthodes pour délimiter la fin de la chaîne: • soit elle est terminée par un caractère de fin de chaîne (zéro binaire en langage C, et on parle alors d’ASCIIZ pour indiquer « terminé par un zéro »), • soit le nombre de caractères est stocké en parallèle au début. Exemple mot FRANK en mémoire avec les deux méthodes FRANK en mémoire, délimité par un caractère nul (utilisé pour afficher en écran en DOS) F R A N K NUL k e f w 46 52 41 4E 4B 00 6B 65 66 77 FRANK en mémoire stocké avec la longueur (utilisé pour lire de clavier en DOS) longueur F R A N K k e f w 05 46 52 41 4E 4B 6B 65 66 77 H. AMIRY 08/11/2022 51 11. Différentes représentations relatives aux données Représentation des primitives d'un langage (exemple, langage C) Type de donnée Signification Taille (en octets) char unsigned char short int unsigned short int Caractère Caractère non signé Entier court Entier court non signé 1 1 2 2 int Entier unsigned int Entier non signé 2 (sur processeur 16 bits) 0 à 65 535 4 (sur processeur 32 bits) 0 à 4 294 967 295 long int Entier long 4 unsigned long int float double Entier long non signé Flottant (réel) Flottant double 4 4 8 long double Flottant double long 10 H. AMIRY Plage de valeurs acceptée -128 à 127 0 à 255 -32 768 à 32 767 0 à 65 535 -32 768 à 32 767 2 (sur processeur 16 bits) -2 147 483 648 à 2 147 4 (sur processeur 32 bits) 483 647 -2 147 483 648 à 2 147 483 647 0 à 4 294 967 295 3.4*10-38 à 3.4*1038 1.7*10-308 à 1.7*10308 08/11/2022 3.4*10-4932 à 3.4*104932 52 11. Différentes représentations relatives aux données Unités de mesure en informatique H. AMIRY 08/11/2022 53 Partie 2: Architecture des ordinateurs Plan 1. Circuits logiques 2. Les composants matériels de l'ordinateur 3. Les composants logiques de l'ordinateur H. AMIRY 08/11/2022 54 Partie 2: Architecture des ordinateurs Introduction ➢ L'ordinateur est un dispositif électronique qui traite l'information mise sous forme d'impulsions électriques traduisant les chaînes binaires (suite de bits). ➢ L’ordinateur ne comprend que les impulsions électriques. ➢ Le traitement de données par un ordinateur est essentiellement réalisé à l'aide d'opérations telles que l'addition, la soustraction, la multiplication, la division, la comparaison. ➢ Plus fondamentalement, les opérations sont composées d'opérations logiques qui sont effectuées par des circuits logiques de base appelés portes. ➢ Une porte est en fait un circuit combinatoire à une ou plusieurs entrées et à au moins une sortie. Les conditions aux entrées d'une porte déterminent l'état des sorties. H. AMIRY 08/11/2022 55 Partie 2: Architecture des ordinateurs Introduction ➢ Il existe trois portes de base correspondant aux trois opérations logiques: OU, ET, NON. ➢ On dit que les portes OU, ET, NON sont des opérateurs booléens, parce qu'ils impliquent ou traitent des variables booléennes, c'est à dire des variables logiques qui ne peuvent prendre que deux valeurs: 0 et 1. ➢ Le terme booléen vient du nom du mathématicien anglais George Boole (1815-1864), qui fit une analyse mathématique de la logique. ➢ L'ensemble des règles relatives au traitement des variables booléennes est appelé algèbre de Boole. H. AMIRY 08/11/2022 56 1. Circuits logiques ➢ Tout ordinateur est conçu à partir de circuits intégrés qui ont tous une fonction spécialisée. ➢ Les circuits intégrés sont fait à partir de circuits logiques dont le but est d’exécuter des opérations sur des variables logiques (binaires). ➢ Les circuits logiques sont élaborés à partir de composants électroniques – transistors. ➢ Types de circuits logiques: Combinatoires et Séquentiels. H. AMIRY 08/11/2022 57 1. Circuits logiques Circuits combinatoires ➢ Support théorique – algèbre de Boole. ➢ Les fonctions de sortie s’expriment selon des expressions logiques des seules variables d’entrée. ➢ Un circuit combinatoire est défini par une ou plusieurs fonctions logiques. H. AMIRY 08/11/2022 58 1. Circuits logiques Circuits séquentiels ou à mémoire ➢ Support théorique – FSM (Finite State Machine). ➢ Les fonctions de sortie dépendent non seulement de l’état des variables d’entrée mais également de l’état antérieur de certaines variables de sortie (propriétés de mémorisation). H. AMIRY 08/11/2022 59 1. Circuits logiques: combinatoires Conception d’un circuit logique A. Identifier les entrées et les sorties (IN / OUT) du circuit + Construire la table de vérité. B. Identifier la fonction à partir de la table de vérité. C. Simplification de la fonction. D. Dessiner le schéma du circuit (logigramme). H. AMIRY 08/11/2022 60 1. Circuits logiques: combinatoires A. Identifier les entrées et les sorties (IN / OUT) du circuit + Construire la table de vérité. • Ecrire sur une première ligne le nom des variables d'entrée et de la variable de sortie. • Diviser le tableau en un nombre de colonnes égal au total des entrées et de la sortie. Ainsi, la table de vérité d'une fonction logique à deux entrées aura trois colonnes (deux pour les entrées et une pour la sortie). • Déterminer le nombre de combinaisons possibles à l'aide des variables d'entrées. Ce nombre est égal à deux exposant le nombre d'entrées. Par exemple, avec trois entrées, il y aura 23 = 8 combinaisons possibles. • Tracer des lignes horizontales dont le nombre est égal au nombre de combinaisons possibles. • Inscrire dans la colonne "sortie" la valeur de la fonction pour chaque combinaison 1 ou 0 ou - si la valeur est indéterminé Exemple: tables de vérité de addition a b F 0 0 0 arithmétique a+b 0 1 1 1 0 1 1 1 1 H. AMIRY 08/11/2022 61 1. Circuits logiques: combinatoires B. Identifier la fonction à partir de la table de vérité Méthodes des minterms et des maxterms ➢ Il est possible d'exprimer toute fonction logique a l'aide des operateurs NON, ET, OU. ➢ L'expression algébrique obtenu est dite forme normale (ou canonique). ➢ Terme produit : fonction composée uniquement de produits (A . B . C). ➢ Terme somme : fonction composée uniquement de sommes (A + B + C). ➢ Minterm (1èr forme canonique) : dans un terme produit où chaque variable est présente une fois exactement. ➢ Maxterm (2ème forme canonique) : dans un terme somme où chaque variable est présente une fois exactement. H. AMIRY 08/11/2022 62 1. Circuits logiques: combinatoires B. Identifier la fonction à partir de la table de vérité Méthodes des minterms et des maxterms H. AMIRY 08/11/2022 63 1. Circuits logiques: combinatoires C. Simplification de la fonction: la méthode algébrique • Associativité Comme avec les opérations habituelles: • Commutativité : L'ordre est sans importance: • Éléments neutres • Absorption • Simplification • Distributivité • Idempotence • Première loi de De Morgan (négation de la conjonction) s'exprime par l'égalité suivante • Deuxième loi de De Morgan (négation de la disjonction) H. AMIRY 08/11/2022 64 1. Circuits logiques: combinatoires C. Simplification de la fonction: la méthode algébrique • Exemple H. AMIRY 08/11/2022 65 1. Circuits logiques: combinatoires C. Simplification de la fonction: la méthode de Karnaugh Pour les tables a 4 variables, il faut de préférence procéder dans l'ordre suivant : • les rectangles 8 cases, puis • les rectangles 4 cases, puis • les rectangles 2 cases, et enfin • les cases uniques. Dans l'exemple ci-contre : on peut former un rectangle de 8 cases (en bleu), puis un carre de 4 (en vert) et enfin on peut rassembler les deux 1 restants dans un groupe de 4 (en rouge). H. AMIRY 08/11/2022 66 1. Circuits logiques: combinatoires Exemple A : H. AMIRY Tableau de Karnaugh : 08/11/2022 67 1. Circuits logiques: combinatoires Exemple B : H. AMIRY Tableau de Karnaugh : 08/11/2022 68 1. Circuits logiques: combinatoires D. Dessiner le schéma du circuit (logigramme) H. AMIRY 08/11/2022 69 1. Circuits logiques: combinatoires D. Dessiner le schéma du circuit (logigramme) Représenter une fonction logique sous la forme d'un logigramme revient à réaliser son schéma de câblage à l'aide des portes logiques. Exemple1: f1=ab+cd H. AMIRY 08/11/2022 70 1. Circuits logiques: combinatoires Exemple 1: Simplification algébrique: Simplification par tableau de Karnaugh : H. AMIRY 08/11/2022 71 1. Circuits logiques: combinatoires Exemple 2: Simplification par tableau de Karnaugh : H. AMIRY 08/11/2022 72 1. Circuits logiques: combinatoires Exemple 3: Simplification par tableau de Karnaugh : H. AMIRY 08/11/2022 73 1. Circuits logiques: combinatoires Exemple 4: Simplification par tableau de Karnaugh : H. AMIRY 08/11/2022 74 1. Circuits logiques: combinatoires Exemple 5: H. AMIRY 08/11/2022 75 1. Circuits logiques: combinatoires Exemple 6: cas indéterminé Tableau de Karnaugh : H. AMIRY 08/11/2022 76 1. Circuits logiques: combinatoires Les deux grandes familles de la logique • la logique TTL et sa série 74XX. baser sur les transistor bipolaire • la logique CMOS et sa série de circuits 4000.baser sur les transistor a effet de champ • Fonctionnement de transistor équivalent à un interrupteur, il y a 2 types H. AMIRY 08/11/2022 77 1. Circuits logiques: combinatoires Fonctionnement des portes logiques: Inverseur • Décharge et charge de la capacité de sortie d’un inverseur • Si E=0 ➔ S=5V après le temps de charge • Si E=5V ➔ S=0V après le temps de décharge H. AMIRY 08/11/2022 78 1. Circuits logiques: combinatoires Structure interne de différentes portes de base H. AMIRY 08/11/2022 79 1. Circuits logiques: combinatoires Exemple 1 : Multiplexeur ➢ X entrées, 1 sortie. ➢ la sortie f prend la valeur de l’une des entrées ➢ Son rôle consiste à sélectionner, à l’aide de signaux de commande, une des entrées et à la lier à la sortie. H. AMIRY 08/11/2022 80 1. Circuits logiques: combinatoires Exemple 2: Démultiplexeur • 1 entrée, X sorties • Selon une adresse s (n bits), une seul des X sorties prend la valeur de l’entrée Application Demultiplexeur/ Multiplexeur : Conversion Série/Parallèle; Parallèle/Série H. AMIRY 08/11/2022 81 1. Circuits logiques: combinatoires Exemple 3: Décodeur • Active une des X sorties selon un code • Entrée sur n bits • Nombre de sorties: 2n • Une seule sortie est mise à 1 selon la configuration des entrées H. AMIRY 08/11/2022 82 1. Circuits logiques: combinatoires Exemple 4: Encodeur • Active un code selon l’une des X entrées actives • 2n entrées, 1 entrée active (valeur 1), les autres sont toutes désactivées (valeur 0) • Sortie : sur n bits H. AMIRY 08/11/2022 83 1. Circuits logiques: combinatoires Exemple 5: Additionneur • Additionneur 1 bit pour les bits de poids faible a0 et b0 : • Le circuit logique associé est donc constitué de deux portes, un OU exclusif pour le résultat et un ET pour la retenue. • Comme ce circuit ne tient pas compte d’une retenue propagée depuis le rang inférieur. H. AMIRY 08/11/2022 84 1. Circuits logiques: combinatoires Exemple 5: Additionneur Additionneur 1 bit pour les bits de poids fort: Afin de permettre une liaison de plusieurs additionneurs en série, un additionneur doit avoir une retenue en entrée Re en plus de la retenue en sortie Rs: H. AMIRY 08/11/2022 85 1. Circuits logiques: combinatoires Exemple 5: Additionneur Additionneur complet n bits: • L’additionneur n bits est obtenu en chaînant entre eux un demi-additionneur et n-1 additionneurs 1 bit complets • Le chaînage s’effectue par le biais des retenues propagées H. AMIRY 08/11/2022 86 1. Circuits logiques: séquentiels Circuits séquentiels ou à mémoire • Circuits combinatoires – Les sorties ne dépendent que des valeurs des entrées • Circuits séquentiels – Ajout des notions d'état et de mémoire – Ajout de la notion de temps (horloge) • Les valeurs de sorties du circuit dépendent: – Des valeurs en entrée – De valeurs calculées précédemment – De l'état dans lequel on se trouve • Théories utilisées pour étudier/spécifier les différents types de circuits – Circuits combinatoires : algèbre de Boole – Circuits séquentiels : théorie des automates finis H. AMIRY 08/11/2022 87 1. Circuits logiques: séquentiels Principe de fonctionnement Particularité de ce circuits – La sortie S du circuit est réinjectée à l’entrée du circuit – Rétroaction – L’état de sortie du circuit influencé par l’état antérieur La table de vérité L’état pour lequel X1=0 et X2=1 correspond à l’état de mémorisation du circuit séquentiel H. AMIRY 08/11/2022 88 1. Circuits logiques: séquentiels Exemple 1: Bascule Bistable Principe général d'une bistable : 2 portes NON (inverseurs) en opposition H. AMIRY 08/11/2022 89 1. Circuits logiques: séquentiels Exemple 2: Bascule RS • 2 entrées : R et S ; R = reset : remise à 0 de Q; S = set : mise à 1 de Q. • 1 sortie: Q qui correspond à l'état stocké. Principe : la valeur de Q à t+1 dépend de R, S et de la valeur de Q à t H. AMIRY 08/11/2022 90 1. Circuits logiques: séquentiels Exemple 3: Bascule JK Bascule JK sur front d’horloge • Possède 2 entrées de données J et K • Fonctionnalité identique à la bascule RS à la différence près que l’état J=1, K=1 est autorisé • J= 1, K = 1 => inversion de l’état de la bascule H. AMIRY 08/11/2022 91 2. Les composants matériels de l'ordinateur: introduction H. AMIRY 08/11/2022 92 2. Les composants matériels de l'ordinateur: introduction Schématiquement un ordinateur peut être symbolisé comme suit : H. AMIRY 08/11/2022 93 2. Les composants matériels de l'ordinateur: introduction Architecture des ordinateurs: Le modèle de Von Neumann • Von Neumann MÉMOIRE CPU Unité central ES ES ES • Harvard BUS INSTRUCTIONS MÉMOIRE DONNÉES MÉMOIRE INSTRUCTION CPU ES ES ES BUS DONNÉES H. AMIRY 08/11/2022 94 2. Les composants matériels de l'ordinateur: introduction Schématiquement un ordinateur peut être symbolisé aussi par : H. AMIRY 08/11/2022 95 2. Les composants matériels de l'ordinateur: introduction ➢Un ordinateur est un ensemble de composants électroniques modulaires, c'est-à-dire des composants pouvant être remplacés par d'autres composants ayant éventuellement des caractéristiques différentes, capables de faire fonctionner des programmes informatiques. ➢ On parle ainsi de « hardware » pour désigner l'ensemble des éléments matériels de l'ordinateur et de « software » pour désigner la partie logicielle. H. AMIRY 08/11/2022 96 2. Les composants matériels de l'ordinateur: introduction Les composants matériels d’un ordinateur architecturés autour d'une carte principale comportant quelques circuits intégrés et beaucoup de composants électroniques tels que condensateurs, résistances, etc. Tous ces composants sont soudés sur la carte et sont reliés par les connexions du circuit imprimé et par un grand nombre de connecteurs : cette carte est appelée carte mère. H. AMIRY 08/11/2022 97 2. Les composants matériels de l'ordinateur: introduction ➢ L'élément constitutif principal de l'ordinateur est la carte mère qui permet la connexion de l'ensemble des éléments essentiels de l'ordinateur. Elle est logée dans un boîtier. ➢ Le boitier comportant des emplacements pour les périphériques de stockage sur la face avant. ➢ Ainsi que des boutons permettant de contrôler la mise sous tension de l'ordinateur et un certain nombre de voyants permettant de vérifier l'état de marche de l'appareil et l'activité des disques durs. ➢ Sur la face arrière, le boîtier présente des ouvertures en vis-à-vis des cartes d'extension et des interfaces d'entrée-sortie connectées sur la carte mère. ➢ Les éléments externes au boîtier centrale sont appelés périphériques. . ➢ Il est possible de connecter une grande diversité de périphériques sur les interfaces d'entrée-sortie (ports séries, port parallèle, port USB, ) : Imprimante, scanner, carte son externe, disque dur externe, périphérique de stockage externe. H. AMIRY 08/11/2022 98 2. Les composants matériels de l'ordinateur: introduction Carte mère H. AMIRY 08/11/2022 99 2. Les composants matériels de l'ordinateur: Assemblage 1- Ouverture du boîtier 2- Installation de l'alimentation à l’intérieur du boitier H. AMIRY 3- Installation du processeur et de l'ensemble dissipateur thermique/ventilateur sur la carte mère 4- Installation de la mémoire vive sur la carte mère 08/11/2022 100 2. Les composants matériels de l'ordinateur: Assemblage 5- Installation de la carte mère à l’intérieur du boitier 6- Installation du disque dur à l’intérieur du boitier H. AMIRY 08/11/2022 101 2. Les composants matériels de l'ordinateur: Assemblage 7- Installation du lecteur optique sur le boitier 8- Installation des cartes d’extension sur la carte mère H. AMIRY 08/11/2022 102 2. Les composants matériels de l'ordinateur: Assemblage 9- Connexion de l'alimentation à la carte mère et les autres composants 10- Connexion des câbles de données internes H. AMIRY 08/11/2022 103 2. Les composants matériels de l'ordinateur: Assemblage 11- Réassemblage du boîtier 12- Installation des câbles externes H. AMIRY 08/11/2022 104 2. Les composants matériels de l'ordinateur: Le processeur Présentation ➢Un processeur est un circuit intégré complexe caractérisé par une très grande intégration et doté des facultés d'interprétation et d'exécution des instructions d'un programme. ➢ Il est chargé d’organiser les tâches précisées par le programme et d’assurer leur exécution. Il doit aussi prendre en compte les informations extérieures au système et assurer leur traitement. ➢ C’est le cerveau du système. A l’heure actuelle, un processeur regroupe sur quelques millimètres carrés des fonctionnalités toujours plus complexes. H. AMIRY 08/11/2022 105 2. Les composants matériels de l'ordinateur: Le processeur Architecture de base Un processeur est constitué au minimum : • d'une unité de commande qui coordonne le fonctionnement; • d'une unité arithmétique et logique qui effectue les traitements; • des registres qui permettent un stockage local. H. AMIRY 08/11/2022 106 2. Les composants matériels de l'ordinateur: Le processeur Schéma général du fonctionnement du CPU (central processing unit) H. AMIRY 08/11/2022 107 2. Les composants matériels de l'ordinateur: Le processeur Unité de commande (UC ou unité de contrôle) ➢ Elle permet de séquencer le déroulement des instructions. Elle effectue la recherche en mémoire de l'instruction. ➢ Comme chaque instruction est codée sous forme binaire, elle en assure le décodage pour enfin réaliser son exécution puis effectue la préparation de l'instruction suivante. Pour cela, elle est composée par : • Le compteur de programme : (en anglais Program Counter PC) appelé aussi compteur ordinal (CO). Le CO est constitué par un registre dont le contenu représente l’adresse de la prochaine instruction à exécuter. Il est donc initialisé avec l'adresse de la première instruction du programme. Puis il sera incrémenté automatiquement pour pointer vers la prochaine instruction à exécuter. • Un registre d'instruction qui mémorise l'instruction en cours d'exécution. • Un décodeur d'instruction qui reconnait l'instruction contenue dans le registre instruction (il indique au séquenceur la séquence de micro-commandes à réaliser pour exécuter l'instruction). • Un séquenceur qui fournit la suite de micro-commandes (chargement, décalage,...) nécessaires au déroulement de l'instruction. Il organise l'exécution des instructions au rythme d’une horloge. H. AMIRY 08/11/2022 108 2. Les composants matériels de l'ordinateur: Le processeur Unité Arithmétique et logique (UAL) Appelée aussi unité de calcul, UT (Unité de Traitement) ou ALU (Arithmetic and Logical Unit). Elle est composée de circuits logiques tels que les additionneurs, soustracteurs, comparateurs logiques…etc., afin d’effectuer les calculs et les opérations logiques des différents instructions à exécuter, les données à traiter se présentent aux entrées de l’UAL, sont traités, puis le résultat est fourni en sortie et généralement stocké dans un registre dit accumulateur. Les informations qui concernent l’opération sont envoyées vers le registre d’état. Le schéma suivant montre l’UAL ainsi que ses entrées et ses sorties: H. AMIRY 08/11/2022 109 2. Les composants matériels de l'ordinateur: Le processeur Exemple simple d’une UAL: additionneur 1bit Table de vérité: H. AMIRY 08/11/2022 110 2. Les composants matériels de l'ordinateur: Le processeur Exemple simple d’une UAL: demi Additionneur Un additionneur de 4 bit par exemple est un bloc de 4 additionneur de 1 bit dit demi additionneur qui possède 3 entrées Ai,Bi,Ri-1 et 2 sortie Si et Ri (avec i varie de 1 à 4) Avec Si=Ai xor Bi xor Ri-1 et Ri= Ai.Bi + Ri-1(Ai xor Bi) H. AMIRY 08/11/2022 111 2. Les composants matériels de l'ordinateur: Le processeur Exemple simple d’une UAL 1 bit Simple UAL de 1bit qui fait les opérations logiques(ET,OU,NON) et une seul opération arithmétique addition H. AMIRY 08/11/2022 112 2. Les composants matériels de l'ordinateur: Le processeur Exemple d’exécution d'une instruction portant sur un opérande mémoire ➢Une instruction est l'opération élémentaire que le processeur peut accomplir. Les instructions sont stockées dans la mémoire principale, en vue d'être traitée par le processeur. Une instruction est composée de deux champs : • le code opération, représentant l'action que le processeur doit accomplir ; • le code opérande, définissant les paramètres de l'action. Le code opérande dépend de l'opération. Il peut s'agir d'une donnée ou bien d'une adresse mémoire. H. AMIRY 08/11/2022 113 2. Les composants matériels de l'ordinateur: Le processeur Exemple d’exécution d'une instruction portant sur un opérande mémoire 1ère phase : recherche et décodage de l'instruction (cette première phase est valable pour tout type d'instruction). H. AMIRY 08/11/2022 114 2. Les composants matériels de l'ordinateur: Le processeur Exemple d’exécution d'une instruction portant sur un opérande mémoire 2ème phase: exécution de l'instruction H. AMIRY 08/11/2022 115 2. Les composants matériels de l'ordinateur: Les mémoires Présentation ➢ Une mémoire est un circuit à semi-conducteur permettant d’enregistrer, de conserver et de restituer des informations (instructions et variables). ➢L’ordinateur, à travers diverses composants électroniques, est capable de stocker des informations. On pourrait grossièrement comparer ce système au cerveau humain lorsque vous recevez une information (le nom d'une chanson) et bien vous la "stocker" dans votre cerveau. Pour l'ordinateur c'est un peu le même principe, il est capable de se souvenir et de récupérer ces informations et d'en stocker des nouvelles. Cependant, il existe différent type de mémoire sur un ordinateur. Disque Dur H. AMIRY 08/11/2022 116 2. Les composants matériels de l'ordinateur: Les mémoires Présentation ➢ Une mémoire peut être représentée comme une armoire de rangement constituée de différents tiroirs. Chaque tiroir représente alors une case mémoire qui peut contenir un seul élément : des données. Le nombre de cases mémoires pouvant être très élevé, il est alors nécessaire de pouvoir les identifier par un numéro. Ce numéro est appelé adresse. Chaque donnée devient alors accessible grâce à son adresse RAM ➢ Type d’accès au donnée une case mémoire: • accès directe par adresse: on accède directement à n'importe quelle information dont on connaît l'adresse et que le temps mis pour obtenir cette information ne dépend pas de l'adresse. • accès séquentiel :pour accéder à une information sur bande magnétique, il faut dérouler la bande en repérant tous les enregistrements jusqu'à ce que l'on trouve celui que l'on désire. On dit alors que l'accès à l'information est séquentiel. Le temps d'accès est variable selon la position de l'information recherchée. • Disque Dur accès semi-séquentiel :combinaison des accès direct et séquentiel. Pour un disque magnétique par exemple l'accès à la piste est direct, puis l'accès au secteur est séquentiel. H. AMIRY 08/11/2022 117 2. Les composants matériels de l'ordinateur: Les mémoires Caractéristiques ➢ Adresse : valeur numérique désignant un élément physique de mémoire (exemple adresse d'un mot). ➢ Capacité : (taille) nombre d'information que la mémoire peut contenir. ➢ Vitesse : Temps d'accès : temps de l’exécution d'une opération de lecture ou d’écriture: – accès séquentiel : Le plus lent. Pour accéder à une information particulière, on est obligé de parcourir toutes celles qui la précèdent. – accès direct : les informations ont une adresse propre. – accès semi-séquentiel : combinaison des accès direct et séquentiel Cycle mémoire : temps minimal entre 2 accès (plus long que le temps d’accès). Débit : nombre d'informations lues ou écrites par secondes. ➢ Volatilité: caractérisant l'aptitude d'une mémoire à conserver les données lorsqu'elle n'est plus alimentée électriquement. ➢ Type d’opération : Mémoire vive : lecture / écriture Mémoire morte : lecture seulement H. AMIRY 08/11/2022 118 2. Les composants matériels de l'ordinateur: Les mémoires Différents types de mémoire ➢ Une mémoire vive (RAM: Random Access Memory) désigne une mémoire où chaque information stockée peut en tout temps être consultée, ou modifiée. ➢ Une mémoire morte (ROM: Read Only Memory) est une mémoire où les informations ne peuvent pas être modifiées(exp: BIOS). ➢ Une mémoire volatile est une mémoire où les informations sont perdues lors de la mise hors tension de l'appareil. ➢ Une mémoire rémanente ou non volatile est une mémoire où les informations sont conservées même après la mise hors tension de l'appareil. ➢ Une mémoire flash est une mémoire rémanente dont le contenu peut être intégralement effacé en une seule opération. Les premières mémoires de ce type pouvaient être effacées par une exposition à l'ultraviolet. H. AMIRY 08/11/2022 119 2. Les composants matériels de l'ordinateur: Les mémoires Différents types de mémoire: Registre ➢ Plusieurs bistable en parallèle permettent de mémoriser plusieurs bits d'information. Ce sont des registres. Ils sont utilises dans un processeur pour stocker des valeurs lors de l’exécution d'un programme. ➢ Un registre est une élément de mémoire ayant une fonction particulière. Très grande vitesse Très faible capacité (e.g., taille d'un mot mémoire) Volatile Généralement intègres dans le CPU Serve principalement au stockage des opérandes et résultats intermédiaires. Type de registre: visible, invisible Exemples de registre : RA, RM, RI, CO, SP ➢ Taille des registres mot RM et adresse RA: La taille qu'il faut pour stocker un mot mémoire et la taille qu'il faut pour stocker le nombre possible de mot mémoire n bits ➔ 2n possibilités (donc 2n mots) ; x possibilités ➔ log2(x) = log2(2y ) = y bits. Si la mémoire comporte 256 mots de 32 bits, le registre d'adresse doit avoir log2(256) = log2(28) = 8 bits tandis que le registre mot doit avoir 32 bits. H. AMIRY 08/11/2022 120 2. Les composants matériels de l'ordinateur: Les mémoires Différents types de mémoire: Mémoire cache La mémoire cache est utilisée comme mémoire tampon entre le CPU et la mémoire centrale : • Grande vitesse • Faible capacité • Volatile • Intégrée dans le processeur et cadencée a la même fréquence • Accès par le contenu en utilisant l'adresse en mémoire centrale comme clé • Divers niveaux de mémoire cache: Mémoire cache des microprocesseurs L1, L2 et L3 • Généralement de type SRAM, Le bit mémoire d'une RAM statique (SRAM) est composé d'une bascule. Chaque bascule contient entre 4 et 6 transistors. H. AMIRY 08/11/2022 121 2. Les composants matériels de l'ordinateur: Les mémoires Différents types de mémoire: Mémoire centrale La mémoire centrale est l'organe principal de rangement des informations utilisées par le CPU. Elle contient les instructions et les données lors de l’exécution d'un programme : • Vitesse moyenne • Capacité moyenne • Volatile • Mémoire a semi-conducteurs • Utilise des bistables comme point mémoire • Mémoire a accès direct (Random Access Memory (RAM)) • SRAM, DRAM, … H. AMIRY 08/11/2022 122 2. Les composants matériels de l'ordinateur: Les mémoires Différents types de mémoire: Mémoire de masse (stockage) Ce sont des mémoires utilisées pour le stockage permanent de l'information, constituées de périphériques divers (disque dur, supports optiques ou magnétiques, etc.) • Vitesse lente • Grande et très grande capacité • Non volatile • Mémoires a accès séquentiel et semi-séquentiel • Les mémoires de masse sont utilisées pour la sauvegarde et l'archivage de l'information • Mémoire flash est une mémoire de masse à semi-conducteurs réinscriptible de type EEPROM (mémoire morte effaçable électriquement et programmable) H. AMIRY 08/11/2022 123 2. Les composants matériels de l'ordinateur: Les mémoires Les mémoires: Hiérarchie des mémoires ➢ Depuis le début des années 80, une des solutions utilisées pour masquer cette latence est de disposer une mémoire très rapide entre le microprocesseur et la mémoire. Elle est appelée cache mémoire. On compense ainsi la faible vitesse relative de la mémoire en permettant au microprocesseur d’acquérir les données à sa vitesse propre. ➢ Soit la donnée ou l’instruction requise est présente dans le cache et elle est alors envoyée directement au microprocesseur. ➢ Soit la donnée ou l’instruction n’est pas dans le cache, et le contrôleur de cache envoie alors une requête à la mémoire principale. Une fois l’information récupérée, il la renvoie au microprocesseur tout en la stockant dans le cache. H. AMIRY 08/11/2022 124 2. Les composants matériels de l'ordinateur: Les mémoires Les mémoires: Hiérarchie des mémoires H. AMIRY 08/11/2022 125 2. Les composants matériels de l'ordinateur: Les mémoires Les mémoires: Hiérarchie des mémoires H. AMIRY 08/11/2022 126 2. Les composants matériels de l'ordinateur: Les périphériques E/S Dispositifs matériels permettant d’assurer les échanges d’informations en entrée et en sortie entre l’ordinateur et l’extérieur ou de stocker de manière permanente des informations. H. AMIRY 08/11/2022 127