西门子博途:INT(整数)

描述

 

 

INT(16 位整数)

说明

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

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

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

 

 

长度(位)

格式

取值范围

输入值示例

16

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

-32_768 到 +32_767

  • +3_785

  • INT#+3_785

  • INT#10#+3_785

二进制数(仅正数)

2#0 到 2#0111_1111_1111_1111

  • 2#0000_1110_1100_1001

  • INT#2#0000_1110_1100_1001

  • INT#2#10

八进制数

8#0 到 8#7_7777

  • 8#7311

  • INT#8#7311

十六进制数(仅正数)

16#0 到 16#7FFF

  • 16#0EC9

  • INT#16#0EC9

 

示例

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

数据类型

 

 

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_790

  • DINT#+125_790

  • DINT#10#+125_790

  • L#275

二进制数(仅正数)

2#0 到 2#0111_1111_1111_1111_1111_1111_1111_1111

  • 2#0000_0000_0000_0001_1110_1011_0101_1110

  • DINT#2#0000_0000_0000_0001_1110_1011_0101_1110

  • DINT#2#10

八进制数(仅正数)

8#0 到 8#177_7777_7777

  • 8#36_5536

  • DINT#8#36_5536

十六进制数

16#0 到 16#7FFF_FFFF

  • 16#0001_EB5E

  • DINT#16#0001_EB5E

 

示例

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

数据类型

 

 

 

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_159

  • LINT#+154_325_790_816_159

  • LINT#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_1111

  • LINT#2#0000_0000_0000_0000_1000_1100_0101_1011_1100_0101_1111_0000_1111_0111_1001_1111

  • LINT#2#10

八进制数

8#0 到 8#7_7777_7777_7777_7777_7777

  • 8#4305_5705_7417_3637

  • LINT#8#4305_5705_7417_3637

十六进制数(仅正数)

16#0 到 16#7FFF_FFFF_FFFF_FFFF

  • 16#0000_8C5B_C5F0_F79F

  • LINT#16#0000_8C5B_C5F0_F79F

 

示例

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

数据类型

 

 

INT 显式转换

显式转换选项

下表列出了 INT 数据类型显式转换的选项和指令:

 

 

目标

转换

说明

指令助记符

INT

BOOL

X

可能出现以下情况:

  • 如果源为“0”,则目标数据类型也为“0”且使能输出 ENO 为“1”。

  • 如果只有源值的最低有效位 LSB 为“1”,则目标数据类型也为“1”且使能输出 ENO 为“1”。

  • 如果源值其它位不等于最低有效位,则目标数据类型根据 LSB 进行设置且使能输出 ENO 为“0”。

INT_TO_BOOL

BYTE1)

X

源值的位模式以右对齐方式原样传递给目标数据类型。若将负数值转换为无符号的目标数据类型,则使能输出 ENO 设置为“0”。

INT_TO_BYTE

WORD1)

X

INT_TO_WORD

DWORD1)

X

INT_TO_DWORD

LWORD1)

X

INT_TO_LWORD

SINT

X

源值的位模式转换并传递给目标数据类型。(值 "-1" (16#FF) 变为 "-1" (16#FFFFFFFF))。若将负数值转换为无符号的目标数据类型,则使能输出 ENO 设置为“0”。

INT_TO_SINT

USINT

X

INT_TO_USINT

UINT

X

INT_TO_UINT

DINT

X

INT_TO_DINT

UDINT

X

INT_TO_UDINT

LINT

X

INT_TO_LINT

ULINT

X

INT_TO_ULINT

REAL

X

将值转换为目标数据类型格式。例如,通过“转换值”(CONVERT) 指令可以将值“-1”更改为“-1.0”。

INT_TO_REAL, NORM_X

LREAL

X

INT_TO_LREAL, NORM_X

TIME

X

数值传递给目标数据类型且单位为毫秒。

INT_TO_TIME

LTIME

X

数值传递给目标数据类型且单位为毫微秒。

INT_TO_LTIME

S5TIME

-

不能进行显式转换

-

LDT

X

返回结果为自 1970-1-1-00.0 起的毫微秒时间。

INT_TO_LDT

DT

-

不能进行显式转换

-

DTL

-

-

TOD

X

源值的位模式转换并传递给目标数据类型。(值 "-1" (16#FF) 变为 "-1" (16#FFFFFFFF))。若将负数值转换为无符号的目标数据类型,则使能输出 ENO 设置为“0”。(从 0:0 开始,以毫秒为单位说明;检查 24h 限制)

INT_TO_TOD

LTOD

X

源值的位模式转换并传递给目标数据类型。(值 "-1" (16#FF) 变为 "-1" (16#FFFFFFFF))。若将负数值转换为无符号的目标数据类型,则使能输出 ENO 设置为“0”。(从 0:0 开始,以纳秒为单位说明;检查 24h 限制)

INT_TO_LTOD

DATE

X

源值的位模式转换并传递给目标数据类型。(值 "-1" (16#FF) 变为 "-1" (16#FFFFFFFF))。若将负数值转换为无符号的目标数据类型,则使能输出 ENO 设置为“0”。(从 1990-1-1 开始,以天为单位说明;检查负值)

INT_TO_DATE

STRING

X

将值转换为字符串。

  • LAD / FBD / STL:

    该字符串的第一个字符将使用空格进行填充。空格的数量取决于数字值的长度。

    输出正数字值时不带符号。

  • SCL:

    不添加空格。

    字符串前面带有符号位。

若超出字符串允许的长度,则使能输出 ENO 设置为“0”。

INT_TO_STRING, S_CONV, VAL_STRG

WSTRING

X

INT_TO_WSTRING

CHAR1)

X

源值的位模式转换并传递给目标数据类型。(值 "-1" (16#FF) 变为 "-1" (16#FFFFFFFF))。若将负数值转换为无符号的目标数据类型,则使能输出 ENO 设置为“0”。

INT_TO_CHAR

WCHAR1)

X

INT_TO_WCHAR

BCD16

X

待转换的值为 -999 到 +999 之间的整数值,数据类型为 INT。转换结果为 WORD 类型的 BCD 码。发生实数转换。如果值不在目标区域内,不会触发同步错误,而只会置位状态位 OV。

INT_TO_BCD16

BCD16_WORD

X

INT_TO_BCD16_WORD

√:可以转换

-:不可转换

1) 位串(BYTE、WORD、DWORD、LWORD)及数据类型 CHAR 和 WCHAR 一开始就扩展成包括符号位在内需要的宽度,然后复制这些位。源类型决定了解释方法。

     

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分