大家好,有个问题请教下:arm M7中除0异常默认不会被trap,而只是会返回0,这样设计的原因是什么?在实际项目中,大家会打开除0异常的trap吗?谢谢
查看更多
可以调试时打开,量产时关闭,或能上报错误日志。
在应用程序里,涉及到除法操作,一定要先判断分母是否为0,不要盲目用除法。异常返回0是不想让整个系统崩溃掉。一个产品被 trap 不是一个好产品。
我觉得还是除之前还是要先判断好,如果出现了0就不要去除了,在产品中,无论是否被trap他都是异常,都可能会影响产品性能。
我感觉这样设计的原因主要是在牵扯到除法,有时候被除的值是个变量的时候,你不能确定,这个值再出现异常的时候会不会出现等于0的情况,这样设计更加保险,不会出现一点错误就会使系统出现问题
欢迎发表与嵌入式相关的技术分享、开发技巧、工具介绍、技术设想、职业心得、行业评论等对他人有启发,排版优雅的文章
回到 顶部
发布 问题
分享 好友
手机 浏览
投诉 建议
回到 底部