主题:将二进制数转化为10进制没有结果
.386
.MODEL FLAT
ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD
INCLUDE io.h
cr EQU 0dh
Lf EQU 0ah
.STACK 4096
.data
value dword 64h
chushu word 10
string byte 32 dup(?),0
.code
dispbx proc NEAR32
lea ebx,string+31
mov ecx,5
again: xor dx,dx
div chushu
cmp ax,0
jz nzero
jz next
nzero: call disp
next:
mov eax,edx
loop again
ret
dispbx endp
disp proc NEAR32
push edx
push eax
mov dx,ax
add dx,30h
mov [ebx],dx
dec ebx
pop eax
pop edx
ret
disp endp
_start:
mov eax,value
call dispbx
output string
invoke exitprocess,0
public _start
end
请各位高手帮忙看一下程序错在哪,并修改正确。小弟很急。我用的是32位。编译器见
附件编译为ml /c /coff ***.asm
连接为link /subsystem:console /entry:start /out:***.exe ***.obj io.obj kernel32.lib
.MODEL FLAT
ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD
INCLUDE io.h
cr EQU 0dh
Lf EQU 0ah
.STACK 4096
.data
value dword 64h
chushu word 10
string byte 32 dup(?),0
.code
dispbx proc NEAR32
lea ebx,string+31
mov ecx,5
again: xor dx,dx
div chushu
cmp ax,0
jz nzero
jz next
nzero: call disp
next:
mov eax,edx
loop again
ret
dispbx endp
disp proc NEAR32
push edx
push eax
mov dx,ax
add dx,30h
mov [ebx],dx
dec ebx
pop eax
pop edx
ret
disp endp
_start:
mov eax,value
call dispbx
output string
invoke exitprocess,0
public _start
end
请各位高手帮忙看一下程序错在哪,并修改正确。小弟很急。我用的是32位。编译器见
附件编译为ml /c /coff ***.asm
连接为link /subsystem:console /entry:start /out:***.exe ***.obj io.obj kernel32.lib