Qu'est-ce que Adressage relatif au PC ?

Méthode qui exprime l'adresse de destination d'un branchement ou d'une donnée par la distance depuis l'adresse de l'instruction courante (PC). Cette distance ne change pas quel que soit l'emplacement du programme, d'où son rôle de base pour le code indépendant de la position.

Nom japonais: PC相対アドレッシング

« Adressage relatif au PC » apparaît dans 2 questions d'entraînement réparties sur 1 thèmes, dont ISA et assembleur.

Domaine: ISA et assembleur

S'entraîner : questions sur Adressage relatif au PC

Quel est l'avantage d'utiliser l'adressage relatif au PC pour les branchements et sauts ?

  1. AQuelle que soit la distance de la cible, une seule instruction suffit toujours à l'atteindre
  2. BLa prédiction de branchement devient inutile et le pipeline ne s'arrête plus
  3. CLe programme peut être chargé à n'importe quelle adresse mémoire et s'exécuter sans modification des instructions
Afficher la réponse et l'explication

Réponse : C. Le programme peut être chargé à n'importe quelle adresse mémoire et s'exécuter sans modification des instructions

Un branchement relatif au PC représente la destination par une distance « à tant d'octets d'ici » ; si l'on décale tout le programme à une autre adresse, la distance reste la même et le programme fonctionne tel quel. C'est le fondement du code indépendant de la position (PIC) utilisé notamment pour les bibliothèques partagées. Le nombre de bits de la distance étant limité, on combine auipc et jalr pour les sauts lointains. Le besoin de prédiction de branchement est sans rapport avec le mode de représentation.

« Adressage relatif au PC » dans les explications

Questions mentionnant « Adressage relatif au PC » (2)

  1. Quel est l'avantage d'utiliser l'adressage relatif au PC pour les branchements et sauts ?
  2. Dans l'instruction de branchement conditionnel RISC-V « beq a0, a1, label », comment l'adresse de la cible label est-elle représentée ?

Termes associés

Code indépendant de la position Prédiction de branchement ABI (interface binaire d'application) Adresse de retour Architecture load-store Assembleur Cadre de pile (stack frame) Codes de condition Convention d'appel Créneau de délai de branchement (delay slot)

Retour au glossaire