【发布时间】:2012-10-27 03:18:20
【问题描述】:
我正在尝试解码从二进制文件生成的一些汇编代码。代码中有对sscanf函数的调用:
400f08: e8 13 fc ff ff callq 400b20 <sscanf@plt>
400f0d: 89 45 fc mov %eax,-0x4(%rbp)
你能告诉我sscanf 在汇编中是如何工作的吗?我很确定参数的数量存储在%eax....它是否以相反的顺序将输入推入堆栈?所以说我的输入是0 1,在运行 sscanf 之后,%eax=2 并且堆栈看起来像:
1
0 <----%rsp (top of the stack)
这是正确的吗? 谢谢!
【问题讨论】: