编程中的程序控制与代码块调用
1. 跳转函数
1.1 JNB跳转函数
JNB跳转函数在处理时,仅当逻辑运算结果为“0”时才会执行跳转操作。若结果为“1”,则不进行跳转,程序将继续执行下一条语句。同时,JCB和JNB会将逻辑运算结果传递给二进制结果,即便条件未满足,它们也会将逻辑运算结果设置为“1”。若此跳转函数之后的语句包含依赖逻辑运算结果的操作,当不执行跳转时,这些语句将被执行。若该跳转函数之后紧跟扫描语句,这些扫描将被视为首次输入位扫描,即开始新的逻辑运算。
1.2 跳转列表
- LAD和FBD中的JMP_LIST :通过JMP_LIST框可定义一个跳转标签列表。插入该框时,会显示两个输出参数DEST0和DEST1,每个参数需指定一个跳转标签,列表最多可扩展至99个跳转标签。跳转目标位于同一程序块中网络的起始位置。JMP_LIST根据参数K的值执行跳转,若K为0,程序将在DEST0指定的跳转标签处继续执行;若K为1,则选择DEST1指定的跳转标签,依此类推。若K的值大于定义的跳转标签数量,程序将继续执行下一个网络。使能输入EN可用于控制JMP_LIST框的处理,该框单独位于一个网络中。
- STL中的JL :JL操作与JU跳转函数列表配合使用,该列表紧跟JL,最多可有255个条目。JL有一个指向列表末尾(即列表后第一条语句)的跳转标签。要执行的跳转编号位于累加器1的右字节中。若累加器1中为0,则执行第一条跳转语句;若为1,则执行第二条跳转语句,依此类推。若该编号大于列表长度,JL将分支到列表末尾。JL独立于条件,且不改变状态位,列表中只能无间隙
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



