在宏程序中,可以使用不同的跳转指令来实现程序的跳转。以下是几种常见的宏程序跳转方法:
GOTOS
跳回到程序开始。
GOTOB
以程序开始方向的带跳转目标的跳转指令。
GOTOF
以程序末尾方向的带跳转目标的跳转指令。
GOTO
带跳转目标查找的跳转指令。查找先向程序末尾方向进行,然后再从程序开始处进行查找。如果这种运算的结果为TRUE,则执行程序跳转。句法:CASE(表达式)OF常量_1GOTOF跳转目标_1常量_2GOTOF跳转目标_2...DEFAULTGOTOF跳转目标_n。
CASE 语句:可以检测一个变量或者一个计算函数当前值(类型:INT),根据结果跳转到程序中的不同位置。句法:CASE()OF常量_1GOTOF跳转目标_1常量_2GOTOF跳转目标_2...DEFAULTGOTOF跳转目标_n。例如,以下程序会根据计算结果跳转到不同的标签:
```
N30 CASE(VAR1+VAR2-VAR3)OF
GOTOFLabel_19
GOTOFLabel_2
DEFAULTGOTOFLabel_3
```
G65
可以用于调用宏程序,并指定实参。
G66和 G67
用于模态调用宏程序。
M代码和T代码的子程序调用
可以通过M代码或T代码的子程序调用宏程序。
建议
在使用宏程序跳转时,建议先明确跳转条件和目标位置,以确保程序的逻辑清晰且易于维护。
使用 CASE语句时,确保所有可能的跳转目标都已经定义,并且避免遗漏 DEFAULT分支,以处理未预料到的情况。
如果需要跳过多个连续的程序段,可以考虑使用宏程序中的循环结构和条件判断来实现,而不是依赖系统级别的跳段功能。