Calak
Messages postés38Date d'inscriptionmercredi 28 août 2002StatutMembreDernière intervention24 janvier 2010
-
14 sept. 2004 à 23:35
Calak
Messages postés38Date d'inscriptionmercredi 28 août 2002StatutMembreDernière intervention24 janvier 2010
-
15 sept. 2004 à 07:58
Voila, j'ai un petit probs...
Je suis en train d'essayer de recoder des fonction de string.h
mais j'ai un probs con (j'en suis sur -_- ) sur le strchr
Il ne trouve jamais le caractère demandé...
Bon, ça fait longtemps que j'ai plus fait d'assembleur, et puis je faisais seulement du 16 bits, mais c'est pas une excuse ^_^;
En fait, c'est assez "urgent" car je me refais une bibliothèques de fonction pour la rentrée scolaire ( demain ), et je bloque...
Ca doit faire bien 2 heures que je me chie sur ce probs -_-
Merci d'avance à tout ceux qui m'aideront :D
unsigned int str_chr(const char *s, int c)
{
__asm {
XOR eax, eax // On met eax à 0
XOR ebx, ebx
MOV ecx,s // On place l'adresse de "s" dans ecx
MOV edx,c
sstr_boucle:
MOV eax, [ecx+ebx]
CMP eax, 0 // Si le caractère pointé est '\0'
JE short sstr_pastrouve // au saute à la fin de la fonction
CMP eax, edx
JZ sstr_fin
INC ebx // et on passe au caractère suivant
JMP short sstr_boucle // puis on recommence la boucle
cosmobob
Messages postés700Date d'inscriptionmardi 30 décembre 2003StatutMembreDernière intervention27 janvier 20094 15 sept. 2004 à 00:33
unsigned int str_chr(const char *s, int c)
{
__asm {
XOR eax, eax // On met eax à 0
XOR ebx, ebx
MOV ecx,s // On place l'adresse de "s" dans ecx
MOV edx,c
sstr_boucle:
MOV al, byte ptr [ecx+ebx]
CMP al, 0 // Si le caractère pointé est '\0'
JE short sstr_pastrouve // au saute à la fin de la fonction
CMP al, dl
JE sstr_fin
INC ebx // et on passe au caractère suivant
JMP short sstr_boucle // puis on recommence la boucle
sstr_pastrouve:
xor eax, eax
sstr_fin:
}
}
Calak
Messages postés38Date d'inscriptionmercredi 28 août 2002StatutMembreDernière intervention24 janvier 2010 15 sept. 2004 à 07:58
bon, je suis incorrigible, j'ai pas pu m'empècher de tester ^^
ça a l'air de marcher /D
merci encore...
Il est temps que les cours recommencent, c'était vraiment une erreur de débutant -_-