首页 理论教育 学习字符串和字符指令:掌握神器的使用

学习字符串和字符指令:掌握神器的使用

时间:2023-06-24 理论教育 版权反馈
【摘要】:字符串的首字节是字符串的最大长度,第2 个字节是当前长度,即当前实际使用的字符数。字符串占用的字节数为最大长度加2。图6-76字符串和字符指令执行字符串指令之前,首先应定义字符串,不能在变量表中定义字符串,只能在代码块的接口区或全局数据块中定义它。这些字符串和字符指令的具体使用方法请参考帮助文件或S7-1200 的系统手册。

学习字符串和字符指令:掌握神器的使用

1.字符串的结构与定义

字符串和字符指令如图6-76所示。STRING (字符串)数据有2B 的头部,后面是最多254B的ASCII 字符代码。字符串的首字节是字符串的最大长度,第2 个字节是当前长度,即当前实际使用的字符数。当前长度必须小于或等于最大长度。字符串占用的字节数为最大长度加2。

图6-75 日期和时间指令

图6-76 字符串和字符指令

执行字符串指令之前,首先应定义字符串,不能在变量表中定义字符串,只能在代码块的接口区或全局数据块中定义它。

生成符号名为“数据块_1”的全局数据块DB1,取消它的“优化的块访问”属性后,可以用绝对地址访问它。在数据块_ 1 中定义生成字符串变量String1、String2、String3,如图6-77所示。字符串的数据类型String [18] 中的“[18]”表示其最大长度为18 个字符,加上两个头部字节,共20B。String1 的起始地址(偏移量)为DBB0,String2 的偏移量为DBB20。如果字符串的数据类型为String (没有方括号),则每个字符串变量将占用256B。(www.xing528.com)

图6-77 数据块中的字符串变量

2.字符串转换指令

字符串转换指令可以将数字字符串转换为数值或将数值转换为数字字符串。

S_CONV 指令用于将输入的字符串转换为对应的数值,或将数值转换为对应的字符串。它可将参数IN 指定的整数、无符号整数或浮点数转换为输出OUT 指定的字符串。

STRG_ VAL 指令将数值字符串转换为对应的整数或浮点数。从参数IN 指定的字符串的第P 个字符开始转换,直到字符串结束。

VAL_STRG 指令将输入参数IN 中的整数、无符号整数或浮点数转换为输出参数OUT 中对应的字符串。被转换的字符串将取代OUT 字符串从参数P 提供的字符偏移量开始到参数SIZE 指定的字符数结束的字符。

字符串操作指令有LEN 指令、CONCAT 指令、LEFT 指令、RIGHT 指令、MID 指令、DELETE 指令、INSERT 指令、REPLACE 指令、FIND 指令,其功能简介如图6-76所示。在图6-76 中还有其他的字符串与字符指令。这些字符串和字符指令的具体使用方法请参考帮助文件或S7-1200 的系统手册。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈