打印

关于ARM7-CM3汇编中通用寄存器使用方法

[复制链接]
3007|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ARM7-CM3资料中执行exception前所压入的一些寄存器,有一点比较疑惑:为什么通用寄存器只压入ro~r3,我在想应用程序代码汇编后应该有可能用到r4~r7,甚至是高通用寄存器组,而且在执行exception代码也可能会用到r0~r3意外的寄存器吧,如果是的话不就会把之前的值覆盖掉,当exception返回后,不就可能导致错误吗?一般通用寄存器大体是怎么用的?有什么规范?我只知道调用子程序时r0~r3是作为参数用。
目前我还没有在ARM官方文档看到具体介绍,有没有文档对这部分内容进行介绍啊?

QQ截图20130405135633.png (67.74 KB )

QQ截图20130405135633.png

相关帖子

沙发
john_lee| | 2013-4-5 15:02 | 只看该作者
AAPCS(Procedure Call Standard for the ARM Architecture)规范要求程序必须保护 r4-r11。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:你可能不知道今天所做的事情会对未来有多大的干预能力!

67

主题

310

帖子

12

粉丝