理论教育 跳转和标号指令

跳转和标号指令

更新时间:2025-01-03 理论教育 版权反馈
【摘要】:在跳转期间,分辨率为1ms和10ms的定时器会一直保持跳转前的工作状态,到设定值后其位的状态也会改变,输出触点动作,其当前值存储器一直累计到最大值32767才停止。对分辨率为100ms的定时器来说,跳转期间停止工作,但不会复位,存储器里的值为跳转时的值,跳转结束后,若输入条件允许,可继续计时,但已失去了准确计时的意义,所以在跳转段里的定时器要慎用。

在程序执行时,由于条件的不同,可能会产生一些分支,这时就需要用到跳转和标号指令,根据不同条件的判断,选择不同的程序段执行程序。

1.指令的格式及功能

跳转和标号指令的格式及功能见表5-2。

表5-2 跳转和标号指令的格式及功能

978-7-111-47551-4-Chapter05-3.jpg

2.指令说明

1)当跳转条件满足时,跳转指令可以使程序流程转到具体的标号n处执行。标号指令用来标记指令转移目标位置n,n的取值范围为0~255。

跳转指令和标号指令必须配合使用,而且只能使用在同一程序块中,如主程序、同一个子程序或同一个中断程序。不能在不同的程序块间互相跳转。

2)执行跳转后,被跳过程序段中各寄存器的状态会有所不同:Q、M、S、C等寄存器的位将保持跳转前的状态;计数器C停止计数,当前值存储器保持跳转前的计数值。(www.daowen.com)

3)对不同分辨率定时器来说,因刷新方式不同而工作状态不同。在跳转期间,分辨率为1ms和10ms的定时器会一直保持跳转前的工作状态,到设定值后其位的状态也会改变,输出触点动作,其当前值存储器一直累计到最大值32767才停止。

对分辨率为100ms的定时器来说,跳转期间停止工作,但不会复位,存储器里的值为跳转时的值,跳转结束后,若输入条件允许,可继续计时,但已失去了准确计时的意义,所以在跳转段里的定时器要慎用。

3.应用示例

【例5-2】跳转指令应用示例。

在图5-2所示程序中,当I0.0为ON时,常开触点I0.0接通,即JMP1条件满足,程序跳转执行LBL标号1以后的指令,而在JMP1和LBL1之间的指令一概不执行,在这个过程中,即使I0.1接通Q0.1也不会有输出;此时I0.0的常闭触点断开,不执行JMP2,所以I0.2接通,Q0.2有输出。当I0.0断开时,则其常开触点I0.0断开,其常闭触点接通,此时不执行JMP1,而执行JMP2,所以I0.1接通,Q0.1有输出,而I0.2即使接通,Q0.2也没有输出。

978-7-111-47551-4-Chapter05-4.jpg

图5-2 跳转指令程序示例

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈