前辈:在这段程序里JU是如何知道前面逻辑结果是1呢?是根据LB#16#F3这条语句吗?
图片说明:
db1c56f1fac5f3b0a99d69ad0b2387FC
最佳答案
你的程序里是JC指令不是JU啊
JU是无条件跳转,只要程序运行到JU指令出就执行跳转
你的程序的JC是有条件跳转,当RLO为1时执行跳转指令
也就是
LDB_RET_VAL
L0
<>I
的比较结果的RLO为1时,即DB_RET_VAL是非零的整数时,上面的<>I指令后RLO就会变为1,那么就将执行JC指令,程序从mend标号处继续执行。
LB#16#F3这条语句仅仅改变累加器1的类容,不会影响RLO的。SIEMENS每个指令的说明都会有说明,它们会影响哪些状态位。
提问者对于答案的评价:
谢谢答复
专家置评
已阅,最佳答案正确。