按位异或 (XOR)

此信息适用于 CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370、GuardLogix 5570、Compact GuardLogix 5380、CompactLogix 5380、ControlLogix 5580、GuardLogix 5580 和 ControlLogix 5590 控制器。在适用的情况下会注明控制器的差异。
XOR 指令使用 Source A 和 Source B 中的位执行按位异或运算,并将结果放入 Dest 中。
可用语言
梯形图
XOR_LD_avail_v31
功能块图
功能块图支持以下元素:
功能块
XOR_FBD_avail_v31
FBD 函数
小贴士: FBD 函数仅适用于 CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器。
XOR_avail_FBDFunction_v33
结构化文本
此指令不可用于结构化文本中。
小贴士: 在表达式中使用 XOR 运算符可以计算出相同的结果。有关结构化文本中表达式和赋值语法的信息,请参见结构化文本语法部分。
操作数
重要提示: 以下情况下会导致运行出现意外:
  • 输出标签操作数被覆盖。
  • 结构操作数的成员被覆盖。
  • 除非另外指定,否则结构操作数由多条指令共用。
指令中混用数据类型时,需遵从相关的数据转换规则。请参阅数据转换“数据转换”部分。
梯形图
操作数
数据类型
CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370 和 GuardLogix 5570 控制器
数据类型
CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器
格式
说明
Source A
SINT
INT
DINT
REAL
SINT
INT
DINT
LINT
USINT
UINT
UDINT
ULINT
REAL
LREAL
立即数
标签
要与 Source B 执行异或运算的值。//浮点型包括 REAL 和 LREAL 数据类型。
小贴士: 浮点型输入将转换为整数,这可能导致溢出。
Source B
SINT
INT
DINT
REAL
SINT
INT
DINT
LINT
USINT
UINT
UDINT
ULINT
REAL
LREAL
立即数
标签
与 Source A 执行异或运算的值。
提醒事项: 浮点型输入将转换为整数,这可能导致溢出。
Dest
SINT
INT
DINT
REAL
SINT
INT
DINT
LINT
USINT
UINT
UDINT
ULINT
REAL
LREAL
标签
用于存储指令结果的标签。
小贴士: 如果数据类型为浮点型,则得出的值将转换为浮点型。
小贴士: 当需要针对输入值进行整数提升时,使用零扩展将较小的类型转换为较大的类型。
功能块
操作数
数据类型
格式
说明
XOR
FBD_LOGICAL
标签
XOR 结构
FBD_LOGICAL 结构
输入成员
数据类型
说明
EnableIn
BOOL
启用输入。如果为假,指令不会执行,也不会更新输出。
默认值为真。
SourceA
DINT
与 SourceB 执行异或运算的值。
SourceB
DINT
与 SourceA 执行异或运算的值。
输出成员
数据类型
说明
EnableOut
BOOL
指示指令使能后是否无故障执行。
Dest
DINT
指令结果。
FBD 函数
输入操作数(左侧引脚)
数据类型
CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器
说明
SourceA(上方)
SINT
USINT
INT
UINT
DINT
UDINT
LINT
ULINT
REAL
LREAL
与 Source B 执行或运算的值。
SourceB (bottom)
SINT
USINT
INT
UINT
DINT
UDINT
LINT
ULINT
REAL
LREAL
与 Source A 执行或运算的值。
输出操作数(右侧引脚)
数据类型
CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器
说明
Dest
DINT
UDINT
LINT
ULINT
函数的结果。
说明
使能后,该指令进行按位异或运算:
Dest = Source A XOR Source B
如果 Source A
中的位是:
并且 Source B
中的位是:
那么 Dest
中的位是:
0
0
0
0
1
1
1
0
1
1
1
0
影响数学状态标志
控制器
影响数学状态标志
CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器
在一定条件下影响
CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370 和 GuardLogix 5570 控制器
请参见数学状态标志部分。
严重/轻微故障
没有特定于此指令的故障。请参见“数组索引编制”通过数组建立索引,了解关于数组索引故障的信息。
执行
梯形图
条件/状态
执行的操作
预扫描
不适用
梯级输入条件为假
将梯级输出条件设置为梯级输入条件
梯级输入条件为真
将梯级输出条件设置为梯级输入条件
Dest 按“说明”部分所述进行设置。
后扫描
不适用
功能块
条件/状态
执行的操作
预扫描
不适用
EnableIn 为假
将 EnableOut 设为 EnableIn
EnableIn 为真
将 EnableOut 设为 EnableIn
Dest 按“说明”部分所述进行设置。
指令首次运行
不适用
指令首次扫描
不适用
后扫描
不适用
示例
梯形图
L5K_XOR_LD_ex_v31
功能块
XOR_FBD_ex_v31
FBD 函数
XOR_example_FBDFunction_v33
结构化文本
value_result_XOR := value_1 XOR value_2;
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal