正在经历 arm 异常处理的基础知识,并提出了这个疑问:(我以 abort 异常为例)让我们假设处理器正在用户模式下运行。
当发生异常时,处理器会将当前保存pc
到 abort_modeLR
和CPSR
中止模式SPSR
,并且执行跳转到中止的向量地址,因此PC
现在将包含中止的向量地址。
所以我在这里得到的是在将流程转移到中止模式之前(让 pc 到中止向量)。CPU 将执行以下任务:“Current pc
to abort_mode LR
and CPSR
to abort mode SPSR
and then execution jumps to vector address for the abort”,如上所述。在哪种模式下以及从何处执行指令来执行上述任务?