前言:华南西门子总代理,华中西门子总代理,华东西门子总代理,华北西门子总代理,西北西门子总代理
双整数转换为字符串指令与单整数转换指令类似,唯一不同的是输出字符串的长度为12位,加上首字节一共是13个字节,比如VB0到VB12。这里不再赘述,大家可以举一反三进行练习。
2. 浮点数转换为字符串指令
浮点数数转换为字符串的指令会将实数值 IN 转换为 ASCII 字符串。格式 (FMT) 分配小数点右侧的转换精度、小数点显示为逗号还是句点以及输出字符串的长度。转换结果放置在以 OUT 开头的字符串中。结果字符串的长度在格式中指定,可以是 3 到 15 个字符。FMT图示如下图5所示:
图5
总结:由图5可见,“R_S”与“I_S”、“DI_S”的FMT管脚的区别是高四位有效,字段SSSS的取值范围是3-15,表示输出字符串的长度,超出此范围指令会报错。低四位代表的含义与“I_S”、“DI_S”的FMT相同。需要注意的是,CPU 使用的实数格式最多支持 7 位有效数字,尝试显示 7 位以上有效数字会产生舍入错误。请看下面的例子及监控画面,如图6所示:
图6
FMT管脚的VB130的值为16#A4,这就是说转换值的格式是10个字符,小数点后有4位,所以VD120的值456.888转化后为字符串两个空格加456.8880,共10个字节。这个指令需谨慎使用,很容易出错。比如输入是456.888,VB130输入16#74,认为能得到结果为456.8880,但指令会报错,他因为456.8880一共占8个字节,而FMT的值为16#74,只输出7个字节,因此得不到正确结果,将16#74改为16#84后,输出结果正确,如下图7所示。
图7
因篇幅所限,本文先介绍这三个指令,希望能对大家理解和使用有所帮助。