(40)用户角度下 SFC 运行系统的行为-2

• 工艺选项卡中的条件命令以及各命令的赋值语句,通常在单独的循环中依次执行,而不 会同时执行。如果受影响的命令或命令序列的赋值语句尚未全部执行,则 THEN 分支和 ELSE 分支之间的步更改或处理更改将禁用。
• 如果 IF 语句条件的计算结果发生更改(从 TRUE 变为 FALSE,或从 FALSE 变为 TRUE), 则 THEN 分支和 ELSE 分支(如果存在)将在后续循环中依次执行。更改条件的计算结果 时,还将终止(执行“终止”(Termination) 选项卡中的赋值语句)THEN 分支或 ELSE 分 支中受影响的命令或命令序列。
• 条件命令上下文可能存在以下情况:仅当运行系统已完成“初始化”(Initialization) 阶段并 处于“正在处理”(Processing) 阶段时,才满足条件。此时,运行系统将改为在“正在处 理”(Processing) 阶段执行“初始化”(Initialization) 选项卡中命令序列的所有赋值语句。如 果条件命令或命令序列在“正在处理”(Processing) 选项卡中也包含赋值语句,则无论条 件是否满足,运行系统随后都必需保持为“正在处理”(Processing) 阶段至少一个周期。此 循环将不考虑其它备选命令序列(THEN 分支或 ELSE 分支),即使满足条件也将予以忽 略,即使满足转换条件,仍会挂起。
• 如果满足转换条件,则即使对于条件命令,在步的更改过程中也会执行“终 止”(Termination) 选项卡中激活的命令或命令序列的所有语句。
• 分步使用条件命令(使用 IF、IF-ELSE 语言元素)时,相比包含替代分支的常规编程,存 储容量要求(代码存储器)总是更高。 请注意,在计算这些情况下的预留空间时,必须考虑存储容量要求的提高。特别要注意, 必须为程序扩展预留足够的存储空间。