【发布时间】:2012-08-20 02:35:49
【问题描述】:
几个月后,我将为此返回组装,但我无法让两个数字相乘并输出结果。这是我的代码:
.386
.model flat, stdcall
option casemap :none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\masm32.inc
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\masm32.lib
.data
sum sdword 0
.code
start:
mov ecx, 6
xor eax, eax
mov edx, 7
mul edx
push eax
pop sum
lea eax, sum
call StdOut
push 0
call ExitProcess
end start
它输出类似P &aeffiini,的东西。
问题:为什么会输出那个随机字符串,我该如何解决?
提前致谢。
【问题讨论】:
-
我没有看到任何将结果(数字)转换为字符串的代码,因此可以打印出来。
StdOut(可能)不是一个函数,因此调用它会获取一些半随机值,将其视为一个地址,然后调用该地址——几乎可以肯定不是你想要的。