Jimmy Mardell a écrit dans sont 68k guide :
L'instruction LINK crée une stackframe, une mémoire allouée temporairement
sur la pile. L'instruction est souvent utilisée dans les languages de haut
niveau quand il faut allouer de la mémoire pour des procédures comportant
des variables locales. Quand la procédure est désactivée, les variables
siparaissent se qui fait gagner de la mémoire.
LINK à deux opérandes. La première est un registre d'adresse et la seconde
une valeur complémentaire à deux, qui est la taille du frame (souvent négative
sauf si la pile grandie à l'envers). Quand l'instruction est éxécutée, le
registre d'adresse est empilé et le registre A7 nouvellement mis à jour est
copié dans le registre d'adresse. La valeur immédiate est ajoutée au registre
de la pile (A7).
La mémoire locale est accessible avec un décalage négatif depuis le registre
d'adresses. De cette façon vous pouvez utiliser des variables locales sans
déranger d'autres données qui sont empilées ou enlevées de la pile crée et garde
a la portée que vous précisez pendant l'appel de LINK.
L'instruction UNLK enleves le stackframe et restore le pointeur de pile.
METHODE D'ADRESSAGE : Aucune
TAILLE DES DONNEES : -
FLAGS: Unaffected
SYNTAXE : LINK An,#<shifting>
L'utilisation de LINK permet des programmes récurents.
moi ca me parrait bien plus compliqué !