Mostrar valor numerico en MessageBopx (ASM)

Iniciado por Riki_89D, 16 Octubre 2009, 20:55 PM

0 Miembros y 1 Visitante están viendo este tema.

Riki_89D

Hola que tal estan?

espero que muy bien que s elo merecen por aguantar un pesado como yo xD wneo a lo que voi, tengo este codigo:

.386
.model flat,stdcall
option casemap:none
include All.inc

.data


.code

BG:

MOV EAX,4
MOV EBX,4
ADD EAX,EBX

invoke MessageBox,NULL,EAX,NULL,MB_OK
invoke ExitProcess,0

end BG






No es mas que una prueba,el caso es que el resultado de esa suma queda almacenada en EAX,como puedo mostrar ese resultado en un MessageBox como si de un string se tratara?

y otra pregunta,como puedo saber la direccion de una instruccion?

Salu2

Eternal Idol

Tenes que transformarlo a cadena primero ... podes usar la API wsprintf si queres (pasandole como parametros un buffer, el formato "%d" y el numero).

¿Estas buscando offset bg?

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

Riki_89D

#2
NO,ofsset BG no busco pro ejemplo la direccion MOV EAX,4 o de cualquier otra instruccion,es posible eso?

Eternal he buscado en google sobre esa funcion la de wsprintf pero no me aclaro me puedes poner un ejemplo de uso porfavor si no es muco pedir?

Eternal Idol

#3
¿Seguro que no?

Fijate que hace entonces esto:
Código (asm) [Seleccionar]
mov ecx, offset BG

Ademas de la etiqueta podes usar esto para la instruccion actual:

Código (asm) [Seleccionar]
mov ecx, $



Aca vamos, siendo el numero eax, en la sección de datos:

Código (asm) [Seleccionar]
buff db 16 dup (0)
format db "%d", 0


Código (asm) [Seleccionar]
invoke wsprintf, offset buff, offset format, eax
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

Riki_89D

Woo muchas gracias no savia todo eso me as ayudado mmucho,gracias crack de verdad ;) y perdona por ser tan pesado

Eternal Idol

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

Riki_89D

Oye pero teniendo la direccion de una instruccion despues puedo hacerle CALL a esa instruccion?




Eternal Idol

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

Riki_89D

Ok ya me lo imaginaba saludos Eternal idol ;)