Je ne sais pas si tu programmes déjà dans des langages de haut niveau, mais il n'y a pas vraiment de notion de variable en ASM.
Par exemple, en C, tu déclares une variable comme étant quelque chose portant un nom et pouvant contenir des informations.
En ASM, comme tu es au plus bas niveau, ces notions abstraites n'existent pas. Tu manipules la mémoire (RAM), tu peux la voir comme un énorme tableau d'octets. À toi ensuite de manipuler ces octets comme tu en as envie : tu peux utiliser par exemple la case d'adresse
a de la RAM pour stocker l'abscisse d'un sprite, et la case d'adresse
b pour stocker son ordonnée.
Lorsque tu écris un programme en ASM, pour te simplifier la vie et que tu n'aies pas à écrire tout plein de chiffres partout pour adresser tes variables, en général le programme qui se charge d'assembler ton code source te permet d'associer une étiquette (un label) à un emplacement mémoire. Si dans la suite de ton programme tu fais référence à cette étiquette, elle sera remplacée par la valeur numérique de l'adresse à laquelle elle fait effectivement référence.
Consulte la documentation du programme d'assemblage que tu utilises, il devrait indiquer la syntaxe que tu peux utiliser.
Cela dit, la plupart des processeurs ont une syntaxe officielle qui est en général celle qu'utilisent les logiciels d'assemblage.
Par exemple, en 68000, pour déclarer un label, on inscrit son nom en face de l'endroit où on veut le placer suivi du caractère ':'.
label:
dc.b 0,5,3
Si ensuite je fais référence au label "label" plus tard dans le programme, je pourrai manipuler les données que j'ai déclarées à côté :
move.b label,d0 ; dépose le contenu de la case mémoire d'adresse "label" dans le reegistre d0, ici 0
move.b label+1,d0 ; dépose le contenu de la case mémoire d'adresse "label+1" dans d0, ici 5
Sinon, regarde les sources de programmes existant, tu verras quelle syntaxe tu dois adopter
