SIEMENS西门子广东省韶关市(授权)一级代理商——西门子伺服电机华南总代理
- 供应商
- 广东湘恒智能科技有限公司
- 认证
- 西门子总代理
- PLC
- 西门子一级代
- 驱动
- 西门子代理商
- 伺服电机
- 联系电话
- 15903418770
- 手机号
- 15915421161
- 联系人
- 张经理
- 所在地
- 惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房
- 更新时间
- 2024-06-01 07:00
说明:关系表达式将两个操作数的值或数据类型进行比较,然后得到一个布尔值。如果比较结果为真,则结果为 true,否则为false。
关系运算符可以处理当前 cpu 所支持的各种数据类型。结果的数据类型始终为 bool。
编写关系表达式时,请注意以下规则:
以下数据类型组中的所有变量都可以进行比较:
整数/浮点数
位、位序列
字符串
对于以下数据类型,只能比较相同类型的变量:
time
日期和时间
udt
array
struct
variant
string 比较是对以 windows 字符集编码的字符进行比较;而 wsting比较则是对 utf-16编码的字符进行比较。在比较过程中,将比较变量的长度及各字符对应的数值。
array 比较需要数组维度、数组元素数据类型与数量完全相同
udt、array、struct、variant等进行的比较只能使用s7-1200 v4.2及其以上的版本。
关系表达式的数据类型
表2列出了在关系表达式中可使用的数据类型/数据类型组:
小于、小于等于、大于、大于等于 | <、<=、>、>= | 6 | 整数/浮点数 | 整数/浮点数 | bool |
位序列 | 位序列 | bool | |||
字符串 | 字符串 | bool | |||
time | time | bool | |||
日期和时间 | 日期和时间 | bool | |||
等于、不等于 | ==、<> | 7 | 整数/浮点数 | 整数/浮点数 | bool |
位序列 | 位序列 | bool | |||
字符串 | 字符串 | bool | |||
time | time | bool | |||
日期和时间 | 日期和时间 | bool | |||
variant | 任意数据类型 | bool | |||
udt | udt | bool | |||
array | array | bool | |||
struct | struct | bool |
示例
以下举例说明了一个关系表达式:
if a > b then c:= a;
if a > 20 and b < 20 then c:= true;
if a<>(b and c) then c:= false;
说明:逻辑表达式由两个操作数和逻辑运算符(and、or 或 xor)或取反操作数 (not) 组成。
逻辑运算符可以处理当前 cpu 所支持的各种数据类型。如果两个操作数都是 bool 数据类型,则逻辑表达式的结果也为bool数据类型。如果两个操作数中至少有一个是位序列,则结果也为位序列而且结果是由高操作数的类型决定。例如,当逻辑表达式的两个操作数分别是byte 类型和 word 类型时,结果为 word类型。
逻辑表达式中一个操作数为 bool类型而另一个为位序列时,必须先将 bool类型的操作数显式转换为位序列类型。
逻辑表达式的数据类型
下表列出了逻辑表达式中可使用的数据类型:
取反 | not | 3 | bool | - | bool |
求反码 | 位序列 | - | 位序列 | ||
与 | and、& | 8 | bool | bool | bool |
位序列 | 位序列 | 位序列 | |||
异或 | xor | 9 | bool | bool | bool |
位序列 | 位序列 | 位序列 | |||
或 | or | 10 | bool | bool | bool |
位序列 | 位序列 | 位序列 |
展开全文