JCB:若 RLO = "1" 则跳转,并保存RLO (S7-1500) 说明 使用“若 RLO = 1 则跳转,并保存 RLO”指令,将根据逻辑运算的结果 (RLO)中断线性程序的 执行,并在指定的跳转标签标记处恢复程序执行。将当前 RLO 的信号状态复制到二 进制结果 (BR) 中。只有在当前的 RLO 为“1”时,才会跳转到指定的跳转标签处。在这种情况下,该指令会将二 进制结果置位为“1”。在指令执行之前,如果当前 RLO 为“0”,则不执行跳转,且在下一条指令处恢复执行程序。在这种情况下,该指令会将信号状态“0”分配给二进制结果。 无论是否满足条件,“若 RLO = 1 则跳转,并保存 RLO”指令都会将RLO 置位为“1”。JNB: 若 RLO = "0" 则跳转,并保存 RLO (S7-1500) 说明 使用“若 RLO = 0则跳转,并保存 RLO”指令,将根据逻辑运算的结果 (RLO) 中断线性程序的执行,并在指定的跳转标签标记处恢复程序执行。将当前逻辑运算结果的信号状态复 制到二进制结果 (BR) 中。 只有在当前的 RLO为“0”时,才会跳转到指定的跳转标签处。在这种情况下,该指令会将二 进制结果置位为“0”。 在指令执行之前,如果当前 RLO为“1”,则不执行跳转,且在下一条指令处恢复执行程序。在 这种情况下,该指令会将信号状态“1”分配给二进制结果。无论是否满足条件,“若 RLO = 0 则跳转,并保存 RLO”指令都会将 RLO 置位为“1”。
JBI: 若 BR = 1 则跳转(S7-1500) 说明 使用“若 BR = 1 则跳转”指令,将根据二进制结果中断线性程序的执行,并在指定的跳转标签标记处继续程序执行。 只有在状态位 BR 为“1”时,才会跳转到指定跳转标签处。如果状态位 BR 为“0”,则不执行跳转,且在下一条指令处继续执行程序。JNBI: 若 BR = 0 则跳转 (S7-1500) 说明 使用“若 BR = 0则跳转”指令,将根据二进制结果 (BR) 中断线性程序的执行,并在指定的 跳转标签标记处继续程序执行。只有在状态位 BR为“0”时,才会跳转到指定跳转标签处。在指令执行之前,如果状态位 BR 为 “1”,则不执行跳转,且在下一条指令处继续执行程序。JO:若 OV = 1 则跳转 (S7-1500) 说明 使用“若 OV = 1 则跳转”指令,将根据状态位 OV中断线性程序的执行,并在指定的跳转 标签标记处继续程序执行。 只有在状态位 OV为“1”时,才会跳转到指定跳转标签处。例如,如果计算的结果在允许范围 之外,或在比较浮点数时返回了无效值,则将置位状态位 OV。如果状态位 OV 为“0”,则不执行跳转,且在下一条指令处继续执行程序。JOS: 若 OS = 1 则跳转 (S7-1500) 说明使用“若 OS = 1 则跳转”指令,将根据状态位 OS 中断线性程序的执行,并在指定的跳转标 签标记处继续程序执行。 只有在状态位OS 为“1”时,才会跳转到指定跳转标签处。发生数值范围溢出时,状态位 OV 将置位为“1”,此时将始终置位状态位 OS。与状态位OV 不同,该结果位于所允许的数 字范围内,也会置位状态位 OS。 如果状态位 OS为“0”,则不执行跳转,且在下一条指令处继续执行程序。JZ: 若结果为零则跳转 (S7-1500) 说明使用“若结果为零则跳转”指令,将根据状态位 CC 0 和 CC 1 来中断线性程序的执行,并在指定的跳转标签标记处继续程序执行。只有在状态位 CC 0 和 CC 1 的信号状态都为“0”时,才会跳到指定跳转标签处。满足下列条件之一时便会出现这种情况: • 在执行未发生溢出的算术指令后,累加器 1 的值为“0”。 • 当执行“加整数(16 位)”(+I)或“加双整型数(32 位)”(+D) 指令时,发生负值溢出。 • 在执行发生溢出的算术指令(浮点数算术)时,值会逐渐降至允许范围以下。• 执行比较指令后,累加器 1 和 2 中的内容相等。 • 执行字逻辑运算后,累加器 1 中的内容为零。 •执行移位指令后,Zui后一个移出位的值为“0”。 在其它任何情况下均不执行跳转,并且在下一条指令时恢复执行程序。JN: 若结果不为零则跳转(S7-1500) 说明 使用“若结果不为零则跳转”指令,将根据状态位 CC 0 和 CC 1 来中断线性程序的执行,并在指定的跳转标签标记处继续程序执行。 只有在状态位 CC 0 和 CC 1 的信号状态不才会跳到指定跳转标签处。满足下列条件之一时便会出现这种情况: • 在执行未发生溢出的算术指令后,累加器 1 的值不等于零。 •在执行针对整数的算术指令(+I、-I、*I、+D、-D、*D)时,发生负值溢出。 •在对整数进行算术指令(+I、-I、*I、/I、+D、-D、*D、/D、NEGI、NEGD)时,发生正 值溢出。 •在执行针对浮点数的算术指令时,发生正值或负值溢出。 • 执行比较指令后,累加器 1 和 2 中的内容不相等。 •执行字逻辑运算之后,累加器 1 中的内容不为零。 • 执行移位指令后,Zui后一个移出位的值为“1”。在其它任何情况下均不执行跳转,并且在下一条指令时恢复执行程序。JP: 若结果大于零(正值)则跳转 (S7-1500) 说明使用“若结果大于零(正值)则跳转”指令,将根据状态位 CC 0 和 CC 1 来中断线性程序的执行,并在指定的跳转标签标记处继续程序执行。只有在状态位 CC 0 为“0”且 CC 1的信号状态为“1”时,才会跳到指定跳转标签处。满足下列 条件之一时便会出现这种情况: • 在执行未发生溢出的算术指令后,累加器 1的值大于零。 • 在执行针对整数的算术指令(+I、-I、*I、+D、-D、*D)时,发生负值溢出。 •在执行针对整数的算术指令(*I、/I、*D、/D)时,发生正值溢出。 • 在执行针对浮点数的算术指令时,发生正值溢出。 •执行比较函数后,累加器 2 中的内容大于累加器 1 中的内容。 • 执行逻辑运算之后,累加器 1 中的内容不为零。 •执行移位指令后,Zui后一个移出位的值为“1”。 在其它任何情况下均不执行跳转,并且在下一条指令时恢复执行程序。JM:若结果小于零(负值)则跳转 (S7-1500) 说明 使用“若结果小于零(负值)则跳转”指令,将根据状态位 CC 0 和 CC 1来中断线性程序的 执行,并在指定的跳转标签标记处继续程序执行。 只有在状态位 CC 0 的信号状态为“1”且 CC 1的信号状态为“0”时,才会跳到指定跳转标签处。 满足下列条件之一时便会出现这种情况: • 在执行未发生溢出的算术指令后,累加器 1的值小于零。 • 在执行针对整数的算术指令(*I、*D)时,发生负值溢出。 •在执行针对整数的算术指令(+I、-I、+D、-D、NEGI、NEGD)时,发生正值溢出。 •在执行针对浮点数的算术指令时,发生负值溢出。 • 执行比较函数后,累加器 2 中的内容小于累加器 1 中的内容。在其它任何情况下均不执行跳转,并且在下一条指令时恢复执行程序。JPZ: 若结果大于或等于零则跳转 (S7-1500) 说明使用“若结果大于或等于零则跳转”指令,将根据状态位 CC 0 来中断线性程序的执行,并在指定的跳转标签标记处继续程序执行。只有在状态位 CC 0 的信号状态为“0”时,才会跳转到指定跳转标签处。满足下列条件之一时便会出现这种情况: • 在执行未发生溢出的算术指令后,累加器 1 的值大于或等于零。 •在执行针对整数的算术指令(+I、-I、*I、+D、-D、*D)时,发生负值溢出。 •在执行针对整数的算术指令(*I、/I、*D、/D)时,发生正值溢出。 • 在执行针对浮点数的算术指令时,发生正值溢出。 •在执行发生溢出的算术指令(浮点数算术)时,值会逐渐降至允许范围以下。 • 执行比较函数后,累加器 2 的内容大于或等于累加器 1的内容。 • 执行了字逻辑运算指令。 • 执行了移位指令。 在其它任何情况下均不执行跳转,并且在下一条指令时恢复执行程序。JMZ:若结果小于或等于零则跳转 (S7-1500) 说明 使用“若结果小于或等于零则跳转”指令,将根据状态位 CC 1来中断线性程序的执行,并 在指定的跳转标签标记处继续程序执行。 只有在状态位 CC 1的信号状态为“0”时,才会跳转到指定跳转标签处。满足下列条件之一时 便会出现这种情况: • 在执行算术指令后如果未发生溢出,则累加器1 的值小于或等于零。 • 在执行针对整数的算术指令(+I、*I、+D、*D)时,发生负值溢出。 •在执行针对整数的算术指令(+I、-I、+D、-D、NEGI、NEGD)时,发生正值溢出。 •在执行针对浮点数的算术指令时,发生负值溢出。 • 在执行发生溢出的算术指令(浮点数算术)时,值会逐渐降至允许范围以下。 •执行比较指令后,累加器 2 的内容小于或等于累加器 1 的内容。 • 处理字逻辑后,累加器 1 的值等于零。 •执行写指令后,Zui后一个移出位的值为零。 在其它任何情况下均不执行跳转,并且在下一条指令时恢复执行程序。JUO: 若结果无效则跳转(S7-1500) 说明 使用“若结果无效则跳转”指令,将根据状态位 CC 0 和 CC 1 来中断线性程序的执行,并在指定的跳转标签标记处继续程序执行。 只有在状态位 CC 0 和 CC 1 的信号状态都为“1”时,才会跳到指定跳转标签处。满足下列条件之一时便会出现这种情况: • 使用数学指令(/I、/D、MOD)被零整除时。 •使用浮点数执行算术指令时,发生溢出并且结果值为无效的浮点数。 • 使用浮点数执行比较指令时,使用了无效的浮点数或者结果值为无效浮点数。在其它任何情况下均不执行跳转,并且在下一条指令时恢复执行程序。