【发布时间】:2019-12-17 17:23:27
【问题描述】:
之前有人问过这个问题,但我似乎无法弄清楚:如何在 x86 32 位汇编中打印 ascii 值。
mov eax, 10
add eax, 48
;print contents of eax
【问题讨论】:
-
显示您的尝试并指定导致您出现问题的原因。也请参阅canonical answers in the x86 tag wiki。
-
在什么操作系统下?您可以使用How do I print an integer in Assembly Level Programming without printf from the c library? 将整数转换为 ASCII 数字字符串,这也显示了使用 Linux 系统调用将该字符串写入标准输出。显然,在任何其他操作系统下,您都可以对数字字符串做任何您想做的事情。
-
我使用的是 ubuntu 18,它非常简单,但我正在努力让它输出
-
您要么链接到 libc 并使用
printf函数,要么编写自己的代码,将整数逐位转换为字符串,然后打印字符串。 -
查看副本。如果这不能回答您的问题,请告诉我。