数据类型REAL和LREAL是符合IEEE 754的浮点类型。在十进制表示法或指数表示法中使用十进制数和浮点数时,它们是必需的。
.目标系统:CODESYS Control Win V3
数据类型 | 最小的数值 | 最大的数值 | 储存空间 |
---|---|---|---|
REAL | 1.0E-44 | 3.402823E+38 | 32位 |
LREAL | 4.94065645841247E-324 | 1.7976931348623157E+308 | 64位 |
.例如
PROGRAM PLC_PRG
VAR
rMax: REAL := 3.402823E+38; // 最大的数值
rPosMin : REAL := 1.0E-44; // 最小的正数
rNegMax: REAL := -1.0E-44; // 最大的负数
rMin: REAL := -3.402823E+38; // 最小的数值
lrMax: LREAL := 1.7976931348623157E+308; // 最大的数值
lrPosMin : LREAL := 4.94065645841247E-324; // 最小的正数
lNegMax: LREAL := -4.94065645841247E-324; // 最大的负数
lrMin: LREAL := -1.7976931348623157E+308; // 最小的数值
END_VAR
LREAL对数据类型的支持取决于所使用的目标设备。有关编译应用程序时64位类型LREAL是转换为REAL还是保留为LREAL的信息,请参阅相应的文档。转换可能会导致信息丢失。 |
如果REAL/LREAL数值超出整数的值范围,则从REAL 或LREAL到SINT, USINT, INT, UINT, DINT, UDINT, LINT, 或ULINT的数据类型转换会产生未定义的结果。结果取决于目标系统。也有可能出现异常错误。 要获得与目标系统无关的代码,应用程序必须判断值是否超出范围。 如果REAL/LREAL在这个范围内,那么转换在所有系统上以相同的方式进行。 |
.另请参考