SCL的程序控制语句
1、控制语句类型
控制语句分为四种类型:他们使用系统预留的关键字进行语句的语法定义。
分支程序
循环程序
退出循环
跳转
2、控制语句的调用
调用有两种方式:
1)使用右侧命令的程序控制指令中的控制语句模板
控制语句模板会具有固定的语法结构,他们是成套出现,因此可以降低难度,减少代码编写的工作量,也减少语法错误。
2)就是直接输入命令
这种情况可以使用程序的命令引导,也可以很会实现。但是在成对出现方面需要注意,并且养成良好的习惯,否则容易出错。
3、分支选择程序
分支选择程序结构,也称为判定结构,在SCL中使用IF语句或者CASE语句编程实现,这两个语句应该是程序中使用最多的语句。
1)IF语句
IF语句称为条件执行指令,可以根据条件控制程序流的分支。
分支的类型,有三种语句结构:
基本IF语句结构:
一个分支。
复合IF语句结构:
两个分支,二选一的选择程序。
嵌套IF语句结构
增加了ELSIF 关键字,在ELSIF关键字后的布尔量表达式为第二级的判定条件。
嵌套语句构成三个分支,IF分支,ELSIF分支,ELSE分支。
2)CASE语句
Case语句是多路分支指令,是实现分支选择程序结构的另一种语句。在构建多分支程序结构时,CASE语句比IF语句的结构更加清晰,直观。
关键字CASE开始,关键字END_CASE结束。内容包含:
- 在语句前部包括一个表达式,为分支程序的选择条件,表达式的值必须为整数或者位序列的数据类型。
- 语句中部包括由常数的值以及指令块组成的分支列表,前部与中部之间由OF关键字连接。支列表中的程序分支由表达式的可能值进行标识,每个值只能出现一次。
- 语句后部为ELSE关键字锁定义的特殊处理指令块。
Case语句的一个很重要的用法:
就是GRAPH语句类型在SCL中的实现,就是靠CASE语句来实现的,只是之间的运行会在不同的扫描周期内。
Case of #a //#a默认为0
0: 初始化,#a:=10;
10:处理程序;#a:=20;
20:处理程序;#a:=30;
……
ELSE 处理程序;#a:=0;
END CASE