如何用机器语言调用printf

时间:2015-04-19 03:54:53

标签: c assembly

假设我们有汇编代码将Z打印到屏幕上。

pushl $'Z'
call putchar
add $4, %esp

我们怎么能用机器语言代码写这个?我在gdb中检查了在线资源和这些代码,但前者不同意后者,后者每次运行代码时都会更改。谢谢你的帮助。

我正在使用linux x86。同样,我想说我想知道如何用机器语言代码编写它。

1 个答案:

答案 0 :(得分:3)

使用putchar代替printfprintf需要string,并且您提供了char。另外,请记住,在调用函数后必须恢复堆栈,因为printfputchar都使用cdecl调用约定。

pushl $'Z'
call putchar
add $4, %esp