直播课堂
HOME
直播课堂
正文内容
堆栈的编程plc PLC中的堆栈与嵌套是什么?有什么作用?
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC中的堆栈与嵌套是什么?有什么作用?

堆栈和嵌套是在PLC应用程序设计中经常碰到的两个术语。

1、堆栈

堆栈就是货仓,这是数字电子技术中借用的一个名词。具体到PLC来说,堆栈就是在PLC中的一个特定存储区,用来存储某些中间运算结果和存放程序断点及数据。堆栈操作的特点是:先进后出,后进先出。

如图为一具有11个存储单元的堆栈,最下面为栈底,最上面为栈顶。把一个数据

或运算结果送入堆栈,叫进栈或压栈;把运算结果取出叫出栈。进栈时,后来的永远在栈顶,原先栈中的数则依序向下移动一个单元。出栈时,栈顶的数从栈中弹出(不在栈中了)而下面的数则依序向上移动一个单元。这就和家中的米箱类似,先进米箱的米最后吃,最后倒进去的米先吃。进栈和出栈是对堆栈的两种操作,还有一种操作叫读栈。读栈只是读出栈顶的数据,而不会把数据从栈弹出。

上面介绍的是三菱FX2N的有关堆栈知识,在计算机中,堆栈是一个非常重要的概念,他可以帮助我们正确理解许多程序运行的过程

2、嵌套

嵌套就是套中套。例如,在一个大循环中,进入循环后发现其中还有一个小循环要先做,而且每一次大循环都要先做这个小循环,直到大循环做完,这就叫做循环嵌套。再如调用子程序,子程序是一段公共程序,可以在主程序的任何地方进行调用,调用完后又回到主程序继续往下运行。如果一个程序在调用子程序时,子程序在运行中,又去调用另一个子程序,这就叫子程序嵌套。从上面二个例子可以说明,在PLC中,所谓嵌套是指在执行某种功能操作的过程中,再次执行这种类型的功能操作,(当然操作内容已经不同)就叫做这种操作的嵌套。PLC对各种内容的嵌套的层数都有一定的规定。三菱FX2N对主控指令的嵌套应用最多8层,而对子程序调用嵌套最多5层等等。(技成培训原创,未经授权不得转载,违者必究!)

往期优秀文章回顾:

PLC顺序控制,行业大牛的图文案例讲述

PLC的FX系列的堆栈指令讲解

今天给大家分享的文章是关于PLC-FX系列的堆栈指令问题,具体是怎么样的呢?我们一起往下阅读。

FX2N的共有27条基本逻辑指令,其中包含了有些子系列PLC的20条基本逻辑指令。

堆栈指令(MPS/MRD/MPP)

堆栈指令是FX系列中新增的基本指令,用于多重输出电路,为编程带来便利。在FX系列PLC中有11个存储单元,它们专门用来存储程序运算的中间结果,被称为栈存储器。

(1)MPS(进栈指令) 将运算结果送入栈存储器的第一段,同时将先前送入的数据依次移到栈的下一段。

(2)MRD(读栈指令) 将栈存储器的第一段数据(最后进栈的数据)读出且该数据继续保存在栈存储器的第一段,栈内的数据不发生移动。

(3)MPP(出栈指令) 将栈存储器的第一段数据(最后进栈的数据)读出且该数据从栈中消失,同时将栈中其它数据依次上移。

堆栈指令的使用如图1所示,其中图1a为一层栈,进栈后的信息可无限使用,最后一次使用MPP指令弹出信号;图1b为二层栈,它用了二个栈单元。

堆栈指令的使用

(a)一层栈

(b)二层栈

堆栈指令的使用说明:

(1)堆栈指令没有目标元件。

(2) MPS和MPP必须配对使用。

(3)由于栈存储单元只有11个,所以栈的层次最多为11层。

更多三菱自动化文章分享,请点击下方“了解更多”阅读,或者关注小编,回复“进群”,加入三菱PLC技术微信交流群。

相关问答

plc堆栈指令通俗解释?

在讨论PLC(可编程逻辑控制器)的堆栈指令之前,让我们先了解一下堆栈的概念。堆栈是一种数据结构,它遵循"先进后出"(LastInFirstOut,LIFO)的原则。就像.....

西门子plc堆栈指令详解?

西门子PLC堆栈指令是一种特殊的指令,它可以将数据存储在堆栈中,并在需要时从堆栈中取出数据。堆栈指令包括PUSH(将数据压入堆栈)和POP(从堆栈中弹出数据)。...

安装三菱plc编程软件打不开,显示存储器或桌面堆栈不足,用的是win7旗舰版系统?

按下Win+R,输入regedit,回车删除注册表:HKEY_CURRENT_USERSoftwareMITSUBISHI删除整个文件夹。重装GXWORK2。按下Win+R,输入regedit...

三菱PLC编程软件GXWorks2安装后打开提示:存储器空问或桌面堆栈不足,无法启动?

您可以进行以下操作试试【1】这种情况,可能是手机内安装较多的程序,占用太多的内存,如果手机运行程序时,内存不足,就会导致这种情况发生,您可以卸载一些不...

plc什么时候用栈指令?

先把分支处的状态保存在堆栈里,然后执行第一个分支程序,结束了,再从客栈里取出分支处的状态,执行下一个分支程序。如果没有保存堆栈,就要把分支处之前的程...

plc的储存器分别存放啥?

PLC的储存器分别用于存放用户程序使用的操作数据,包括程序过程映像的输入和输出、位存储器、定时器、计数器、块堆栈、中断栈、诊断缓冲等区。同时PLC储存器...

plc中m区和l区区别?

在PLC(可编程逻辑控制器)中,M区和L区分别扮演着不同的角色,主要区别体现在以下几个方面:存储内容与用途:M区(位存储区):主要用于存储运算的中间操作状...在...

plc中mb10什么意思?

plc中mb10意思是低地址。堆栈是在内存中指定的一段特殊存储区,春起始单元的地址叫栈底,当前存储单元地址叫栈顶,堆栈存储区一旦指定,栈底就固定不变了,而栈...

plc计数器指令怎么用?

达到零时,向下计数器停止计数,计数器位Cxxx打开。计数器范围:\tCxxx=C0至C255在STL中,CTD载入输入是堆栈顶值,而向下计数输入是装载在第二个堆栈位置的数值...

缘心计数器怎样使用?

在计时结束后,按下停止按钮即可停止计时。缘心计数器的精度相对较高,适用于需要较高精度计时场合,如科学研究、精密制造等领域。它的使用方法非常简单,只需要...

 赛恩康  systemvolumeinformation 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部