您现在的位置是:首页 > PLC技术 > PLC技术
STL编程语言中使用CC0和CC1的跳转功能
来源:艾特贸易2017-06-05
简介通过 CC0 和 CC1 可以实现条件程序分支(如表 16-2 所示),这允许用户检测计算结果是正数、零或负数。 表 16-2 CC0 和 CC1 跳转功能 1 .设置状态位 以 CC0 和 CC1 状态为条件的跳转功能不会
通过CC0和CC1可以实现条件程序分支(如表16-2所示),这允许用户检测计算结果是正数、零或负数。
表16-2 CC0和CC1跳转功能
1.设置状态位
以CC0和CC1状态为条件的跳转功能不会改变其他任何状态位。跳转时,RLO相随,并可进一步组合(/FC无变化)。
二进制检测是检测状态位的另一种方法。
2.如果结果为零则跳转
仅当CC0=“0”和CC1=“0”时才执行跳转功能JZ。符合情况的有下列情形:
●执行算术或数学功能后,累加器1的内容为0。
●比较功能时,累加器1与累加器2的内容相同。
●处理数字逻辑运算后,累加器1的内容为0。
●执行移位功能之后,被移动的最后一位的值为0。
其余情况下,JZ继续执行程序的下一条语句。
3.如果结果不为零则跳转
仅当CC0和CC1状态位有不同的信号状态时,才执行跳转功能JN。符合情况的有下列情形:
●执行算术或数学功能后,累加器1的内容不为0。
●执行比较功能时,累加器1与累加器2的内容不相同。
●处理数字逻辑运算后,累加器1的内容不为0。
●执行移位功能之后,被移位的最后一位的值为1。
其余情况下,JN继续执行程序的下一条语句。
4.如果结果大于零则跳转
仅当CC0=“0”和CC1=“1”时,才执行跳转功能JP。符合情况的有下列情形:
●执行算术或数学功能之后,累加器1的内容在允许的正数范围之内(用户使用J0
和JOS来检测是否超出数字范围)。
●执行比较功能时,累加器2的内容大于累加器1的内容。
●处理数字逻辑运算后,累加器1的内容不为0。
●执行移位功能之后,被移位的最后一位的值为1。
其余情况下,JP继续执行程序的下一条语句。
5.如果结果大于或等于零则跳转
仅当CC0=“0”时才执行跳转功能JPZ。符合情况的有下列情形:
●执行算术或数学功能之后,累加器1的内容为0或在允许的正数范围之内(用户使
用JO和JOS来检测是否超出数字范围。
●执行比较功能时,累加器2的内容等于或大于累加器1的内容。
●位于每一个数字逻辑运算之后。
●位于每一个移位功能之后。
其余情况下,JPZ继续执行程序的下一条语句。
6.如果结果小于零则跳转
仅当CC0=“1”和CC1=“0”时才执行跳转功能JM。符合情况的有下列情形:
●执行算术或数学功能之后,累加器1的内容在允许的负数范围之内(用户使用JO
和JOS来检测是否超出数字范围)。
●执行比较功能时,累加器2的内容小于累加器1的内容。
其余情况下,JM继续执行程序的下一条语句。
7.如果结果小于或等于零则跳转
仅当CC1=“0”时才执行跳转功能JMZ。符合情况的有下列情形:
●执行算术或数学功能之后,累加器1的内容为0或在允许的负数范围之内(用户使
用JO和JOS来检测是否超出数字范围)。
●执行比较功能时,累加器2的内容等于或小于累加器1的内容。
其余情况下,JMZ继续执行程序的下一条语句。
8.如果结果无效则跳转
仅当CC0=“1”和CC1=“1”时,才执行跳转功能JUO。符合情况的有下列情形:
●执行算术功能时,零作除数。
●无效的REAL数被指定为输入值或作为结果。
其余情况下,JUO继续执行程序的下一条语句。
点击排行
