数组的用途
刘玉蓉
发布于2014-10-17 16:52
1
0
标签:
哪位能告诉我数组在什么情况下使用,有什么优势?当数组作为布尔类型时, 是不是可以当做绝对地址来使用,比如数组定位A,则A【1】、A【2】,可以像布尔量一样用吗?
佳答案
数组(ARRAY)是属于复合数据类型,其变量只能在全局数据块中声明,可以作为参数或逻辑快的局部变量,它是将一组同类型的数据组合在一起,形成一个单元。利用数组进行操作,实现起来简单方便,无须大量的数据输入工作,在数据块中定义好数组后,可以在程序块中直接调用它。
在STEP7中数据块的数据类型可以采用基本数据类型、复合数据类型或用户定义数据类型(UDT)。比如,如果一个控制系统中涉及到4类数据,分别是温度,压力,流量,液位,而且不同的每类数据都有6个相同类型的元素,利用数组进行寻址就比较简单,可以利用数据块中进行定义;当数组作为布尔类型时,是可以利用绝对地址进行使用的。如果在一个数据块DB1中定义几个数组ARRAY,可以在STRUCT下定义4个数组类型,大小为2X3的二维数组,数据类型为实数,举例如下:
Address Name Type Initial Value Comment
地址 名称 类型 初始值 注释
0.0 STRUCT 开始
+0.0 T ARRAY[1..2,1..3] 2X3的2维数组的温度数据
*4.0 REAL 实数
+24.0 P ARRAY[1..2,1..3] 2X3的2维数组的压力数据
*4.0 REAL 实数
+48.0 LV ARRAY[1..2,1..3] 2X3的2维数组的流量数据
*4.0 REAL 实数
+72.0 LE ARRAY[1..2,1..3] 2X3的2维数组的液位数据
*4.0 REAL 实数
=96.0 END_STRUCT 结束
请参考我对类似问题的回答链接《关于数组的简单问题》
https://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_id=61012&cid=1029