CITA(Manuel @ Mar 3 2007, 11:40 AM)
.data?
longitud dd ?
.data
login db "Cool",0
.code
mov edi,offset Login ; apunta a 'Cool' (primer caracter)
xor eax,eax ; EAX = 0
xor ebx,ebx
xor ecx,ecx
; las dos siguientes se pueden cambiar
mov ebx,offset longitud
mov ebx,dword ptr [ebx]
; por
mov ebx,longitud ; debe contener la longitud
;...
mov al,byte ptr[edi+ebx-1] ; apunta a 'Cool' + longitud - 1
; o sea al caracter ultimo de 'Cool'
mov cl,byte ptr[edi]
; AL = 'l'
; CL = 'C'
intenta compilarlo y lo trazas paso a paso...
Saludos.
todo eso lo se, igual gracias. Lo "traduje" a c porque no me funciono en assembly (ni idea de por que no me compiló, me demore menos en "traducirlo que en pensar por que no funcionaba"), pero la pregunta es si especificamente longitud vale 4.