关于STL里的= L 0.0问题

各位大侠、老师你们好!
  我想问下我在用LAD编的程序转成STL的时候会多出许多=L X.X之类的,请问这是什么?是临时存储区的吗?它为什么会生成这个?生成这个在STL里面有什么作用?我在看程序的时候又该如何去理解它?谢谢,下面是我编程时的一个图片,给我简单的讲解下这个=L在里面的作用,谢谢了各位大侠,高分送上!

问题补充:
KAPOK的回答很详细,很感谢,我能再补充一下吗?它为什么要用=L11.0而不用其它地址呢?如12.0,5.0之类的,是系统分配的,还是有什么规律可循呢?谢谢

图片说明:

关于STL里的= L 0.0问题   

最佳答案

1、LAD编的程序转成STL的时候会多出许多=L X.X之类的,请问这是什么?是临时存储区的吗?它为什么会生成这个?生成这个在STL里面有什么作用?我在看程序的时候又该如何去理解它?
=L X.X之类为临时变量,是临时存储区。系统生成临时变量的作用是起到中间过渡单元。
在看程序的时候该如何去理解它呢?这样理解,当块执行的时候它们被用来临时存储数据,当退出该块时这些数据将丢失。
2、讲解下这个=L在里面的作用?
例如,程序中的=L 11.0:
这是系统自动生成的就是解决梯形图的”T"型(即“逻辑或”操作)的方法。即,当LAD转成STL的时候,转换梯形图的”T"型(即“逻辑或”操作),系统都这样转换。
3、它为什么要用=L11.0而不用其它地址呢?如12.0,5.0之类的,是系统分配的,还是有什么规律可循呢?
临时存储区实际上是L堆栈区域,当系统调用FB/FC时会将调用前的现场(例如CPU的状态等)保存起来,待调用FB/FC完成时还要恢复所保存的现场。所以,系统保存现场需要L堆栈区域,这样分配给LAD转成STL的临时变量就要顺次排序了。
有规律可循,但作为用户不需顾及这些,系统分配什么就什么了,认为是排序而来的就可以了。

提问者对于答案的评价:
谢谢大侠,很好,很详细,很认真!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc246050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月2日
下一篇 2018年12月2日

相关推荐