ARM异常处理与返回地址调整

需积分: 0 2 下载量 100 浏览量 更新于2024-07-12 收藏 1.83MB PPT 举报
"该资源是关于ARM架构的入门讲解,主要涵盖了异常返回地址的调整以及嵌入式系统的基础知识。" 在ARM处理器架构中,异常返回地址的调整是一个关键概念,因为它涉及到处理器如何正确地从异常状态恢复到正常执行流程。在不同的异常模式下,返回地址的计算方式有所不同: 1. 对于SWI(Software Interrupt)和UND(Undefined Instruction)异常,处理器使用`movs pc, r14_swi/und`指令将R14寄存器中的值移动到程序计数器(PC),从而恢复执行流程。这里的R14通常保存了异常发生前的下一条指令地址。 2. FIQ(Fast Interrupt Request)和IRQ(Interrupt Request)异常,以及Prefetch Abort(预取指令异常),返回时会使用`subs pc, r14_fiq/irq/prefetch, #4`指令。这个指令从R14寄存器中减去4个字节,因为中断或异常服务例程通常会跳过下一条指令,这通常是由于在进入异常模式时,PC已经被更新为异常处理程序的地址,因此需要回退4字节以恢复正常的顺序执行。 3. DataAbort(数据访问异常)则需要减去8个字节,即`subs pc, r14_dataabr, #8`,这是因为数据异常通常涉及对内存的读写操作,可能涉及到两个字的对齐访问,所以返回时需要跳过更多的指令。 这些异常处理机制确保了处理器能够正确地从异常状态恢复到正常的执行路径,处理完异常事件后继续执行被中断的程序。 此外,资料还提到了嵌入式系统的基本概念和历史发展。嵌入式系统是指使用微处理器并针对特定应用进行设计的系统。它们通常包括硬件和软件两部分,可以是简单的单线程设备,也可以是复杂的实时多任务操作系统。20世纪70年代至90年代,随着技术的进步,嵌入式系统从无操作系统发展到支持实时操作系统的阶段,如VxWorks、RT-Linux和μC/OS等。嵌入式系统的特点包括低功耗、小巧、高集成度、高性价比以及与特定应用紧密结合的交叉开发过程。它们广泛应用于工业控制、交通管理、信息家电、家庭智能系统和环境监控等领域。
2013-11-17 上传