ISA et assembleur
Dans les instructions RISC-V, les champs désignant les registres (rd, rs1, rs2) font chacun 5 bits. Quelle en est la raison ?
- AParce que la largeur des registres est de 5 bits
- BParce qu'une instruction peut utiliser jusqu'à 5 registres
- CParce qu'il y a 32 registres entiers, que 2 puissance 5 = 32 combinaisons permettent de désigner
Afficher la réponse et l'explication
Réponse : C. Parce qu'il y a 32 registres entiers, que 2 puissance 5 = 32 combinaisons permettent de désigner
Une instruction de format R se compose, des bits de poids fort aux bits de poids faible, de funct7 (7 bits), rs2 (5), rs1 (5), funct3 (3), rd (5) et opcode (7), soit 32 bits au total. Avec 32 registres, le numéro tient sur 5 bits. Passer à 64 registres exigerait 6 bits par champ, soit 3 bits de plus pour trois champs, réduisant les bits disponibles pour les immédiats et les types d'instructions. Le nombre de registres est lié au format des instructions.