Siemens 系列:S7-200 系列_(10).数据处理指令.docx

Siemens 系列:S7-200 系列_(10).数据处理指令.docx

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE1

PAGE1

数据处理指令

1.移位指令

1.1左移指令(SHL)

左移指令SHL用于将指定的位数据向左移动指定的位数。左移操作可以用于数据的倍增或位操作。左移指令的基本格式如下:

SHLIN,N

IN:输入数据寄存器。

N:移位次数,范围为1-32。

原理

左移操作将数据寄存器中的数据按位向左移动,高位溢出的部分被丢弃,低位补0。每左移一位,相当于数据乘以2。

示例

假设我们要将VB0中的数据左移3位:

LSHL

LVB0

L3

ASHL

假设VB0的初始值为二进制),左移3位后,结果为二进制),即十进制的200。

1.2右移指令(SHR)

右移指令SHR用于将指定的位数据向右移动指定的位数。右移操作可以用于数据的除法或位操作。右移指令的基本格式如下:

SHRIN,N

IN:输入数据寄存器。

N:移位次数,范围为1-32。

原理

右移操作将数据寄存器中的数据按位向右移动,低位溢出的部分被丢弃,高位补0。每右移一位,相当于数据除以2。

示例

假设我们要将VB0中的数据右移2位:

LSHR

LVB0

L2

ASHR

假设VB0的初始值为二进制),右移2位后,结果为二进制),即十进制的44。

2.旋转指令

2.1旋转左指令(RL)

旋转左指令RL用于将指定的位数据向左旋转指定的位数。旋转操作将数据寄存器中的数据按位向左移动,溢出的高位会补充到低位。旋转左指令的基本格式如下:

RLIN,N

IN:输入数据寄存器。

N:旋转次数,范围为1-32。

原理

旋转左操作将数据寄存器中的数据按位向左移动,溢出的高位会补充到低位。每旋转一位,数据的最高位会被移动到最低位。

示例

假设我们要将VB0中的数据向左旋转4位:

LRL

LVB0

L4

ARL

假设VB0的初始值为二进制),向左旋转4位后,结果为二进制),即十进制的59。

2.2旋转右指令(RR)

旋转右指令RR用于将指定的位数据向右旋转指定的位数。旋转操作将数据寄存器中的数据按位向右移动,溢出的低位会补充到高位。旋转右指令的基本格式如下:

RRIN,N

IN:输入数据寄存器。

N:旋转次数,范围为1-32。

原理

旋转右操作将数据寄存器中的数据按位向右移动,溢出的低位会补充到高位。每旋转一位,数据的最低位会被移动到最高位。

示例

假设我们要将VB0中的数据向右旋转3位:

LRR

LVB0

L3

ARR

假设VB0的初始值为二进制),向右旋转3位后,结果为二进制),即十进制的236。

3.数据转换指令

3.1字节到整数转换(BYTE_TO_INT)

字节到整数转换指令BYTE_TO_INT用于将一个字节(8位)的数据转换为一个整数(16位)。该指令的基本格式如下:

BYTE_TO_INTIN,OUT

IN:输入数据寄存器(字节)。

OUT:输出数据寄存器(整数)。

原理

BYTE_TO_INT指令将输入的8位字节数据扩展为16位整数数据。高位字节补0。

示例

假设我们要将VB0中的字节数据转换为VW0中的整数数据:

LBYTE_TO_INT

LVB0

LVW0

ABYTE_TO_INT

假设VB0的初始值为二进制),转换后的VW0值为0000000010110011(二进制),即十进制的179。

3.2整数到字节转换(INT_TO_BYTE)

整数到字节转换指令INT_TO_BYTE用于将一个整数(16位)的数据转换为一个字节(8位)。该指令的基本格式如下:

INT_TO_BYTEIN,OUT

IN:输入数据寄存器(整数)。

OUT:输出数据寄存器(字节)。

原理

INT_TO_BYTE指令将输入的16位整数数据截取为8位字节数据。高位字节被丢弃。

示例

假设我们要将VW0中的整数数据转换为VB0中的字节数据:

LINT_TO_BYTE

LVW0

LVB0

AINT_TO_BYTE

假设VW0的初始值为0000000010110011(二进制),转换后的VB0值为二进制),即十进制的179。

3.3字节到双整数转换(BYTE_TO_DINT)

字节到双整数转换指令BYTE_TO_DINT用于将一个字节(8位)的数据转换

文档评论(0)

找工业软件教程找老陈 + 关注
实名认证
服务提供商

寻找教程;翻译教程;题库提供;教程发布;计算机技术答疑;行业分析报告提供;

1亿VIP精品文档

相关文档