Qu'est-ce que Fonction feuille ?

Fonction qui n'appelle aucune autre fonction. L'adresse de retour n'étant pas écrasée, il n'est pas nécessaire de la sauvegarder, et l'on peut souvent se passer de cadre de pile.

Nom japonais: 葉関数

« Fonction feuille » apparaît dans 1 questions d'entraînement réparties sur 1 thèmes, dont ISA et assembleur.

Domaine: ISA et assembleur

S'entraîner : questions sur Fonction feuille

Dans une fonction qui n'appelle aucune autre fonction (fonction feuille), il n'est souvent pas nécessaire de sauvegarder ra sur la pile. Quelle en est la raison ?

  1. AParce qu'une fonction feuille n'utilise pas l'instruction ret
  2. BParce que le CPU empile automatiquement l'adresse de retour d'une fonction feuille
  3. CParce qu'elle n'appelle aucune autre fonction, ra n'est pas écrasé et l'adresse de retour reste intacte
Afficher la réponse et l'explication

Réponse : C. Parce qu'elle n'appelle aucune autre fonction, ra n'est pas écrasé et l'adresse de retour reste intacte

ra étant écrasé à chaque jal qui appelle une fonction, une fonction qui en appelle d'autres doit d'abord sauvegarder sa propre adresse de retour sur la pile. Une fonction feuille n'utilisant pas jal, ra n'est pas altéré et elle peut exécuter ret sans sauvegarde. Si elle n'utilise pas non plus de registres sauvegardés par l'appelé, elle n'a même pas besoin de créer de cadre de pile. L'instruction call de x86 empilant toujours l'adresse de retour, c'est une différence avec RISC-V.

« Fonction feuille » dans les explications

Questions mentionnant « Fonction feuille » (1)

  1. Dans une fonction qui n'appelle aucune autre fonction (fonction feuille), il n'est souvent pas nécessaire de sauvegarder ra sur la pile. Quelle en est la raison ?

Termes associés

Adresse de retour Cadre de pile (stack frame) ABI (interface binaire d'application) Adressage relatif au PC Architecture load-store Assembleur Codes de condition Convention d'appel Créneau de délai de branchement (delay slot) Extension de signe

Retour au glossaire