ISA et assembleur

Quelle affirmation concernant les architectures où les instructions arithmétiques peuvent utiliser directement des valeurs en mémoire, comme l'instruction x86 « add eax, [rbx] », est correcte ?

  1. ALe nombre d'instructions peut être réduit, mais une seule instruction comprend une lecture mémoire et une opération
  2. BC'est ce qu'on appelle une architecture load-store
  3. CUne opération utilisant une valeur en mémoire se termine toujours dans le même temps qu'une opération entre registres
Afficher la réponse et l'explication

Réponse : A. Le nombre d'instructions peut être réduit, mais une seule instruction comprend une lecture mémoire et une opération

En x86, une seule instruction peut « lire en mémoire et additionner », alors que le même traitement en RISC-V nécessite deux instructions, lw et add. Le nombre d'instructions et la taille du code tendent à diminuer, mais la quantité de travail varie d'une instruction à l'autre, ce qui complique le traitement en pipeline. Les CPU x86 actuels décomposent donc en interne ces instructions en opérations simples (micro-opérations), comme un chargement et une addition.

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

Autres questions sur ISA et assembleur

  1. Quelle description de la manière dont les CPU x86 hautes performances actuels exécutent en interne les instructions complexes est correcte ?
  2. Quelles instructions l'extension M de RISC-V ajoute-t-elle au jeu d'instructions entières de base ?
  3. Quel est le principal objectif de l'extension C (instructions compressées) de RISC-V ?
  4. En compilant « a * b » (multiplication de deux int) en C pour un CPU RV32I sans extension M, que se passe-t-il généralement ?
  5. Quelle affirmation concernant le delay slot de branchement des anciens MIPS notamment (règle selon laquelle l'instruction suivant immédiatement un branchement est exécutée que le branchement soit pris ou non) est correcte ?