西门子s7-300PLC中字word和整数INT的区别是什么?

大哥们,请教下,西门子s7-300PLC中字word和整数INT的区别是什么?
最新回答
下一站等候

2024-10-11 13:58:57

word是无符号的,或者说都是正数
int是有符号的,最高位为1表示负数,0表示正数
熊宝宝

2024-10-11 09:42:50

s7-300的数据类型分以下三种:基本数据类型、复合数据类型和参数类型。
一、基本数据类型
1、位(bit)
常称为bool(布尔型),只有两个值:0或1。如:i0.0,q0.1,m0.0,v0.1等。
2、字节(byte)
一个字节(byte)等于8位(bit),其中0位为最低位,7位为最高位。如:ib0(包括i0.0~i0.7位),qb0(包括q0.0~q0.7位),mb0,vb0等。范围:00~ff(十进制的0~255)。
3、字(word)
相邻的两字节(byte)组成一个字(word),来表示一个无符号数,因此,字为16位。如:iw0是由ib0和ib1组成的,其中i是区域标识符,w表示字,0是字的起始字节。需要注意的是,字的起始字节(如上例中的“0”)都必须是偶数。字的范围为十六进制的0000~ffff(即十进制的0~65536)。在编程时要注意,如果已经用了iw0,如再用ib0或ib1要特别加以小心。
4、双字(double
word)
相邻的两个字(word)组成一个双字,来表示一个无符号数。因此,双字为32位。如:md100是由mw100和mw102组成的,其中m是区域标识符,d表示双字,100是双字的起始字节。需要注意的是,双字的起始字节(如上例中的“100”)和字一样,必须是偶数。双字的范围为十六进制的0000~ffffffff(即十进制的0~4294967295)。在编程时要注意,如果已经用了md100,如再用mw100或mw102要特别加以小心。
以上的字节、字和双字数据类型均为无符号数,即只有正数,没有负数。
5、16位整数(int,integer)
整数为有符号数,最高位为符号位,1表示负数,0表示正数。范围为-32768~32767。
6、32位整数(dint,double
integer)
32位整数和16位整数一样,为有符号数,最高位为符号位,1表示负数,0表示正数。范围为-2147483648~2147483647。
7、浮点数(r,real)
浮点数为32位,可以用来表示小数。浮点数可以为:1.m×2e,其存储结构如图所示:
8、常数的表示方法
常数可以是字节、字或双字,cpu以二进制方式存储,也可以用十进制,十六进制ascii码或浮点数形式来表示。如下图所示:
说明:(1)s5t#格式为:s5t#ad_bh_cm_ds_ems,其中a,b,c,d,e分别是日,小时,分,秒和毫秒的数值,输入时可以省掉下划线,如表中所示。
(2)d#取值范围为:d#1990_1_1~d#2168_12_31。
二、复合数据类型
用户通过复合基本数据类型而生成就是复合数据类型。
复合数据类型包括以下几种:
1、数组(array)
将一组同一类型的数据组合在一起组成一个单位就是数组。
2、结构(struct)
将一组同不同类型的数据组合在一起组成一个单位就是结构。
3、字符串(string)
字符串是由最多254个字符组成的一维数组。
4、日期和时间(date-and-time)
用于存储年、月、日、时、分、秒、毫秒和星期的数据。占用8个字节,bcd编码。星期天代码为1,星期一~星期六代码分别是2~7。
如:dt#2004_07_15_12:30:15.200为2004年7月15日12时30分15.2秒。
5、用户定义的数据类型(udt,user-defined
data
types)
由用户将基本数据类型和复合数据类型组合在一起形成的数据类型。
可以在数据块db和变量声明表中定义复合数据类型。
三、参数类型
是为在逻辑块之间传递参数的形参(formal
parameter,形式参数)定义的数据类型。