Bonjour tout le monde
Je suis un nouveau en assembleur , et je travaille sur l'OS Linux, hier, j'ai tourné mon premier programme "hello world", et voici la partie du code qui m’intéresse :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
movl $4, %eax
movl $1, %ebx
movl $message, %ecx
movl $11; %edx
int $0x80
On dit que l'instruction $0x80 est un appel au système, mais je n'ai pas bien saisi comment cette instruction fonctionne, est ce que c'est elle qui est le responsable de l'affichage de mon message : "hello world" sur l'écran ? Si oui, comment peut-elle le faire ?
le message contient 11 caractères, est ce que cette instruction ( je parle toujours de $0x80) marche comme une boucle pour lire le message caractère par caractère ?
cette question vient du remarque que je fais à propos des quatre lignes précédentes, j'explique :
l'instruction qui nous permet de lire une donnée s'est fixé par les deux registres "eax" et "ebx", mais celle-ci s'est fixé une fois pour toute, même si l'instruction de la ligne 4 place juste le premier octet du message "hello world" dans le registre "ecx", je pense que nous avons besoin de faire une boucle pour lire tout le contenu du message "hello world", j'espère que mon problème est bien claire pour tout le monde.
une aide s'il vous plaît
merci d'avance.