R0-R3:用作传入函数参数,传出函数的返回值。在子程序调用之间,可将R0-R3用于任何用途。被调用函数在返回之前不必回复R0-R3,如果调用函数再次需要R0-R3的内容的话,则它必须保留这些内容。
R4-R11:被用来存放函数的局部变量。如果调用函数使用了这些寄存器,它在返回返回之前必须回复寄存器的值。
R12:是内部调用暂时寄存器(ip)。它在过程链接胶合代码(例如交互操作胶合代码)中用于此角色。
R13:是栈指针(sp),sp中存放的值在退出调用函数时必须与进入调用函数时的值相同。
R14:是链接寄存器(lr),当调用一个函数时,返回地址被自动保存到链接寄存器中,在函数返回时有效。这使得快速进入以及不再调用其他函数成为可能。如果函数的分支的
R15:程序计数器(pc)
注意:在中断程序中,所有的寄存器都必须保护,编译器会自动保护R4-R11