ISA et assembleur

Quelle caractéristique d'une architecture load-store comme RISC-V est correcte ?

  1. ALes instructions arithmétiques comme l'addition lisent directement les valeurs en mémoire, calculent et réécrivent le résultat en mémoire
  2. BSeules les instructions load et store peuvent lire et écrire la mémoire ; les opérations se font entre registres
  3. CIl n'y a pas de registres ; toutes les valeurs sont empilées sur une pile pour le calcul
Afficher la réponse et l'explication

Réponse : B. Seules les instructions load et store peuvent lire et écrire la mémoire ; les opérations se font entre registres

Dans une architecture load-store, une valeur en mémoire est d'abord chargée dans un registre par une instruction load, les opérations comme l'addition ou la comparaison se font entre registres, et le résultat est réécrit en mémoire par une instruction store si nécessaire. Les instructions arithmétiques ne manipulant pas directement la mémoire, le format des instructions est homogène et le traitement en pipeline plus facile. Cela contraste avec les architectures où les instructions arithmétiques peuvent lire la mémoire, comme « add eax, [mem] » en x86.

S'entraîner sur ce thème Retour au thème

Autres questions sur ISA et assembleur

  1. Quelle propriété du registre x0 (zero) de RISC-V est correcte ?
  2. Quels sont les registres entiers à usage général de RV32I (jeu d'instructions entières de base 32 bits) de RISC-V ?
  3. Quelle relation entre langage assembleur et langage machine est correcte ?
  4. Par quelle instruction l'assembleur remplace-t-il réellement la pseudo-instruction RISC-V « nop » (ne rien faire) ?
  5. Quelle est la différence correcte entre les instructions RISC-V « add » et « addi » ?