在整数运算指令中用到的常量,输入“+50”,和输入“50”有什么区别吗?
问题补充:
如果没有区别,那为什么参考书上有关整数的运算,都辛辛苦苦的在常数前面添加一个“+”号?
踏月而来,STEP7里面整数运算已经确定就是16位的带符号整数运算,所以无论输入+32768,还是输入32768,软件都会认为超出范围,提示错误。
上海的阿连,这个问题不是涉及整数以外的问题,STEP7的整数运算指令操作的是16位带符号整数,否则都会提示错误。
最佳答案
还是有区别嘀,整数字有2中数据类型:WORD,INT。前者是无符号整数:范围0-65535.后者是有符号整数:范围-32768 到 +32767。200无法定义之中的数据类型,缺省为INT。如整数运算指令都是以INT类型运算。
至于传送数值:+5和5区别就是一个表示为INT类型,后一个表示是WORD类型。传送大于+32767的值可用采用16#****的写法输入。就是WORD数据类型。
STEP7就对此很严格,不同类型的数据不能传送和运算。STEP 7-MicroWIN就无此检查,故而要自己记住数据类型,以免在使用中搞错。
提问者对于答案的评价:
个人这个答案比较全面了。
但是对其中一句话“传送大于+32767的值可用采用16#****的写法输入。”有质疑;
16位带符号整数运算最大值只能是+32767,如果大于就出错;假如用16#***输入大于+32767的数就是最大的负数了。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc355469.html