在正常的程序执行流程发生暂时的停止时,称为中断,例如,处理一个外部的中断请求。在处理异常之前,当前处理器的状态必须保留,这样当异常处理完成之后,当前程序可以继续执行。处理器允许多个异常同时发生,它们将会按固定的优先级进行处理。 中断与堆栈设置和ARM体系结构紧密相关,ARM是一种支持多任务操作的系统内核,内部结构完全适应多任务应用。ARM内核支持7种中断,不同的中断处于不同的处理模式(如表1所示),具有不同的优先级,而且每个中断都有固定的中断入口地址。当一个中断发生时,相应的R14(LR)存储中断返回地址,SPSR存储状态寄存器CPSR的值。 由于ARM内核支持流水线工作,LR寄存