c'est le compilateur qui gère les adresses dans une table, ça fait comme une espèce de base de donnée d'adresses.
bien sur tout ça est en langage machine
par exemple quand tu écrit quelque chose du style
int a = 1;
int b = 2;
ça donne quelque chose du genre
movl $1, edx
mavl $2, edx + 8
ce qui veut dire qu'il range la valeur 1 dans le registre edx, puis qu'il range la valeur 2 dans edx+8 (fonctionne comme un pointeur)
bon c'est une caricature mais ça devrait t'aider à comprendre