分享

工控圈

 山高人为峰qin 2017-02-21


1 ANY参数类型概念


在Pointer参数类型中我们已经告诉大家Pointer参数类型是基于交叉区域寄存器间接寻址发展而来的,由于交叉区域寄存器间接寻址无法存放数据块编号信息,所以我们为了可以对数据块进行寻址,在交叉区域寄存器间接寻址的存储空间中增加了一个字的空间来存放数据块编号信息,但是这样也只能一次寻址一个存储区域,如果我们想对连续的几个存储空间进行寻址比如对MW0、MW2、MW4一起进行寻址,无论是寄存器寻址还是Pointer参数类型都是无法完成的。此时我们引进ANY参数类型,ANY参数类型在Pointer参数类型的基础上又增加了两个字的存储空间。

01.png 

图 1-1

02.png 

图 1-2

03.png 

图 1-3

ANY参数类型中第0字节是ANY参数类型的标识位,无论何时只要是ANY参数类型第0字节就是16进制的10。第1字节是数据类型信息,确定每个存储空间的数据类型,图 1-4是每种数据类型对应的16进制代码,第2第3字节重复因子表示由几个存储空间构成的这段指针。

04.png 

图 1-4


2 ANY参数类型举例


下面我们用P#DB1.DBX0.0 WORD 3这个ANY类型指针来给大家具体举例,首先我们要明确这个指针是由DB1.DBW0、DB1.DBW2、DB1.DBW4、三个连续的存储空间构成同时这三个存储空间的数据类型是WORD。

05.png 

图 2-1

06.png 

图 2-2

07.png 

图 2-3

08.png 

图 2-4

09.png 

图 2-5

3 程序示例


首先要告诉大家我们这个程序的功能是将ANY指针规定的空间的数值相加然后求平均数。

10.png 

图 3-1

11.png 

图 3-2

12.png 

图 3-3

13.png 

图 3-4

14.png  

图 3-5

15.png 

图 3-6



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多