Programación General > ASM (Ensamblador)

 Problema con Source

<< < (2/2)

XjersonX:
Hola denuevo ! miren tengo otro problema espero que me ayuden T_T

push eax
mov eax,04000000h
xor cx,cx

bucle:
inc eax

cmp dword ptr[eax],12345678h
cmp byte ptr[eax+4],91h

jz Final
Loop bucle

Final:
mov byte ptr[eax+4],92h
jmp bucle


Todo perfecto verdad? . Pero lo que pasa esque quisiera hacerlo que comparara entre un numero determinado y solo los que esten en ese rango se sobreescriban.

Por ejemplo:

push eax
mov eax,04000000h
xor cx,cx

bucle:
inc eax

cmp dword ptr[eax],12345678h
cmp byte ptr[eax+4],91h ; Aki hacerlo que se sobreescriban por 92h todos los que esten en un rango por ejemplo entre 91 a 99.

jz Final
Loop bucle

Final:
mov dword ptr[eax+4],92h
jmp bucle

Lo mas cuerdo es hacerlo con los simbolos de Matematicas , == Suma resta , etc.. Pero nos e como lo podria hacer. Ayuda !

De ante mano gracias muxaxos me estan ayudando mucho.

Eternal Idol:
Usa jl (jump if less) y jg (jump if greater).

XjersonX:
como? , un ejemplo me vendria de miedo.

Eternal Idol:

--- Código: ASM ---cmp eax, 060h ;limite inferior (incluye al mismo)jl nocmp eax, 069h ;limite superior (incluye al mismo)jg no;lo que quieras hacerinc eaxinc eaxinc eax;sigue el programano: 

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa