移位寄存器定义:就是将上一个值/变量/参数等移动到开头的地方再执行,因为存储了上一次的数据,并且移到了开头继续将变量带入执行,因此叫做移位寄存器。
对于移位寄存器的左右端子的定义:
左端子:保持本次循环上一次的结果
右端子:保持循环结束后的结果
可能到现在你仍旧感到困惑,下面我将介绍一个例子给你,相信你一定会明白的。
例子:首先先创建一个周期为14循环3次的波形,截取其中上升段第三个点。接下来我介绍一下我是如何完成的,及每一步的过程。
第一步:创建波形。
首先创建层叠式顺序结构,第一层为你要初始化的控件(根据你的需要),在的二层来创建你的主程序。
第二层:创建一个你想要的单个波形作为基波,然后将左端子初始化,当循环次数为1时,基波就会经过数组插入,来到右端子,就会形成第一个波形;循环次数为2时,进行之前的操作后,波形四(基波)来到左端子,继续输入基波来到数组插入后变成,到达右端子,形成两个波形(基波+基波)……以此类推。我选择的是循环次数为3,波形如下图所示。
第二步:如何进行波形提取。
对于初始化我的意见是,当程序运行后的结果对你下一次运行有影响的话,那么就对它进行初始化吧。
对于波形我来给它们命名为波1、波2、波3。当循环次数为1时,3个波从左端子进入,在经过数组子集所索引后,剩下波2、波3来到右端子。同时经过索引数组第三个,得到波1元素;当循环次数为2时,波2、波3来到左端子,被数组子集索引后,剩下波3来到右端子。同时索引数组的第三个,得到波2的元素;……以此类推。最终3个元素已数组的元素呈现。
终于结束了,想必聪明的你已经学会了吧,当然程序仍有不足之处,欢迎批评指正。
接下来,我会创建一个数组进阶篇,相信你一定会充满兴趣的。