我仍然对 x86 程序集有所了解,因此我制作了这个将 6 和 7 相乘的小程序,将数据移动到 EAX,然后打印结果。它编译良好,运行良好,但不是打印 42,而是打印 40 秒 ASCII 字符。我在这个论坛上有如何打印单字符数字,但现在我需要弄清楚如何打印多位数字。这是我的代码:
.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
adrs dd 0
.code
start:
mov eax, 6
mov ebx, 7
imul eax, ebx
add eax, 48
mov adrs, eax
invoke StdOut, addr adrs
invoke ExitProcess, 0
end start
所以总而言之,我需要了解如何将数据拆分为单个字符,以便我可以打印它们。任何帮助都会很棒。
问候,
程序