配色: 字号:
设置带有浮点数的指令中的状态位
2022-03-14 | 阅:  转:  |  分享 
  
设置带有浮点数的指令中的状态位(S7-300,S7-400)
设置带有浮点数的指令中的状态位
说明
带有浮点数的指令将影响状态字中的状态位CC1、CC0、OV和OS。
如果结果为零,状态位CC1和CC0将置位为“0”。如果结果为正值,状态位CC1
将置位为“1”同时状态位CC0将置位为“0”。如果结果为负值,状态位CC1将置位
为“0”同时状态位CC0将置位为“1”。
如果发生值范围上溢,状态位OV和OS将置位为“1”。浮点数无效时,状态位CC
1、CC0、OV和OS的信号状态将为“0”。
下表列出了使用浮点数时状态位的设置情况:
有效范围CCCCOVOS
10
+0、-0(零)000
-3.402823E+38<结果<
010
-1.175494E-38(负值)
+1.175494E-38<结果<
100
3.402824E+38(正值)
运算结果不会影响OS位。
无效范围CCCCOVOS
10
下溢
0011
-1.175494E-38<结果<
-1.401298E-45(负数)
下溢
0011
+1.401298E-45<结果<
+1.175494E-38(正数)
上溢
0111
结果<-3.402823E+38(负数)
上溢
1011
结果>3.402823E+38(正数)
浮点数无效或操作无效(输入值超
1111
出有效的取值范围)
-1-
献花(0)
+1
(本文系南山卧龙原创)