信捷编程中的跳转指令用于控制程序的流程,包括无条件跳转、条件跳转、循环跳转和子程序跳转。以下是这些跳转指令的使用方法:
无条件跳转
JMP:无条件跳转到指定的地址。例如:`JMP LABEL1`,将程序的执行跳转到标号LABEL1的位置。
条件跳转
JZ:在累加器Z的值为0时跳转到指定的地址。例如:`JZ LABEL2`,如果Z为0,则跳转到LABEL2。
JNZ:在累加器Z的值为非0时跳转到指定的地址。例如:`JNZ LABEL3`,如果Z非0,则跳转到LABEL3。
JE:在相等时跳转到指定的地址。例如:`JE LABEL4`,如果零标志ZF为1,则跳转到LABEL4。
JNE:在不相等时跳转到指定的地址。例如:`JNE LABEL5`,如果零标志ZF为0,则跳转到LABEL5。
JS:在符号位为1时跳转到指定的地址。例如:`JS LABEL6`,如果符号位SF为1,则跳转到LABEL6。
JNS:在符号位为0时跳转到指定的地址。例如:`JNS LABEL7`,如果符号位SF为0,则跳转到LABEL7。
JC:在进位标志CF为1时跳转到指定的地址。例如:`JC LABEL8`,如果CF为1,则跳转到LABEL8。
JNC:在进位标志CF为0时跳转到指定的地址。例如:`JNC LABEL9`,如果CF为0,则跳转到LABEL9。
JO:在溢出标志OF为1时跳转到指定的地址。例如:`JO LABEL10`,如果OF为1,则跳转到LABEL10。
JNO:在溢出标志OF为0时跳转到指定的地址。例如:`JNO LABEL11`,如果OF为0,则跳转到LABEL11。
JA:无符号大于时跳转到指定的地址。例如:`JA LABEL12`,如果无符号数大于,则跳转到LABEL12。
JNA:无符号不大于时跳转到指定的地址。例如:`JNA LABEL13`,如果无符号数不大于,则跳转到LABEL13。
JAE:无符号大于等于时跳转到指定的地址。例如:`JAE LABEL14`,如果无符号数大于等于,则跳转到LABEL14。
JNAE:无符号不大于等于时跳转到指定的地址。例如:`JNAE LABEL15`,如果无符号数不大于等于,则跳转到LABEL15。
JG:有符号大于时跳转到指定的地址。例如:`JG LABEL16`,如果有符号数大于,则跳转到LABEL16。
JNG:有符号不大于时跳转到指定的地址。例如:`JNG LABEL17`,如果有符号数不大于,则跳转到LABEL17。
JGE:有符号大于等于时跳转到指定的地址。例如:`JGE LABEL18`,如果有符号数大于等于,则跳转到LABEL18。
JNGE:有符号小于等于时跳转到指定的地址。例如:`JNGE LABEL19`,如果有符号数小于等于,则跳转到LABEL19。
JNLE:有符号不小于等于时跳转到指定的地址。例如:`JNLE LABEL20`,如果有符号数不小于等于,则跳转到LABEL20。
JP:奇偶校验位为1时跳转到指定的地址。例如:`JP LABEL21`,如果奇偶校验位为1,则跳转到LABEL21。
JNP:奇偶校验位为0时跳转到指定的地址。例如:`JNP LABEL22`,如果奇偶校验位为0,则跳转到LABEL22。
JPE:奇偶校验位相等时跳转到指定的地址。例如:`JPE LABEL23`,如果奇偶校验位相等,则跳转到LABEL23[5