![工业机器人实战应用及调试](https://wfqqreader-1252317822.image.myqcloud.com/cover/838/43806838/b_43806838.jpg)
上QQ阅读APP看书,第一时间看更新
4.2.3 程序结构指令概述
1.无条件跳转指令
1)GoTo:无条件跳转。
2)On GoTo:对应于指定的数值跳转到相应的程序行(1,2,3,4…)。
2.根据条件执行程序分支跳转的指令
(1)功能 本指令是根据条件执行程序分支跳转的指令,是改变程序流程的基本指令,如图4-14所示。
(2)指令格式1 If<判断条件式>Then<流程1>[Else<流程2>]。
1)说明:这种指令格式是在程序行里书写的判断-执行语句。如果条件成立则执行Then后面的程序指令;如果条件不成立则执行Else后面的程序指令,如图4-14所示。
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/60_01.jpg?sign=1739193584-g8odCe0UcqKJxBKusJTqb0RCh3A6IfbP-0-5a8c2d5ccdb9bff8a9bf4fef5ed50a3b)
图4-14 If Then语句流程图
2)指令例句:
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/60_02.jpg?sign=1739193584-iKj2RcpAbAZgEnyxUKAxWOcnSWidc5pi-0-6b2e8229c5f76bc059c4a93e0957b15f)
(3)指令格式2 如果判断-跳转指令的处理内容较多,无法在一行程序里表示,则使用以下指令格式:If<判断条件式>
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/60_03.jpg?sign=1739193584-lOdNHVQ0otZeL6yKbYnKW6fywXRi4wcm-0-aef3e348a7fa6b35ab3fd0fa7abdbd1b)
1)说明:如果条件成立则执行Then后面一直到Else的程序行;如果条件不成立则执行Else后面到EndIf的程序行。EndIf用于表示流程2的程序结束。
2)指令例句1:
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/60_04.jpg?sign=1739193584-IXCciL1P6ok7gTmpwwAYt1mF90H8yUqE-0-6a9774ec850490c8312c3b0f99bbb203)
3)指令例句2:多级If…Then…Else…EndIf嵌套。
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/60_05.jpg?sign=1739193584-PiOQIjIHl740sFf4zFjr7lMO0jSZJgpK-0-d4e292b5b1726f86733be06449506e40)
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/61_01.jpg?sign=1739193584-LrhhGiijALMLzUBJma57BsAYItpZcMI6-0-8378d0291cc3e88e25a361b884eb5267)
4)指令例句3:在对Then及Else的流程处理中,以Break指令跳转到EndIf的下一行(不要使用GOTO指令跳转),如图4-15所示。
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/61_02.jpg?sign=1739193584-vmYXnL83bvpqv2s7OenbX2MutYBc7W8Q-0-2ffb605297bab2c74be5b58ac610dbb5)
(4)说明
1)多行型指令:If…Then…Else…En-dIf,必须书写EndIf,不得省略,否则无法确定流程2的结束位置。
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/61_03.jpg?sign=1739193584-kqA5ccm0onwLS0sPox2g1fsMqgjbGaOl-0-ec3ee2a59604b588a656fbd8a9ace663)
图4-15 If…Then语句中Break指令的流程
2)不要使用GOTO指令跳转到本指令之外。
3)嵌套多级指令最大为八级。
4)在对Then及Else的流程处理中,以Break指令跳转到EndIf的下一行。