ayuda
quisiera saber como pasar a cadena ascii y en decimal el valor de un determinado registro, por ejemplo s el registro EBX=ABCD quiero obtener "43981" para desplegarlo en una MessageBox
gracias
gracias
Podes usar la función wsprintf de la API de Windows.
.586
.model flat,stdcall
option casemap:none
include windows.inc
include kernel32.inc
include user32.inc
includelib kernel32.lib
includelib user32.lib
CTEXT MACRO text:VARARG
LOCAL TxtName
.data
TxtName BYTE text,0
.code
EXITM <OFFSET TxtName>
ENDM
.data
str_ptr dd 0
local_heap dd 0
.Code
Main:
invoke GetProcessHeap
mov local_heap,eax
invoke HeapAlloc,local_heap,HEAP_ZERO_MEMORY,1024
mov str_ptr,eax
invoke wsprintf,str_ptr,CTEXT("%d"),eax
invoke MessageBox,0,str_ptr,str_ptr,0
invoke HeapFree,local_heap,0,str_ptr
invoke ExitProcess,0
ret
End Main
Saludos,
Mariano http://www.c0d3rz.com.ar
.586
.model flat,stdcall
option casemap:none
include windows.inc
include kernel32.inc
include user32.inc
includelib kernel32.lib
includelib user32.lib
CTEXT MACRO text:VARARG
LOCAL TxtName
.data
TxtName BYTE text,0
.code
EXITM <OFFSET TxtName>
ENDM
.data
str_ptr dd 0
local_heap dd 0
.Code
Main:
invoke GetProcessHeap
mov local_heap,eax
invoke HeapAlloc,local_heap,HEAP_ZERO_MEMORY,1024
mov str_ptr,eax
invoke wsprintf,str_ptr,CTEXT("%d"),eax
invoke MessageBox,0,str_ptr,str_ptr,0
invoke HeapFree,local_heap,0,str_ptr
invoke ExitProcess,0
ret
End Main
Saludos,
Mariano http://www.c0d3rz.com.ar