Ministère de l’Enseignement Supérieur
Institut Supérieur
Des Etudes Technologiques De Mahdia
Examen : Architecture et Maintenance des SI
Département Informatique Niveau et Filière : 1er Niveau Informatique
Documents et calculatrice: Non autorisés Nombre de pages : 2
Date : juin 2008 Durée : 2 Heures
Questions de cours (5 points) 1. Définir les termes suivants :
a. Mémoire virtuelle b. Mémoire cache
2. Citer les différents composants internes du microprocesseur et expliquer leur rôle.
3. Expliquer brièvement le processus de lecture et d’écriture dans la mémoire.
4. Donner un schéma qui illustre le lien entre le microprocesseur, la mémoire, le bus d’adresse, le bus de données et le décodeur de la mémoire.
Exercice N°1 (6 points)
Soit l’équation en fonction de X, Y, Z et T suivante X=T*1/X2 – (5Y + 2) * X/Z
En utilisant deux registres de travail R0 et R1. Ecrire le programme assembleur correspondant à cette équation :
a- Si l’instruction est à trois adresses b- Si l’instruction est à deux adresses c- Si l’instruction est à une adresse Problème (9 points)
Soit une mémoire centrale de 16 Moctets, la taille du mot mémoire est de 2 octets et le bus d’adresse est de 24 bits. Sachant que la mémoire est adressable par 2 octets :
1- Calculer le nombre de mots mémoire de cette mémoire ?
2- Quelle est en décimale l’adresse minimale et l’adresse maximale de cette mémoire ? 3- Dire si cette mémoire est extensible ou non, si oui de combien de méga.
4- Quelle est la taille du registre CO (compteur ordinal) ?
5- Calculer en octal puis en hexadécimale, l’adresse du 8ème élément du tableau sachant que l’adresse du 1er élément est &00009Ch
6- Soit le programme P en langage assembleur suivant : Programme P :
LOAD A ADD B STORE A LOAD A SUB B STORE B LOAD A SUB B STORE A
1 / 2
عتلا ةرازو ـل
ــ علا مي ــ يلا
ددهعملا يلاددددددددددددددددددددددددعلا
تاساردلل ةيجولونكتلا
ةـيدـهملاب
Voici à titre indicatif le code binaire de certains codes opérations :
ADD: 0011 0011 STORE: 0011 0111 DIV: 0010 1100 LOAD: 0010 0001
MUL: 0010 1101 MOV: 0011 0110
SUB: 0011 1001
Sachant que les données sont rangées dans la mémoire centrale à partir de l’adresse
&00009Ch et que les instructions du programme P sont rangées à partir de l’adresse du 8ème élément du tableau (voir Figure 1) :
Mémoire Centrale
Adresse Commentaire
&00009C Variable A
... Variable B
…….….
Figure 1
6.1- Représenter par un schéma explicatif le programme P en mémoire centrale au format hexadécimal.
6.2- Quelle est la taille du programme P en octets.
6.3- Donner le contenu des variable A et B après exécution du programme P sachant que les valeurs initiales de A et de B en hexadécimal avant exécution de P sont :
(A)=0BAC et (B) = DAFF
6.4- Déduire, que fait se programme ? Proposer un autre programme en assembleur (en utilisant une troisième variable) qui fait le même traitement.
6.5- Sachant que l’instruction en assembleur PUSH(registre) permet d’empiler la valeur de ce registre au sommet de la mémoire de pile et l’instruction POP(registre) permet de dépiler la valeur du sommet de cette même mémoire et la stocker dans ce registre,
En utilisant ces instructions PUSH et POP, écrire le même programme précédant en assembleur.
Bon travail.
2 / 2 0BAC DAFF
………
………
………