在 M0+ 设备上除以零异常
Posted
技术标签:
【中文标题】在 M0+ 设备上除以零异常【英文标题】:Divide by zero exception on M0+ devices 【发布时间】:2017-01-25 16:25:15 【问题描述】:M0+ 设备上是否存在除以零异常?
我知道 Cortex M3 和 M4 设备有这个。
【问题讨论】:
【参考方案1】:Cortex-M0+ 是 ARMv6-M,它不包含除法指令,因此不会有硬件例外。由于除法必然是软件操作,因此它将用于陷阱除以零的软件实现。因此,行为将取决于您的编译器;对于 C 和 C++,至少它是 undefined 行为。
【讨论】:
@LPs : 在 M3、4 和 7 整数除以零 生成 UsageFault 异常,参考:infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0552a/… @LPs它没有FPU,但仍然提供SDIV
和UDIV
除法指令。
@Clifford 是的,我的错。以上是关于在 M0+ 设备上除以零异常的主要内容,如果未能解决你的问题,请参考以下文章
Java基础 try...catch 处理ArithmeticException 除以零的异常
为啥整数除以零 1/0 会出错但浮点数 1/0.0 返回“Inf”?