ISA et assembleur
En RISC-V (RV32I), après exécution de « addi t0, zero, -1 », quelle valeur de 32 bits contient t0 ?
- A0xFFFFFFFF
- B0x00000FFF
- C0x80000001
Afficher la réponse et l'explication
Réponse : A. 0xFFFFFFFF
L'immédiat -1 s'écrit 0xFFF sur 12 bits. addi l'étend en signe à 32 bits, c'est-à-dire recopie le bit de poids fort 1 dans tous les bits supérieurs, ce qui donne 0xFFFFFFFF, soit -1 en complément à deux. Grâce à l'extension de signe, il suffit d'additionner un immédiat négatif pour soustraire. Si l'on remplissait les bits supérieurs de zéros, on obtiendrait 0x00000FFF = 4095, ce qui change le sens.