[LMI] Le registre ESI [RESOLU]

Voir le sujet précédent Voir le sujet suivant Aller en bas

[LMI] Le registre ESI [RESOLU]

Message  Wilbur le Sam 03 Mai 2008, 13:31

Bonjour,

Un ami et aurions voulu avoir de plus amples informations sur ce fameux registre...

Certains registres d'adresse jouent également un rôle spécial à l'occasion. Ainsi, le
registre ESI sert d'adresse source pour les opérations de chaîne, tandis que le registre EDI
sert d'adresse destination. On peut utiliser ESI et EDI comme registres généraux quand
on ne les utilise pas pour des opérations de chaîne.
=>source

Ceci est valable pour de l'assembler sous DOS, mais quid de l'assembler sous Linux?
Peut-on par exemple, le considérer comme un vecteur,et y stocker une chaine?
Comme ceci:

Code:
[...]

mov esi, 0    ;??

boucle:

mov eax,3
mov ebx,[fileDescriptor]
mov ecx,esi
mov edx,1
int 80h

cmp [esi],10
je fin
inc esi
jmp boucle
fin:
[...]

Après quelques tests, il me semble que ce ne soit pas correct. Néanmoins, j'aimerais avoir l'avis d'un professeur, pour pouvoir bien tirer ça au clair.

Merci d'avance.

Au plaisir.


Dernière édition par Wilbur le Dim 04 Mai 2008, 15:39, édité 1 fois

Wilbur

Nombre de messages : 46
Age : 27
Prénom : Romain
Statut : Etudiant 2ème Réseaux
Date d'inscription : 20/02/2008

Revenir en haut Aller en bas

Re: [LMI] Le registre ESI [RESOLU]

Message  Jaroslav le Sam 03 Mai 2008, 20:32

Il semblerait qu'a certaines valeurs de ESI la lecture ne se fasse plus dans le fichier...
J'ai eu ce probleme aussi

Jaroslav

Nombre de messages : 7
Age : 30
Prénom : Bruxelles
Date d'inscription : 07/09/2007

Revenir en haut Aller en bas

Re: [LMI] Le registre ESI [RESOLU]

Message  pbt le Dim 04 Mai 2008, 08:20

Tu utilises esi comme pointeur vers un buffer, c'est bien. Par contre c'est bizarre que cette valeur soit initialisée à 0. J'écrirais plutôt
Code:
mov esi,buffer
buffer est un emplacement mémoire que tu as pris soin de réserver.



_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [LMI] Le registre ESI [RESOLU]

Message  Wilbur le Dim 04 Mai 2008, 10:27

PbT a écrit:Tu utilises esi comme pointeur vers un buffer, c'est bien. Par contre c'est bizarre que cette valeur soit initialisée à 0. J'écrirais plutôt
Code:
mov esi,buffer
buffer est un emplacement mémoire que tu as pris soin de réserver.



En fait, c'était justement l'étape de l'initialisation de esi qui me posait problème... je voulais savoir s'il pouvait être considéré comme un vecteur à part entière si on ne lui donnait pas d'adresse (pour résoudre le palindrome).

Mais maintenant je sais comment procéder, et j'ai donc la réponse à ma question.

Merci.

Au plaisir.

Wilbur

Nombre de messages : 46
Age : 27
Prénom : Romain
Statut : Etudiant 2ème Réseaux
Date d'inscription : 20/02/2008

Revenir en haut Aller en bas

Re: [LMI] Le registre ESI [RESOLU]

Message  Contenu sponsorisé Aujourd'hui à 15:17


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum