je vais corriger :
; float default_mesure(char *v, char *w, int size)
; i = ebx
; v = esi
; w = edi
; s = ecx
; d = edx
s et d doive être caste en float
mesure_sse2:
push ebp
mov ebp, esp
pushad
push esi
push edi
mov esi, [ebp+8]
mov edi, [ebp+12]
xor ebx, ebx
xor ecx, ecx
xor edx, edx
.for:
cmp ebx, [ebp+16]
jge .end_for
mov eax, [edi + ebx ]
cmp eax, [esi + ebx ]
jne .dplusun
add ecx, 1 ; s++
jmp .end_loop
.dplusun:
add edx, 1 ; d++
.end_loop:
add ebx, 1 ; i++
jmp .for
.end_for:
xor eax, eax ; eax = 0
mov eax, ecx ; eax = s
add edx, ecx ; d = d+s
fild qword [edx]
fxch st1
fild qword [ecx]
fdiv st0, st1
sub esp, 4
fstp qword [ esp ]
mov eax, [esp]
add esp, 4
div edx
pop esi
pop edi
push dword 1
call sleep
mov esp, ebp
pop ebp
popad