plc的堆栈寄存器

如题所述

第1个回答  2020-04-16
指针寄存器是由的,Z区和V区,都是16位的,如果是32位的话,是Z区(低16位)和V区(高16位)
如1:
NO(m8000)
---
MOV
K11
Z0
那么Z0这时存的是K11
NO(M8000)
---
MOV
K11
D0Z0
那么将K11存入D11里面
这里可以使用V0代替Z0
如2:
NO(m8000)
---
DMOV
K11
Z0
那么Z0这时存的是K11,这是V0存放的是K0,
NO(M8000)
---
MOV
K11
D0Z0
那么将K11存入D11里面
如果k11
替换成K65536的话,那么Z0这时存的是K1,这是V0存放的是K1,
这里不能使用V0代替Z0
区别在于16位和32位
堆栈寄存器
这个在三菱PLC中没见过!
资料来源可以看看三菱PLC中的编程手册中都有相应的存储区资料
希望能帮到你!
第2个回答  2020-04-18
就是储存某些触点的中间结果。利用先进先出,先进后出的原理。功能有入栈(PUSH)将运算结果或数据压入栈存储器。读栈(read)将栈的第一层内容读出来。出栈(pop)读栈同时将栈第一层的内容弹出来。比如三菱的FX2N,提供了11个栈存储器,当使用入栈指令时,现时的运算结果压入栈的第一层,栈中原来的数据依次向下推一层,当使用读栈指令时,栈内的数据部发生移动,而是将栈的第一层内容读出来,当使用出栈指令时,是将栈第一层的数据读出,同时该数据从栈中消失。
相似回答