next up previous
Next: Examen intra-trimestrielÉté 1996 Up: No Title Previous: No Title

Examen intra-trimestriel, Automne 1996

Examen intra-trimestriel
Inf2170, Groupe 20
Automne 1996
À livres fermés
25 points
Répondre sur le questionnaire
Durée: 3 heures

2 points No 1) Quel est le contenu de d0.l à la fin de l'exécution du bout de code suivant ? (c'est-à-dire à l'étiquette y). Justifiez votre réponse.

     x:    dbra  d0,x
     y:

2 points No 2) Donnez deux instructions pour copier le mot de 16 bits à l'adresse contenu dans le registre a4 vers le mot qui est à l'adresse contenu à l'étiquette adr.

adr    ds.l   1   ; ici est stockée l'adresse du mot à modifier

2 points No 3) Expliquez comment fonctionne l'instruction bne x.

2 points No 4) Donnez une séquence d'instructions pour évaluer l'expression x*y+zx et y sont des mots de 16 bits et y est un octet. Le résultat doit être dans le registre d0.l. (Le code ne détecte pas de débordement.)

2 points No 5) Que fait le code suivant ? (V est une étiquette dans la partie data.)

               lea     V,a0
    iter:      and.w   #$ffff,(a0)+
               bne     iter

4 points No 6) Supposons le registre d0.l contenant la valeur hexadécimale 00ff00ff00 avant l'exécution de chaque instruction. Donnez le contenu de ce registre en hexadécimale après leur exécution.

                
                                   Réponse (hexadécimale)
   i)     and.l  #$ffffffff,d0                 
   ii)    eor.w  #$ffff,d0
   iii)   add.l  #2,d0
   iv)    and.l  #$ffff,d0
   v)     add.w  #$ff00,d0

4 points No 7) Donnez le contenu de la mémoire centrale, octet par octet et en décimale, à partir de l'étiquette x, après l'exécution de la séquence d'instructions suivante. Votre réponse a 10 octets.

         move.l  #1,x
         move.w  #259,y
         add.w   #1,x
         move.b  z,y

         data
x        ds.l    1
y        ds.w    1
z        dc.w    25

7 points No 8) Écrivez une sous-routine qui accepte un vecteur de 200 nombres de 32 bits et qui retourne le nombre de nombres positifs apparaissant dans ce vecteur. Votre sous-routine a au plus 15 instructions. Indiquez le protocole d'appel (l'entrée/sortie).



Mario Latendresse
Wed Jan 15 17:39:58 EST 1997