ISA et assembleur
Par combien le résultat t0 de l'instruction RISC-V « slli t0, a0, 3 » multiplie-t-il la valeur de a0 (sans tenir compte du débordement) ?
- A8
- B3
- C6
Afficher la réponse et l'explication
Réponse : A. 8
slli (shift left logical immediate) décale la valeur du registre vers la gauche du nombre de bits spécifié et remplit les bits de poids faible libérés par des 0. En binaire, un décalage d'un bit vers la gauche double la valeur ; un décalage de 3 bits la multiplie donc par 2 puissance 3 = 8. Étant souvent plus rapide qu'une instruction de multiplication, le compilateur remplace les multiplications par des puissances de 2 par des décalages. On l'utilise aussi souvent pour calculer l'adresse des éléments d'un tableau.