• {{item.name}}
{{item.name}}
{{item2.name}}
更多

基本数据类型

star star star star star
0 分
  • 使用操作
  • S7-1500
  • 数据类型
发布时间:2024年01月17日
  • 0
  • 91
本章节介绍了基本数据类型(位、位序列、整数、浮点数、日期时间)的内容。

基本数据类型

基本数据类型:包括位、位序列、整数、浮点数、日期时间。此外字符也属于基本数据类型。

此外 BCD 码虽然不属于数据类型,但也是一种数字表示方式,将在本文最后予以介绍。

1.位和位序列

注意:虽然位序列有数值表示方式,但一般不直接用于数学运算。通常在控制字、状态字、错误代码、标志字、状态位集合等处使用位序列。而数学运算使用下面的整数数据类型与浮点数数据类型。

数据类型
位大小
数值类型
数值范围
常数示例
地址示例
Bool1布尔运算
FALSE 或者 TRUE
TRUE
    •  I1.0
    •  Q0.1
    •  M50.7
    •  DB1.DBX2.3
    •  Tag_name
二进制
2#0 或 2#1
2#0
无符号整数
0 或 1
1
八进制
8#0 或 8#1
8#1
十六进制
16#0 或 16#1
16#1
Byte8二进制
2#0 到 2#1111_1111
2#1000_1001
    •  IB2
    •  MB10
    •  DB1.DBB4
    •  Tag_name
无符号整数
0 到 255
15
有符号整数
-128 到 127
-63
八进制
8#0 到 8#377
8#17
十六进制
B#16#0 到 B#16#FF / 16#0 到 16#FF
B#16#F、16#F
Word16二进制
2#0 到 2#1111_1111_1111_1111
2#1101_0010_1001_0110
    •  MW10
    •  DB1.DBW2
    •  Tag_name
无符号整数
0 到 65535
61680
有符号整数
-32768 到 32767
72
八进制
8#0 到 8#177_777
8#170_362
十六进制
W#16#0 到 W#16#FFFF / 16#0 到 16#FFFF
W#16#F1C0、16#A67B
DWord32二进制
2#0 到 2#1111_1111_1111_1111_1111_1111_1111_1111
2#1101_0100_1111_1110_1000_1100
    •  MD10
    •  DB1.DBD8
    •  Tag_name
无符号整数
0 到 4_294_967_295
15_793_935
有符号整数
-2_147_483_648 到 2_147_483_647
-400000
八进制
8#0 到 8#37_777_777_777
8#74_177_417
十六进制
DW#16#0 到 DW#16#FFFF_FFFF / 16#0 到 16#FFFF_FFFF
DW#16#20_F30A、16#B_01F6

2.整数数据类型

数据类型
位大小
数值范围
常数示例
地址示例
USInt
8
0 到 255
78、2#01001110
    •  MB0
    •  DB1.DBB4
    •  Tag_name
SInt
8
-128 到 127
+50、16#50
UInt
16
0 到 65535
65295、0
    •  MW2
    •  DB1.DBW2
    •  Tag_name
Int
16
-32768 到 32767
30000、+30000
UDInt
32
0 到 4_294_967_295
4042322160
    •  MD6
    •  DB1.DBD8
    •  Tag_name
DInt
32
-2_147_483_648 到 2_147_483_647
-2131754992

3.浮点型实数数据类型

如 ANSI/IEEE 754-1985 标准所述,实(或浮点)数以 32 位单精度数 (Real) 或 64 位双精度数 (LReal) 表示。 单精度浮点数的精度最高为 6 位有效数字,而双精度浮点数的精度最高为 15 位有效数字。在输入浮点常数时,最多可以指定 6 位 (Real) 或 15 位 (LReal) 有效数字来保持精度。

数据类型
位大小
数值范围
常数示例
地址示例
Real
32
-3.402823e+38 到 -1.175495e-38、±0、+1.175 495e-38 到 +3.402823e+38
123.456、-3.4、1.0e-5
    •  MD100
    •  DB1.DBD8
    •  Tag_name
LReal
64
-1.7976931348623158e+308 到 -2.2250738585072014e-308、
±0、
+2.2250738585072014e-308 到 +1.7976931348623158e+308
12345.123456789e40、1.2E+40
    •  DB_name.var_name
注意:
• 不支持直接寻址

4.时间和日期数据类型

TIME 数据作为有符号双整数存储,基本单位为毫秒。存储的数值是多少,就代表有多少 ms。 编辑时可以选择性使用天 (d)、小时(h)、分钟 (m)、秒 (s) 和毫秒 (ms) 作为单位。

不需要指定全部时间单位。 例如,T#5h10s 和 500h 均有效。所有指定单位值的组合值不能超过以毫秒表示的时间日期类型的上限或下限(-2,147,483,648 ms 到 +2,147,483,647 ms)。

DATE 数据作为无符号整数值存储,被解释为添加到基础日期 1990 年 1 月 1 日的天数,用以获取指定日期。 编辑器格式必须指定年、月和日。

TOD (TIME_OF_DAY) 数据作为无符号双整数值存储,被解释为自指定日期的凌晨算起的毫秒数(凌晨 = 0 ms)。 必须指定小时(24 小时/天)、分钟和秒。 可以选择指定小数秒格式。

数据类型
位大小
范围
常数示例
Time
32
T#-24d_20h_31m_23s_648ms 到 T#24d_20h_31m_23s_647ms
存储形式: -2,147,483,648 ms 到 +2,147,483,647 ms
    •  T#5m_30s
    •  T#1d_2h_15m_30s_45ms
    •  TIME#10d20h30m20s630ms
    •  500h10000ms
    •  10d20h30m20s630ms
DATE
16
D#1990-1-1 到 D#2168-12-31
    •  D#2009-12-31
    •  DATE#2009-12-31
    •  2009-12-31
TOD/
Time_of_Day

32
TOD#0:0:0.0 到 TOD#23:59:59.999
    •  TOD#10:20:30.400
    •  TIME_OF_DAY#10:20:30.400
    •  23:10:1

5. BCD 码

BCD 格式不能作为数据类型使用,但是以下转换指令支持 BCD 数字格式转换:

  • BCD16_TO_INT
  • INT_TO_BCD16
  • BCD32_TO_DINT
  • DINT_TO_BCD32

转换举例:16#100 >10#100,10#888777>16#888777

数据类型
位大小
范围
常数示例
BCD16
16
-999 到 999
123、-123
BCD32
32
-9999999 到 9999999
1234567、-1234567


  • 评论
更多
  • 分享

    扫码分享

扫码进入移动端

信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。