寄存器银行是指在同一地址提供多个寄存器的过程。 摘自ARM docs第1.4.6节。 该术语是指解决无法同时查看所有寄存器的问题的解决方案。 每种处理器模式都有一个不同的寄存器银行。 银行寄存器可快速上下文切换以处理处理器异常和特权操作。 如果您正在寻找更理论性的原因,我建议阅读this论文。 编辑:比我的答案更深入的答案在here给出。
当处理器进入异常状态时,分组寄存器会自动与另一组这些寄存器进行切换。 实际上,异常处理程序不必将这些寄存器保存在堆栈中,以防它们随后被异常处理函数覆盖。处理器只需保留该组的一个安全副本,并在异常返回时恢复原始组。