Bonjour,
je suis étudiant en informatique a bruxelles et il me reste 1 dernier TP ou je coince en Assembleur , tp sur les appels systemes.
voila je ne comprends pas bien le fonctionnement des appels systeme en assembleur, et plus particulierement les arguments a donné a l appel.
et aussi je suis un peu perdu avec les handle , 0=clavier 1= ecran 2= fichier ?
j essaye de lire un fichier situé dans le répertoire '/home/martin/g32537/Micro/TD6/ex6.asm'
Ensuite de recopier les 100 premiers caractere dans une variable message.
pour finir , recopier ce qu il y a dans la variable message dans un nouveau fichier ( création necessaire ) dont le chemin serait 'home/martin/g32537/Micro/TD7/ex66.txt' dans une variable sortant
voila mon bout de code , avec en commentaire les endroits où je coince (plus ou moins tout le code Embarassed )
je vous remercie d'avance pour vos réponses ,Code HTML:;TD7 ouverture , lecture, fermeture et reecriture dans un nouveau fichier global main section .data fichier dd 'home/martin/g32537/micro/TD6/ex6.asm' ; fichier a lire sortant dd 'home/martin/g32537/Micro/TD7/ex.txt' ; fichier a ecrire section .bss message REST 1 ; reservation d une variable pour stocker le contenu de 'fichier' section .text main : mov eax,5 ; appel systeme open mov ebx,[fichier] ; je pense avoir compris que je dois ; mettre dans ebx, le chemin du fichier a lire ? mov ecx,0 ; lecture seule int 0x80 ; je coince deja ici, je pense ne pas avoir compris le fonctionnement ; de read , ainsi que write (plus loin) mov eax,3 ; appels systeme read mov ebx,2 ; handle de fichier ? mov ecx,message ; on stocke dans la variable message ; le contenu du fichier ? mov edx,100 ; 100 premier octet a lire int 0x80 mov eax,6 ; fermeture du fichier mov ebx,[fichier] int 0x80 ; je ne suis pas sur que j utilise bien la fonction open ; pour ouvrir et creer un fichier en meme temps mov eax,5 ; ouverture et creation d un fichier nomme ex6.asm mov ebx,[sortant] ; dans le chemin specifie mov ecx,700q ; creation de fichier ??? int 0x80 mov eax,4 ; ecriture dans le fichier (je ne pense pas que ce soit bon) mov eax,2 ; handle de fichier ? mov ebx,[message] mov ecx,100 int 0x80 mov eax,6 ; fermeture du fichier cree mov ebx,[sortant] int 0x80 mov eax,1 mov ebx,0 int 0x80
Martin
-----