表达式是一种进行计算后会返回值的结构。该值在指令中使用。
表达式由操作符、操作数和/或赋值组成。操作数可为常量、变量、功能调用或另一个表达式。
示例
|
(* 常量 *) |
|
(* 变量 *) |
|
(* 功能调用*) |
|
(* 表达式 *) |
|
(* 表达式 *) |
|
(* 分配,请参阅下文 *) |
表达式的计算通过根据特定规则处理操作符来执行。首先处理最高运算次序的操作符,然后处理下个级别的操作符,以此类推,直到处理完所有操作符。
在下面是 ST 运算符的表格,运算符按操作级别顺序排列:
操作 |
符号 |
操作级别 |
---|---|---|
置于括号中 |
(表达式) |
最高次序 |
功能调用 |
功能名称(参数列表) |
.............. |
幂 |
EXPT |
............. |
取反 |
– |
............ |
构建补偿 |
NOT |
........... |
乘 |
* |
.......... |
除 |
/ |
......... |
模数 |
MOD |
........ |
加 |
+ |
....... |
减 |
– |
...... |
比较 V |
<,>,<=,>= |
..... |
等于 |
= |
.... |
不等于 |
<> |
... |
布尔 AND |
AND |
.. |
布尔 XOR |
XOR |
. |
布尔 OR |
OR |
最低次序 |
作为 IEC 61131-3 标准 (ExST) 的扩展,可以表达式的形式使用赋值。
示例:
|
(* |
|
(* 正确赋值, |
|
(* 由于类型不匹配 |
|
(*在 IF 条件声明中使用的表达式:首先根据 |