将 DWORD 的值打印为 ASCII 字符
Print a DWORD's value as an ASCII character
我有一个非常简单的程序,我在一个名为 asciiCode
的 dw
变量中存储了一个数字。然后我想使用 masm32rt.inc
中声明的 print
宏来打印此值 A
表示的 ASCII 字符,但尝试这样做会使程序崩溃:
.386
option casemap:none
include \masm32\include\masm32rt.inc
.data
asciiCode dw 65
.code
start:
print asciiCode
exit
end start
当 asciiCode
声明为 db
或 dd
时程序仍然崩溃。
我必须首先使用另一个函数来将此 dw
转换为可打印的 ASCII 字符吗?
最简单的方法可能是使用 printf
宏:
; prints 65. If you want the character A instead, use the format specifier %c
printf("%d", asciiCode)
在这种情况下,您可能应该使用 dd
声明 asciiCode
- dw
给您一个 word,而不是 双字.
我有一个非常简单的程序,我在一个名为 asciiCode
的 dw
变量中存储了一个数字。然后我想使用 masm32rt.inc
中声明的 print
宏来打印此值 A
表示的 ASCII 字符,但尝试这样做会使程序崩溃:
.386
option casemap:none
include \masm32\include\masm32rt.inc
.data
asciiCode dw 65
.code
start:
print asciiCode
exit
end start
当 asciiCode
声明为 db
或 dd
时程序仍然崩溃。
我必须首先使用另一个函数来将此 dw
转换为可打印的 ASCII 字符吗?
最简单的方法可能是使用 printf
宏:
; prints 65. If you want the character A instead, use the format specifier %c
printf("%d", asciiCode)
在这种情况下,您可能应该使用 dd
声明 asciiCode
- dw
给您一个 word,而不是 双字.