浮点异常情况(VX_FP_TASK) .
来源:互联网 发布:do178b 软件 编辑:程序博客网 时间:2024/06/05 20:02
总结:
在生成任务时,如果在任务中使用浮点计算,一定需要将任务的标志VX_FP_TASK设置,否则将会出错,主要是在其他任务中出现0/0错误
产生原因:
当没有设置浮点计算标识VX_FP_TASK时,在进入任务时没有保存浮点寄存器值,这样在任务中进行浮点运算将破坏了浮点寄存器的内容,而在任务退出后,浮点寄存器不能恢复,造成其他任务在进行浮点计算时出现浮点运算错误。
通常,任务选项里面用得最多的是VX_FP_TASK选项,这是为代码里面包含有浮点运算的任务弄的一个选项,选用这个选项VxWorks进行任务切换的时候,就会进行保存和恢复硬件浮点寄存器的操作(或是软件模拟的浮点库的操作),通常为了可靠起见,应用程序类任务(非驱动)都使用这个选项(当然,具体用不用自己要评估,如果自己很清楚里面不包含浮点运算,就没有必要了)。
修改办法:
在创建任务时,设置VX_FP_TASK标识
2、在从硬件或者其他软件任务获取浮点数值时,一定需要确认入口的数值合法,否则如果一些非法数值将造成浮点计算溢出,从而产生浮点溢出错误;
产生原因:
输入的浮点数非法范围,进行浮点计算将溢出;
规避办法:
在进行浮点数入口出进行数值合法性判断,对于非法值进行预处理;
- 浮点异常情况(VX_FP_TASK) .
- VX_FP_TASK作用
- 浮点异常
- 异常情况.....
- 如何控制浮点异常.
- 汇编浮点指令异常
- JavaScript中的浮点数溢出情况处理。
- 测试异常情况
- Jackson异常情况处理
- Jackson异常情况处理
- 数据库异常情况
- 异常的特殊情况
- MyBatis--autowire异常情况
- Java异常情况分析
- Jackson异常情况处理
- java异常情况分析
- 部分异常情况
- 证书的异常情况
- stl中关联容器直接卡死程序
- Java 深入解析类的初始化顺序
- C 网络编程 socket
- vim中的编码:解决vim中的乱码问题
- LeetCode - Add Two Numbers
- 浮点异常情况(VX_FP_TASK) .
- 配置J-Link为mini2440烧写bootloader
- mark一下,今天开始写自己的博客
- Win7下J2EE Eclipse中Tomcat和SVN插件配置
- 2014华为校园招聘面试—失败吐槽
- Vim+cscope+ctags+tags阅读源代码
- 内部类(闭包与回调)
- 笔记本参数解读
- 2013.9.24