Qu'est-ce que l'interface matériel/logiciel relie ?
Le logiciel au matériel.
Qu'est-ce qui compose l'interface matériel/logiciel ?
Des unités de mémorisation et un jeu d'instructions.
Que doit-on faire aux instructions en langage C pour que la machine les comprenne ?
Les traduire en langage machine binaire.
Comment est représenté un programme C sur disque ou en mémoire ?
En binaire, notamment en code ASCII ou Unicode.
Comment est vue la mémoire en termes d'octets et d'adressage ?
La mémoire est un tableau de Nmax octets adressés de 0 à Nmax−1.
Quelles tailles de données la mémoire peut-elle manipuler ?
La mémoire manipule des octets, demi-mots, mots et longs mots.
Quelle est la taille minimale du mot pour la plupart des processeurs actuels ?
La taille minimale du mot est au moins 32 bits pour la plupart des processeurs.
Quelle différence principale existe entre registres et mémoire ?
Les registres sont rapides et dans le processeur, la mémoire est plus lente.
Combien de fois l'accès aux registres est-il plus rapide que l'accès à la mémoire ?
L’accès aux registres est environ 10 fois plus rapide que l’accès à la mémoire.
Quel rôle joue le cache dans l'accès à la mémoire ?
Le cache accélère l’accès à la mémoire.
Que contient le compteur ordinal (CO, PC ou IP) ?
Il contient l’adresse de l’instruction en cours d’exécution.
Que contient notamment le registre d’état ?
Il contient les codes condition, le mode du processeur et le masque des interruptions.
Que comporte une instruction en plus de l'opération à effectuer ?
La désignation des opérandes sources, du résultat et de l'instruction suivante.
Quelles étapes comprend le cycle Fetch-Decode-Execute du processeur ?
Recherche, décodage, recherche des opérandes, exécution, rangement, passage à l'instruction suivante.
Comment est notée la mémoire principale et sa valeur à l'adresse a ?
La mémoire est notée M et la valeur à l'adresse a est M[a].
De quoi est constituée une instruction au niveau des bits ?
De plusieurs champs de bits déterminés lors du décodage selon le format.
Qu'encode une machine à trois adresses dans une instruction ?
Un code opération, deux opérandes sources et une adresse de résultat.
Quelle instruction suit implicitement une instruction dans une machine à trois adresses ?
Celle qui suit immédiatement en mémoire.
Qu'impose une machine à trois plus une adresses par rapport à l'adresse de l'instruction suivante ?
Elle encode explicitement l'adresse de l'instruction suivante.
Quelle différence y a-t-il entre machine à trois adresses et machine à trois plus une adresses ?
La machine à trois adresses rend l'instruction suivante implicite, la trois plus une l'explicite.
Que fait le résultat dans une machine à deux adresses ?
Il remplace le premier opérande.
Quelle opération réalise l'instruction add a1, a2 dans une machine à deux adresses ?
M[a1] ← M[a1] + M[a2].
Comment réalise-t-on add x, a, b sur une machine à deux adresses ?
On transfère d'abord a vers x avec move, puis on fait add x, b.
Combien d'instructions utilise une machine à trois adresses pour X = (A+B+C)/((D*E)/F−G) ?
Elle utilise 6 instructions.
Qu'utilise une machine à une adresse pour les opérations arithmétiques ?
Un accumulateur implicite.
Que combinent les opérations arithmétiques dans une machine à une adresse ?
L'accumulateur avec une valeur mémoire.
Que font les instructions load et store dans une machine à une adresse ?
Elles assurent les transferts entre accumulateur et mémoire.
Combien de registres possède généralement une machine à registres adressables ?
Généralement 8, 16 ou 32 registres.
Que caractérise une machine à registres adressables ?
Plusieurs registres numérotés jouant le rôle d'accumulateur.
Dans une architecture RISC Load/Store, où s'effectuent les opérations de calcul ?
Entre registres uniquement.
Quelles instructions accèdent à la mémoire dans une approche Load/Store RISC ?
Seuls load et store.
Quelle notation retrouve-t-on dans la machine à zéro adresse ?
La notation polonaise inverse ou écriture post-fixée.
Qu'est-ce que l'adressage immédiat ?
L'opérande est une constante égale à l'adresse primitive AP sans accès mémoire supplémentaire.
Quelle est l'adresse effective en adressage direct mémoire ?
Elle vaut AP.
Que vaut l'opérande en adressage direct mémoire ?
L'opérande vaut M[AP].
Que vaut l'opérande en adressage direct registre ?
L'opérande vaut R[AP].
Quelle est l'adresse effective en adressage indirect mémoire ?
Elle vaut M[AP].
Que vaut l'opérande en adressage indirect mémoire ?
L'opérande vaut M[M[AP]].
Comment s'obtient l'adresse effective en adressage indexé ?
En ajoutant le contenu d'un registre d'index à l'adresse mémoire de base, AE = AM + RX[k].
Quels modes d'auto-indexation permettent d'incrémenter automatiquement le registre d'index ?
Pré-incrémentée, post-incrémentée, pré-décrémentée ou post-décrémentée.
Qu'est-ce qui différencie l'adresse d'un mot en big endian et little endian ?
En big endian, c'est l'adresse de l'octet de poids forts, en little endian celle de l'octet de poids faibles.
Depuis quand les processeurs adressent-ils la mémoire par entités de 8 bits ?
Depuis environ 1980.
Qu'impose l'alignement en mémoire ?
Que les objets soient rangés à des adresses multiples de leur taille.
Que signifie aligner un mot en mémoire ?
Le placer sur une frontière d'adresse multiple de sa taille.
Que peut nécessiter un accès à un objet non aligné ?
Plusieurs accès mémoire.
Que constitue la lecture d'un objet à une adresse non multiple de sa taille ?
Une erreur.
Teste tes connaissances avec un QCM de 21 questions sur Architecture des ordinateurs.
1. Quel rôle l’interface matériel/logiciel joue-t-elle entre un programme et la machine ?
2. Que doit-il arriver à un programme écrit en C pour que le matériel puisse l’exécuter ?
Révisez le cours complet dans la fiche de révision de Architecture des ordinateurs.
Voir la fiche →Importe ton cours et l'IA génère des flashcards en 30 secondes.
Générateur de flashcards