r0-r15寄存器的作用
2016-07-22 16:30
501 查看
r0-r3 用作传入函数参数,传出函数返回值。在子程序调用之间,可以将
r0-r3 用于任何用途。
被调用函数在返回之前不必恢复 r0-r3。如果调用函数需要再次使用 r0-r3 的内容,则它必须保留这些内容。
r4-r11 被用来存放函数的局部变量。如果被调用函数使用了这些寄存器,它在返回之前必须恢复这些寄存器的值。
r12 是内部调用暂时寄存器 ip。它在过程链接胶合代码(例如,交互操作胶合代码)中用于此角色。
在过程调用之间,可以将它用于任何用途。被调用函数在返回之前不必恢复 r12。
r13 是栈指针 sp。它不能用于任何其它用途。sp 中存放的值在退出被调用函数时必须与进入时的值相同。
r14 是链接寄存器 lr。如果您保存了返回地址,则可以在调用之间将 r14 用于其它用途,程序返回时要恢复
r15 是程序计数器 PC。它不能用于任何其它用途。
注意:在中断程序中,所有的寄存器都必须保护,编译器会自动保护R4~R11
r0-r3 用于任何用途。
被调用函数在返回之前不必恢复 r0-r3。如果调用函数需要再次使用 r0-r3 的内容,则它必须保留这些内容。
r4-r11 被用来存放函数的局部变量。如果被调用函数使用了这些寄存器,它在返回之前必须恢复这些寄存器的值。
r12 是内部调用暂时寄存器 ip。它在过程链接胶合代码(例如,交互操作胶合代码)中用于此角色。
在过程调用之间,可以将它用于任何用途。被调用函数在返回之前不必恢复 r12。
r13 是栈指针 sp。它不能用于任何其它用途。sp 中存放的值在退出被调用函数时必须与进入时的值相同。
r14 是链接寄存器 lr。如果您保存了返回地址,则可以在调用之间将 r14 用于其它用途,程序返回时要恢复
r15 是程序计数器 PC。它不能用于任何其它用途。
注意:在中断程序中,所有的寄存器都必须保护,编译器会自动保护R4~R11
相关文章推荐
- JVM垃圾回收机制总结:调优方法
- wifi信道就是频段吗?,频段带宽又是什么?
- 成员方发的分类
- SDUT 2137 数据结构实验之求二叉树后序遍历和层次遍历
- java 二进制的问题
- hdoj 1709 The Balance <母函数变形--有点像找同因数--队列排数>
- 分解质因数-week6-C语言习题集
- Retrofit实战之json反序列化的那些事
- noip2015提高组day2解题报告
- index( [object] ) object为可选的 string/element/jquery类型
- spring4.x hibernate4.x 整合 ehcache 注解 annotate
- HDU 1236 - 排名
- 2015年9月21日
- 属性大全
- iOS常用功能的网站地址
- 超齐全的编程开发资源集
- 【736c677c4】单元测试的几个方面
- KNN(五)--层次Kmean
- 深入理解JVM
- tar解压出错tar: Child returned status 1