©pierre marchand, 2001 280 objectifs : À la fin de cette unité, vous connaîtrez le...

31
©Pierre Marchand, 2001 1 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour y arriver, vous devrez atteindre les objectifs suivants : -décrire les différentes composantes d'une unité centrale de traitement et leur rôle : unité de commande, séquenceur, unité arithmétique et logique, compteur ordinal, registre d’instruction, horloge; -décrire la structure d'une instruction de niveau machine; Unité 9: Unité centrale de traitement

Upload: solange-bob

Post on 03-Apr-2015

109 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 1

Objectifs :À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur.

Pour y arriver, vous devrez atteindre les objectifs suivants :

- décrire les différentes composantes d'une unité centrale de traitement et leur rôle : unité de commande, séquenceur, unité arithmétique et logique, compteur ordinal, registre d’instruction, horloge;

- décrire la structure d'une instruction de niveau machine;

Unité 9: Unité centrale de traitement

Page 2: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 2

8.1 Architecture

L’unité centrale de traitement (UCT) ou processeur central (CPU) est l’élément moteur de l’ordinateur qui interprète et exécute les instructions du programme situées en mémoire centrale.

L’ensemble CPU + mémoire centrale constitue l’Unité Centrale.

L’UCT est composé de l’Unité arithmétique et logique (UAL) et de l’Unité de commande ou de contrôle.

L’UAL effectue les opérations arithmétiques et logiques.

L’Unité de commande dirige le fonctionnement de toutes les autres unités : UAL, mémoire, entrées / sorties, etc., en leur fournissant les signaux de cadence et de commande.

Unité 9: Unité centrale de traitement

Page 3: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 3

8.1 Architecture

Les différentes unités sont interconnectées par des systèmes de câblage transportant des signaux électriques. Pour éviter de relier chaque unité à chacune des autres, on fait usage de lignes exploitées en commun. On appelle bus ces ensembles de lignes.

On peut distinguer trois bus différents :

• Bus d’adresses, par exemple, A0 à A31

• Bus de données, par exemple, D0 à D31

• Bus de contrôle, par exemple, R/W,

Un bus peut être utilisé par toutes les unités qui y sont connectées, mais jamais par plus de deux unités en même temps. Ceci pose des problèmes d’attente et d’arbitrage (contention) lors des requêtes d’utilisation.

Unité 9: Unité centrale de traitement

Page 4: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 4

8.1 Architecture

Unité 9: Unité centrale de traitement

Bus de cache Bus local Bus mémoire

CPUCacheniveau 2

PontPCI

Mémoirecentrale

Bus PCI

DisqueIDE

Adaptateurgraphique

Moni-teur

SCSI USB

Souris Cla-vier

ModemCartede son

Impri-mante

Bus ISA

PontISA

Page 5: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 5

8.2 Unité de commande

Cette unité comporte

• Le compteur ordinal CO

• Le registre d’instruction RI

• Le décodeur de code opération

• Le séquenceur

• L’horloge

RA = registre d ’adresses

RM = registre mot

Unité 9: Unité centrale de traitement

Mémoire

Bus de données

Bus d’adresses

RMRA

CO

Horloge Séquenceur

RI

Décodeur

R/W

Page 6: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 6

8.2 Unité de commande

Les impulsions générés par l’horloge à intervalles réguliers détermi-nent le temps de cycle de la machine.

L’exécution d’une instruction prend généralement plus d’un cycle, car une instruction comporte généralement :

• le temps de chargement de l’instruction (fetch),

• le temps de décodage de l’instruction,

• le temps de chargement des opérandes et de calcul de leur adresse effective,

• le temps d’exécution proprement dit.

• le temps d’écriture du résultat (writeback).

En utilisant un pipeline, il est quand même possible d’émettre une instruction par cycle si toutes ces opérations peuvent être effectuées en parallèle.

Unité 9: Unité centrale de traitement

Page 7: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 7

8.2 Unité de commande

Étapes d’un cycle de recherche d’instruction (fetch) :

• Transfert de l’adresse de la nouvelle instruction de CO à RA.

La génération d’une impulsion de lecture par l’unité de commande provoque le transfert de l’instruction cherchée vers RM qui fonctionne comme registre tampon pour tous les échanges avec la mémoire.

• Transfert de l’instruction dans RI.

Instruction = code opération + adresse opérande

L’adressage de l’opérande peut demander le calcul de l’adresse effective, ce qui consomme des cycles machine.

Pendant que l’adresse de l’opérande est envoyée à RA, le code opération est transmis au décodeur qui détermine le type d’opération demandée et le transmet au séquenceur.

• Le CO est incrémenté en vue du cycle de recherche suivant.

Unité 9: Unité centrale de traitement

Page 8: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 8

8.3 Synchronisation des opérations

Les signaux périodiques générés par l’horloge définissent le cycle de base ou cycle machine (clock cycle).

Le cycle mémoire est habituellement beaucoup plus long que le cycle machine, surtout s’il doit accéder à la mémoire centrale (échec du cache interne L1 + échec du cache externe L2)

Par exemple, dans un processeur dit à 500 MHz, le cycle machine est de 2 ns.

La fréquence du bus PCI pouvant atteindre 133 MHz, le cycle de bus a une durée de 7,5 ns. Ceci est donc le temps minimum pour un accès en mémoire centrale.

Toutefois, il faut habituellement plusieurs mots mémoire pour remplir une rangée de cache, de sorte qu’un accès en mémoire centrale représente plusieurs cycles de bus.

Unité 9: Unité centrale de traitement

Page 9: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 9

8.4 SéquenceurLe séquenceur est un automate qui a la responsabilité de générer les signaux de commande nécessaires pour actionner et contrôler les unités participant à l’exécution d’une instruction donnée.

Cette fonction peut être réalisée de deux façons : séquenceur câblé ou séquenceur microprogrammé.

Un séquenceur câblé est un circuit séquentiel complexe qui fait corres-pondre à chaque instruction un sous-circuit capable de commander son déroulement.

On peut obtenir le même résultat avec une suite de micro-instructions stockées dans une mémoire de microprogrammation. Ce micro-programme est capable de générer une suite de signaux de commande équivalent à celle qui serait produite par un séquenceur câblé.

Unité 9: Unité centrale de traitement

Page 10: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 10

8.4 Séquenceur

Unité 9: Unité centrale de traitement

RI

code op adresse

décodeur

séquenceur câblé

UAL

mémoire demicroprogrammation

commandes commandes

Page 11: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 11

8.4 SéquenceurLe microprogramme (firmware) peut être stocké dans une ROM ou une EPROM.

Cette solution est plus fexible que la logique câblée. Le prix à payer est une vitesse inférieure.

Unité 9: Unité centrale de traitement

RI

code op adresse

mappingROM

compteur ordinal demicroprogrammation

mémoire demicroprogrammation

micro-instruction 0 1 0 0 0 001 1 1

signaux de commande

Page 12: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 12

8.4 Séquenceur

MAR = RAMDR = RMPC = COMPC = CO du micro-programme.MIR = registre demicro-instruction (36bits).MBR = RI

MAR

MDR

PC

SP

ALU

Décaleur

Décodeur4 vers 16

3

MPC

Mémoire de512 x 36 bits

pour lemicroprogramme

MBR

bus B

N

Activersortieversbus B

Écrirebus Cdansregistre

bus C

8

32

Z

6

Signaux de contrôle de la mémoire (rd, wr, fetch)

9

8

JMPC

Addr J

MIR

ALU C M B

4

contrôleALU

bascules de 1 bit

2

2

JN/JZ

Mémoire centrale

MSB

Page 13: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 13

8.5 Niveaux de programmation

Unité 9: Unité centrale de traitement

niveau descommandesélectroniques

micro-instructions

instructions machine

niveau assembleur

langages évolués

Page 14: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 14

8.5 Niveaux de programmationLe programmeur a le choix entre plusieurs langages de program-mation: Fortran, Pascal, C, Ada, C++, Java, Assembleur.

L’ordinateur par contre ne comprend que son propre langage, le langage machine, avec son jeu d’instructions de niveau machine.

Il faut donc traduire le code source écrit dans l’un des langages mentionnés en code objet ou code machine. Cette traduction s’effectue à l’aide de programmes traducteurs tel que les assembleurs et les compilateurs.

L’assembleur est un langage dans lequel chaque instruction corres-pond à une instruction machine.

Unité 9: Unité centrale de traitement

Page 15: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 15

8.5 Niveaux de programmationUn compilateur convertit la totalité du programme source en langage machine et place le code objet dans un fichier objet. L’ordinateur peut ensuite exécuter ce code objet. Le code objet ne peut être exécuté que par un ordinateur ayant le même langage machine.

Un interprète convertit le programme source en code objet instruction par instruction, et l’exécute au fur et à mesure. Le traducteur doit donc se trouver dans la machine au moment de l’exécution, ce qui n’est pas nécessaire dans le cas de code compilé.

Unité 9: Unité centrale de traitement

Page 16: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 16

8.5 Niveaux de programmationPour rendre le code portable, on a adopté une solution intermédiaire dans le cas du langage Java. Le code source est converti en byte-codes, langage compilé indépendant de la plate-forme. Ces bytecodes sont ensuite interprétés par la machine cible au moyen d’un interpète appelé machine virtuelle. Le même code compilé peut donc être exécuté sur toute plate-forme pour laquelle on dispose d’une machine virtuelle Java (JVM).

Pour rendre ce processus plus performant, certaines machines virtuel-les appelées Just-In-Time Compilers (JIT) compilent les bytecodes en langage machine juste avant l’exécution. On atteint ainsi des perfor-mances comparables à celles d’un langage compilé.

Unité 9: Unité centrale de traitement

Page 17: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 17

8.6 Structure des instructions niveau machineUne instruction machine doit fournir au CPU toutes les informations pour l’exécution d’une opération élémentaire.

Elle doit donc contenir un code opération qui est essentiel pour spécifier le type d’action désiré.

Elle doit en outre contenir une ou plusieurs adresses selon le cas : l’adresse de (ou des) opérande(s), l’adresse où envoyer le résultat et l’adresse où chercher l’instruction suivante.

Par conséquent, le format d’une instruction machine comporte un champ code opération et jusqu’à quatre champs d’adresse. On parle d’instructions à n adresses. On dit d’une machine qu’elle est à n adresses si la plupart de ses instructions sont à n adresses.

Unité 9: Unité centrale de traitement

Page 18: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 18

8.6 Structure des instructions niveau machineAinsi, le MC6809 est une machine à une adresse, le Pentium et le MC68000 sont des machines à 2 adresses.

Le PowerPC est une machine à 3 adresses pour les opérations entre registres, à 2 adresses pour les accès mémoire.

Exemples :

LDA 1000 instruction à 1 adresse (6809)

mov ax,[esi+4] instruction à 2 adresses (Pentium)

add eax,ebx instruction à 2 adresses (Pentium)

move d4,8(a6) instruction à 2 adresses (MC68000)

move d3,d4 instruction à 2 adresses (MC68000)

ld r0,4(r1) instruction à 2 adresses (PowerPC)

add r3,r2,r1 instruction à 3 adresses (PowerPC)

Unité 9: Unité centrale de traitement

Page 19: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 19

8.6 Structure des instructions niveau machineIl existe aussi des machines à zéro adresse. Ce sont des machines à pile, analogues aux calculatrice à notation polonaise inverse (RPN). Elle prennent tous ses opérandes sur la pile et inscrivent le résultat au sommet de la pile.

Unité 9: Unité centrale de traitement

Page 20: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 20

8.7 Jeu d’instructionsChaque machine a son jeu d’instructions de base. Le nombre d’instructions varie de 50 à plus de 300.

Il y a deux écoles de pensée. Les partisans de l’architecture RISC (Reduced Instruction Set Computer) préconisent un petit nombre d’instructions élémentaires dans un format fixe, faciles à réaliser dans le matériel et d’exécution rapide (1 instruction par cycle machine). Cela nécessite un séquenceur câblé et un compilateur capable d’exploiter les caractéristiques de la machine (par exemple, utiliser les registres pour minimiser les accès à la mémoire).

D’autres préfèrent les architectures CISC (Complex Instruction Set Computer) basées sur des jeux d’instructions très riches et de taille variable, et offrant des instruction composées (nécessitant plusieurs voire même parfois des centaines de cycles machine).

Unité 9: Unité centrale de traitement

Page 21: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 21

8.7 Jeu d’instructionsLes instructions qu’on trouve dans les répertoires de toutes les machines peuvent être classées en six groupes :

• Transfert de données (Load, Move, Store).

• Opérations arithmétiques (les quatre opérations sur des entiers et sur des nombres en virgule flottante de simple ou double précision).

• Opérations logiques (AND, OR, NOT, XOR, etc).

• Contrôles de séquence (branchements conditionnels et incondition-nels, boucles, appels de procédures, etc.).

• Entrée / sortie (Read, Write).

• Manipulations diverses (décalages, conversions de format, incré-mentation de registres, etc.).

Unité 9: Unité centrale de traitement

Page 22: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 22

8.8 Registres du CPUCompteur ordinal (CO)

Le registre CO contient l’adresse mémoire de la prochaine instruction à exécuter. Il est automatiquement incrémenté après chaque utilisation. Le programme est donc exécuté en séquence à moins qu’il ne contienne une instruction qui modifie la séquence, par exemple un saut ou un branchement. Dans ce cas, la nouvelle adresse remplacera le contenu du CO. Ce changement sera effectué pendant le cycle d’exécution, après le décodage du code opération, mais avant le transfert du contenu du CO incrémenté vers le RA.

Registre instruction (RI)

Quand une instruction est chargée à partir de la mémoire, elle est placée dans RI. Les bits correspondant au code opération sont envoyés soit au décodeur, soit à la mémoire de microprogrammation.

Unité 9: Unité centrale de traitement

Page 23: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 23

8.8 Registres du CPUAccumulateur (ACC)

Dans le plupart des opérations arithmétiques, l’accumulateur contient l’un des opérandes avant l’exécution, et le résultat après. Il peut servir de tampon dans les opérations d’entrée / sortie. Il a généralement la même taille que le mot mémoire, mais, dans la plupart des machines, il possède une extension (registre Q) qui permet de doubler sa taille. Ceci permet de stocker le résultat d’une multiplication dans ACC et Q, ou  d’y placer le quotient et le reste d’une division.

Dans le Pentium, l’accumulateur est EAX et l’extension Q est EDX.

Unité 9: Unité centrale de traitement

Page 24: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 24

8.8 Registres du CPURegistres généraux

Les registre généraux (general purpose registers) servent à enregistrer les informations fréquemment utilisées pendant le programme, ou des résultats intermédiaires. Cela évite des accès à la mémoire, accélérant ainsi l’exécution du programme. La plupart des instructions sont disponibles pour les registres généraux.

Dans le Pentium, ce sont EBX et ECX, mais EAX et EDX peuvent aussi être considérés des registres généraux.

Unité 9: Unité centrale de traitement

Page 25: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 25

8.8 Registres du CPURegistres d’indice (XR)

Ces registres d’indice ou d’index peuvent être utilisée comme des registres généraux. Mais, il ont en plus une fonction spéciale pour manipuler les tableaux de données avec l’adressage indexé. Dans un tel mode d’adressage, l’adresse de l’opérande est obtenue en additionnant la partie adresse de l’instruction au contenu du registre d’index spécifié.

Dans le Pentium, tous les registres généraux peuvent être utilisés comme indice.

Unité 9: Unité centrale de traitement

Page 26: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 26

8.8 Registres du CPURegistre de base

Utilisés pour calculer des adresses effectives, les registres de base sont conçus pour contenir une adresse de référence. Pour obtenir l’adresse effective, il faut y ajouter le contenu du champ adresse de l’instruction

Chez Intel, c’était originalement BP et SP, mais dans le Pentium, EBP, ESI, EDI, ESP et tous les registres généraux peuvent servir de registre de base.

Unité 9: Unité centrale de traitement

Page 27: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 27

8.8 Registres du CPURegistre d’état (PSW)

Le registre d’état, aussi appelé registre de codes condition (Program status word ou Condition Code Register) contient différents bits appelés drapeaux (flags) indiquant le résultat d’une instruction. Les bits les plus courants sont Z, qui vaut 1 si le résultat de l’instruction est 0, C qui vaut 1 s’il y a une retenue, N ou S qui vaut 1 si le résultat de l’instruction est négatif, et V ou OF, qui vaut 1 s’il y a eu débordement de capacité.

Dans le Pentium, ce registre s’appelle EFLAGS.

Unité 9: Unité centrale de traitement

Page 28: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 28

8.8 Registres du CPUPointeur de pile (SP)

Ce registre pointe au sommet d’une structure de pile implantée en mémoire centrale. Le fonctionnement d’une pile suit la règle Last-In-First-Out (LIFO).

Chaque fois qu’un mot doit être enregistré dans la pile, il est placé à l’adresse qui précède celle du mot enregistré précédemment.

Les information enregistrées dans la pile sont lues dans l’ordre inverse de celui dans lequel elles ont été enregistrées.

Une fois qu’un mot est lu, son emplacement devient disponible pour une nouvelle information.

Unité 9: Unité centrale de traitement

Page 29: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 29

8.9 Adressage des opérandesLes modes d’adressage les plus importants sont :

• direct ou absolu : Le champ adresse contient l’adresse effective.

• indirect : Le champ adresse contient l’adresse où se trouve l’adresse effective.

• immédiat : Le champ adresse de l’instruction contient l’opérande.

• implicite : Le code opération implique où se trouve l’opérande.

• indexé : Adresse effective = contenu du champ adresse + contenu du registre index.

• basé : Adresse effective = contenu du registre de base + contenu du champ adresse.

• relatif : Comme l’adressage basé, mais c’est CO qui sert de registre de base.

Unité 9: Unité centrale de traitement

Page 30: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 30

8.10 Taille de l’adresse et taille de la mémoireSoit ADR le nombre de bits dans le champ adresse d’une instruction.

Si ADR = n, la mémoire physique est accessible dans sa totalité. Tous les modes d’adressage proposés par le fabricant peuvent être utilisées. C’est le cas du Pentium, du MC68000, du PowerPC.

Si ADR < n, ADR ne suffit pas pour adresser toute la mémoire. On peut utiliser l’adressage basé, si le registre de base a une taille suffisante (n bits). Il suffit de diviser la mémoire en blocs de taille telle que ADR puisse adresser totalement un bloc. On utilise alors le champ adresse pour indiquer le déplacement à l’intérieur du bloc.

C’était le cas du 8088/8086 et du 80186. L’adresse de 16 bits pouvait adresser 64 Ko, mais les registres de segment permettaient d’atteindre 1 Mo.

Unité 9: Unité centrale de traitement

Page 31: ©Pierre Marchand, 2001 280 Objectifs : À la fin de cette unité, vous connaîtrez le fonctionnement de l'unité centrale de traitement d'un ordinateur. Pour

©Pierre Marchand, 2001 31

8.10 Taille de l’adresse et taille de la mémoireSi ADR > n, ADR peut adresser des positions de mémoire qui n’existent pas en mémoire physique. On profite de cette possibilité pour réaliser la mémoire virtuelle, dans laquelle la mémoire physique peut être considérée comme un cache pour la mémoire adressable totale qui est alors placée sur disque. Dans ce cas, l’espace mémoire est divisé en pages de quelques Ko au lieu de blocs de quelques octets.

Unité 9: Unité centrale de traitement