龙空技术网

西门子PLC数据类型——整数

Look自动化 1233

前言:

目前朋友们对“unsigned long int”大体比较看重,看官们都想要剖析一些“unsigned long int”的相关知识。那么小编在网上网罗了一些对于“unsigned long int””的相关知识,希望姐妹们能喜欢,兄弟们一起来学习一下吧!

整数

总体来说西门子PLC中的数据本质上都是二进数,所谓整数其实就是用多位二进数来表达数据,整数分为有符号整数和无符号整数,有符号整数的二进数最高为符号位,最高位为“1”时表示的是负数,最高位为“0”时表示的正数,在PLC中,负数是正数的二进制取反再加1。

下面分别说明不同长度的整数

SINT(8 位整数)

说明

数据类型 SINT (Short INT) 的操作数长度为 8 位,由以下两部分组成:一部分是符号,另一部分是数值。位 0 到 6 的信号状态表示数值。位 7 的信号状态表示符号。符号可以是“0”(正信号状态),或“1”(负信号状态)。

数据类型 SINT 的操作数在存储器中占用 1 BYTE。

下表列出了数据类型 SINT 的属性:

长度(位)

格式

取值范围

输入值示例

8

有符号整数(十进制系统)

-128 到 +127

+44SINT#+44SINT#10#+44

使用类型 SINT# 时,值范围可扩大为 SINT#255 的最大范围。该值将解释为一个整数值减 1。

二进制数(仅正数)

2#0 到 2#0111_1111

2#0010_1100SINT#2#0010_1100SINT#2#10

八进制数(仅正数)

8#0 到 8#177

8#54SINT#8#54

十六进制数(仅正数)

16#0 到 16#7F

16#2CSINT#16#2C

使用类型 SINT# 时,值范围可扩大为 SINT#16#FF 的最大范围。该值将解释为一个整数值减 1。

示例

下图将整数 +44 显示为二进制数:

USINT(8 位整数)

说明

数据类型 USINT (Unsigned Short INT) 的操作数长度为 8 位,包括无符号数值:

数据类型 USINT 的操作数在存储器中占用 1 BYTE。

下表列出了数据类型 USINT 的属性:

长度(位)

格式

取值范围

输入值示例

8

无符号整数(十进制系统)

0 到 255

78USINT#78USINT#10#78

二进制数

2#0 到 2#1111_1111

2#0100_1110USINT#2#0100_1110USINT#2#10

八进制数

8#0 到 8#377

8#116USINT#8#116

十六进制数

16#0 到 16#FF

16#4EUSINT#16#4E

示例

下图将整数 78 显示为二进制数:

INT(16 位整数)

说明

数据类型 INT 的操作数长度为 16 位,并由两部分组成:一部分是符号,另一部分是数值。位 0 到 14 的信号状态表示数值。位 15 的信号状态表示符号。符号可以是“0”(正信号状态),或“1”(负信号状态)。

数据类型 INT 的操作数在存储器中占用 2 BYTE。

下表列出了数据类型 INT 的属性:

长度(位)

格式

取值范围

输入值示例

16

有符号整数(十进制系统)

-32_768 到 +32_767

+3_785INT#+3_785INT#10#+3_785

二进制数(仅正数)

2#0 到 2#0111_1111_1111_1111

2#0000_1110_1100_1001INT#2#0000_1110_1100_1001INT#2#10

八进制数(仅正数)

8#0 到 8#7_7777

8#7311INT#8#7311

十六进制数(仅正数)

16#0 到 16#7FFF

16#0EC9INT#16#0EC9

示例

下图将整数 +3785 显示为二进制数:

UINT(16 位整数)

说明

数据类型 UINT (Unsigned INT) 的操作数长度为 16 位,包括无符号数值。

数据类型 UINT 的操作数在存储器中占用 2 BYTE。

下表列出了数据类型 UINT 的属性:

长度(位)

格式

取值范围

输入值示例

16

无符号整数(十进制系统)

0 到 65_535

65_295UINT#65_295UINT#10#65_295

二进制数

2#0 到 2#1111_1111_1111_1111

2#1111_1111_0000_1111UINT#2#1111_1111_0000_1111UINT#2#10

八进制数

8#0 到 8#17_7777

8#17_7417UINT#8#17_7417

十六进制数

16#0 到 16#FFFF

16#FF0FUINT#16#FF0F

示例

下图将整数 65295 显示为二进制数:

DINT(32 位整数)

说明

数据类型 DINT (Double INT) 的操作数长度为 32 位,并由两部分组成:一部分是符号,另一部分是数值。位 0 到 30 的信号状态表示数值。位 31 的信号状态表示符号。符号可以是“0”(正信号状态),或“1”(负信号状态)。

数据类型 DINT 的操作数在存储器中占用 4 BYTE。

下表列出了数据类型 DINT 的属性:

长度(位)

格式

取值范围

输入值示例

32

有符号整数(十进制系统)

-2_147_483_648 到 +2_147_483_647

+125_790DINT#+125_790DINT#10#+125_790L#275

二进制数(仅正数)

2#0 到 2#0111_1111_1111_1111_1111_1111_1111_1111

2#0000_0000_0000_0001_1110_1011_0101_1110DINT#2#0000_0000_0000_0001_1110_1011_0101_1110DINT#2#10

八进制数(仅正数)

8#0 到 8#177_7777_7777

8#36_5536DINT#8#36_5536

十六进制数

16#0 到 16#7FFF_FFFF

16#0001_EB5EDINT#16#0001_EB5E

示例

下图将整数 +125790 显示为二进制数:

UDINT(32 位整数)

说明

数据类型 UDINT (Unsigned Double INT) 的操作数长度为 32 位,包括无符号数值。

数据类型 UDINT 的操作数在存储器中占用 4 BYTE。

下表列出了数据类型 UDINT 的属性:

长度(位)

格式

取值范围

输入值示例

32

无符号整数(十进制系统)

0 到 4_294_967_295

4_042_322_160UDINT#4_042_322_160UDINT#10#4_042_322_160

二进制数

2#0 到 2#1111_1111_1111_1111_1111_1111_1111_1111

2#1111_0000_1111_0000_1111_0000_1111_0000UDINT#2#1111_0000_1111_0000_1111_0000_1111_0000UDINT#2#10

八进制数

8#0 到 8#377_7777_7777

8#360_7417_0360UDINT#8#360_7417_0360

十六进制数

16#0 到 16#FFFF_FFFF

16#F0F0_F0F0UDINT#16#F0F0_F0F0

示例

下图将整数 4042322160 显示为二进制数:

LINT(64 位整数)

说明

数据类型 LINT (Long INT) 的操作数长度为 64 位,并由两部分组成:一部分是符号,另一部分是数值。位 0 到 62 的信号状态表示数值。位 63 的信号状态表示符号。符号可以是“0”(正信号状态),或“1”(负信号状态)。

数据类型 LINT 的操作数在存储器中占用 8 BYTE。

下表列出了数据类型 LINT 的属性:

长度(位)

格式

取值范围

输入值示例

64

有符号整数(十进制系统)

-9_223_372_036_854_775_808 到 +9_223_372_036_854_775_807

+154_325_790_816_159LINT#+154_325_790_816_159LINT#10#+154_325_790_816_159

二进制数(仅正数)

2#0 到 2#0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111

2#0000_0000_0000_0000_1000_1100_0101_1011_1100_0101_1111_0000_1111_0111_1001_1111LINT#2#0000_0000_0000_0000_1000_1100_0101_1011_1100_0101_1111_0000_1111_0111_1001_1111LINT#2#10

八进制数(仅正数)

8#0 到 8#7_7777_7777_7777_7777_7777

8#4305_5705_7417_3637LINT#8#4305_5705_7417_3637

十六进制数(仅正数)

16#0 到 16#7FFF_FFFF_FFFF_FFFF

16#0000_8C5B_C5F0_F79FLINT#16#0000_8C5B_C5F0_F79F

示例

下图将整数 +154325790816159 显示为二进制数:

ULINT(64 位整数)

说明

数据类型 ULINT (Unsigned Long INT) 的操作数长度为 64 位,包括无符号数值。

数据类型 ULINT 的操作数在存储器中占用 8 BYTE。

下表列出了数据类型 ULINT 的属性:

长度(位)

格式

取值范围

输入值示例

64

无符号整数(十进制系统)

0 到 18_446_744_073_709_551_615

154_325_790_816_159ULINT#154_325_790_816_159ULINT#10#154_325_790_816_159

二进制数

2#0 到 2#1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111

2#0000_0000_0000_0000_1000_1100_0101_1011_1100_0101_1111_0000_1111_0111_1001_1111ULINT#2#0000_0000_0000_0000_1000_1100_0101_1011_1100_0101_1111_0000_1111_0111_1001_1111ULINT#2#10

八进制数

8#0 到 8#17_7777_7777_7777_7777_7777

8#4305_5705_7417_3637ULINT#8#4305_5705_7417_3637

十六进制数

16#0 到 16#FFFF_FFFF_FFFF_FFFF

16#0000_8C5B_C5F0_F79FULINT#16#0000_8C5B_C5F0_F79F

示例

下图将整数 154325790816159 显示为二进制数:

标签: #unsigned long int #c语言16位整数