假设我们有汇编代码将Z打印到屏幕上。
pushl $'Z'
call putchar
add $4, %esp
我们怎么能用机器语言代码写这个?我在gdb中检查了在线资源和这些代码,但前者不同意后者,后者每次运行代码时都会更改。谢谢你的帮助。
我正在使用linux x86。同样,我想说我想知道如何用机器语言代码编写它。
答案 0 :(得分:3)
使用putchar
代替printf
。 printf
需要string
,并且您提供了char
。另外,请记住,在调用函数后必须恢复堆栈,因为printf
和putchar
都使用cdecl
调用约定。
pushl $'Z'
call putchar
add $4, %esp