jankalon 发表于 2013-1-2 15:33:21

arm裸机程序 局部变量的地址是如何定义的?

我最近在看mini2440test源码,发现,播放音乐的那段程序,是先将wav文件直接存储在内存某一个已经定义好的地址(使用define),然后读取这个地址的内存,然后进行播放。
这个有一个问题,如果存储的地址,存放着其他函数使用的内容的时候。例如函数的静态变量,局部变量等。
由此,我在思考,arm的裸机程序,那些局部变量在开始申请的时候,栈的地址是如何定义的?
小弟刚学arm,很多不懂,请大家原谅。

windsun0800 发表于 2013-1-5 21:43:51

问:我在思考,arm的裸机程序,那些局部变量在开始申请的时候,栈的地址是如何定义的?
答:对于裸机程序,汇编在调用C语言实现的代码时,需要对sp寄存器赋上初值. 这个初值就是栈.
这个值是CPU可以访问的内存地址,并且也不能被复用.
页: [1]
查看完整版本: arm裸机程序 局部变量的地址是如何定义的?