读懂S7 您所在的位置:网站首页 step7编程语言有几种 读懂S7

读懂S7

2024-01-24 17:19| 来源: 网络整理| 查看: 265

有读者反馈说搞不清楚西门子S7-300/400PLC的寄存器和累加器有什么区别?今天这篇文章我们就来谈谈这个话题。

首先,我们说的寄存器和累加器,都是属于S7-300/400的CPU模块内部的组成部分。

寄存器,英文名称:Register,是CPU的高速存储单元,用来暂时存储CPU运算时所需要的指令、数据、地址等信息。CPU中有各种各样的寄存器,比如状态字寄存器,地址寄存器,数据块寄存器等等,而今天的主角:累加器,其实也是寄存器的一种。

累加器,英文名称:Accumulator,简写:ACCU,是用于处理字节、字或双字的寄存器,其长度为32位(4个字节)。在S7-300中有两个累加器,ACCU1和ACCU2;在S7-400中有四个累加器,ACCU1~ACCU4;绝大多数的语句表指令的执行都需要累加器的参与,将操作数放入到累加器,进行运算(保存中间结果),然后再将运算结果从累加器传送到某个存储区。

说到这里,不得不说两个指令:装载(L)和传送(T);

装载(L)指令用来将一个字节,字或者双字装载到累加器1(ACCU1)中,而累加器1(ACCU1)中原来的数据,将保存到累加器2(ACCU2)中。如果使用两次装载指令,则累加器2(ACCU2)中将存储第一次的操作数,比如下面这两条指令:

执行完第一条后,ACCU1的值为MW100的值;执行完第二条后,ACCU1的值为MW102的值,ACCU2的值为MW100的值;

传送(T)指令用来将累加器1(ACCU1)中的值保存到相应的存储区,比如下面的指令:

装载(L)指令将MW100的值装载到累加器1中(ACCU1)中,然后传送指令(T)将累加器1(ACCU1)中的值保存到MW104中,从而实现了MW100值的复制功能。

本章小结:寄存器是CPU的高速存储单元,用来暂时存储CPU运算时所需要的指令、数据、地址等信息,CPU中有各种各样的寄存器;累加器是寄存器的一种,其主要功能是用来对操作数进行运算(保存中间结果)并处理运算的结果。

相关参考文章:

S7-1200硬件篇之读懂CPU的内部存储区

官网提供本文PDF版本下载:



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有