ben en 2 passes c'est simple.
1ere passe tu assembles tout ce que tu peux, et pour les offsets, tu laisses des vides. Chaque fois que tu trouves un label tu le stockes avec son offset dans une table, et dans le code, à la place de l'adresse, tu stockes l'offset dans le fichier source qui pointe vers le texte du label.
2eme passe, tu repasses touts les endroits ou tu dois mettre une adresse, et tu remplaces l'adresse vers le texte par la vraie adresse.
pb: parfois les adresses font 16 bits.
si c'était moi ouais j'aurais deux tables:
table des offsets: nom du label -> adresse de code calculée
table des utilisations: offset de code -> nom du label
chais pas si je suis compréhensible
