Exception handling ARM中的异常是什么?

Exception handling ARM中的异常是什么?,exception-handling,arm,interrupt,Exception Handling,Arm,Interrupt,你好 我目前正在学习 本文件开头写道: 严格地说,中断是指中断软件执行流程的东西。然而,在ARM术语中,这实际上是一个例外 这意味着中断是ARM的一个例外,对吗 我的英语不流利,所以我在阅读文件时有很多困难 谢谢。< /P> < P> ARM和许多其他体系结构认为中断是异常的一个子集,因为正如您所引用的,所有异常都能够中断软件执行的流程(不仅仅是中断)。总之,所有中断都是异常,但并非所有异常都是中断,因为某些异常可以(由异常处理程序通过以下方式管理): 重置,最高优先级异常 未定义指令 中断(

你好

我目前正在学习

本文件开头写道:

严格地说,中断是指中断软件执行流程的东西。然而,在ARM术语中,这实际上是一个例外


这意味着中断是ARM的一个例外,对吗

我的英语不流利,所以我在阅读文件时有很多困难


谢谢。< /P> < P> ARM和许多其他体系结构认为中断是异常的一个子集,因为正如您所引用的,所有异常都能够中断软件执行的流程(不仅仅是中断)。总之,所有中断都是异常,但并非所有异常都是中断,因为某些异常可以(由异常处理程序通过以下方式管理):

  • 重置,最高优先级异常
  • 未定义指令
  • 中断(由中断处理程序管理):FIQ、IRQ(FIQ优先级高于IRQ)或SWI
  • 中止、数据或预取

因此,未对齐的数据访问(数据中止)和计时器(IRQ)将触发异常处理程序(并停止“预期的指令执行”),但数据中止不是中断,而是异常。

是的,将中断视为一种异常。@PaulR谢谢。如果是这样,中断在ARM中是否作为异常实现?或者他们只是想把中断看作一种异常?我不是ARM方面的专家,但我希望异常处理机制对于中断和其他类型的异常都是通用的。@PaulR谢谢!这意味着中断被视为异常的一个子集,不仅是ARM,而且在为澄清而进行的正常编辑中,它被称为“统一异常模型”。设计的目的是简化中断和“传统”异常(异常CPU状态)的配置和处理,方法是使用相同的处理程序模型处理所有问题。在我看来,它起作用了。评论不错,我不知道这个定义。