恭喜,你发布的帖子
发布于 2017-08-23 11:04:40
3楼
建议楼主找一份指针编程的资料看看:
STEP7 有两个DB寄存器,分别是DB 寄存器与 DI 寄存器
这两个寄存器里包含了当前已打开数据块的有效编号,一个调用级别中可以同时打开两个数据块。
STL 使用第一个DB寄存器来访问共享(全局)数据块,而使用第二个DB寄存器来访问背景数据块。因此,这两个寄存器也分别称作DB寄存器和DI寄存器。
CPU对这两个寄存器一视同仁。无论哪个数据块,都可以使用这两个寄存器中的任何一个打开(甚至使用两个寄存器同时打开)
例如在一个块内正确的使用如下:
OPN DB200
OPN DI 201
错误的使用如下,:
OPN DB200
OPN DB201
备注:DI寄存器不支持符号访问。
:AR2和DI寄存器分别包含FB背景数据块的块号及在背景数据在背景数据块中偏移地址(多重背景数据块),在FB中使用AR2和DI寄存器将会覆盖系统存储的内容,我基本上在FB一般会使用DB+AR1寄存器。在FC一般无所谓,AR1 AR2 DB DI 我都会使用,主要是根据程序的执行状态,根据需要进行恢复被覆盖的寄存器
请填写推广理由:
分享
只看
楼主