Bonjour à tous.
Je suis inscrit au cours en FOD d'architecture des systèmes d'information au cnam et j'avoue que je ne m'attendais pas à toucher de l'assembleur... Bref
Je colle méchant sur une série d'exercice, et j'aimerai avoir des éclaircissements...
Voici l'énoncé :
Une machine fonctionne avec les caractéristiques suivantes :
- adresse mémoire et mot mémoire ont une taille de 2 octets,
- la mémoire lit ou écrit 1 seul mot à la fois,
- un seul cpu est disponible dans cette machine,
- une instruction machine est toujours constituée :
- d'un code opération (opcode) de 1 octet,
- d'opérandes qui sont dans cet exercice des adresses en mémoire.
Je suppose que le fait qu'un seul CPU soit présent est pour éviter de se prendre trop la tête sur certaines choses...
Voici l'exercice 1
Exemple d'instruction et mnémonique :
mult X, Y, Z # Z = X * Y
add X, Y, Z # Z = X + Y
Soit
mult B, C, A
add D, A, A
1.a/ Donner la taille en octet de ce programme.
Je dirai 14 octets, 1 octet pour chaque opérande (mult et add) et 12 pour les autres mots (sachant que chaque mots est codés sur 2 octets)
1.b/ Donner le nombre d'octets échangés avec la mémoire pour
exécuter ce programme.
J'avoue que je ne sais pas trop, je dirai (un peu au pif) 4
Pourquoi, on multiplie b et c que l'on met dans A (on écrit donc 2 octets) et on additionne D et A que l'on place dans A (donc 2 octets de plus)
Ce qui me perturbe un peu, c'est que l'on ne lit à aucun moment des informations (me semble s'il)...
J'espère qu'une âme charitable passera par là pour confirmer (ou pas) ma pensée...
Partager