在调用需要访问数组的函数后,堆栈内容如何看?

时间:2016-10-21 03:05:09

标签: c assembly nasm

这是我坚持的问题,或者说似乎没有理解......

Q。)使用C / UNIX调用编写汇编代码以实现以下函数调用 约定。在进入被调用函数

时显示堆栈的内容
int myfunc2(int,char*); //prototype
...
char[] bob=”Bob's your uncle!”;
...
myfunc2(18, bob); //function call

继续我理解的程度,函数参数从结尾传递到前端。此外,由于参数不是32位数量,只有数组开头的地址被压入堆栈所以参数会像这样被推到堆栈上。

|-----------------------------------|
|             bob (address)         |
|-----------------------------------|
|             18                    |
|-----------------------------------|

这就是我认为堆栈的内容看起来像,另一种方法是将数组 bob 的所有内容的地址添加到堆栈中。我正在学习的powerpoint幻灯片在这方面并不太清楚,并且没有其他示例,我只想确保在进一步研究之前我对该主题的理解是正确的。谢谢!任何帮助或指导都将非常感激。

0 个答案:

没有答案