发布于 2010-06-29 15:21:25
5楼
就楼主这个问题,用模拟器做了一些测试,下面说一下我的理解
FB中为了方便背景数据块参数的寻址,自动使用DI寄存器和AR2寄存器,DI寄存器保存的是当前背景数据块号,AR2寄存器指向P#DBX0.0,如果改变了这两个寄存器的值,你再访问背景数据块参数时将不会得到正确的数值,而且如果写成L W[AR2,P#0.0]这样的方式保存后可能会自动变成背景数据块接口参数(虽然并不会改变你实际目的,但这样看起来很麻烦)
所以,在FB里使用DI寄存器和AR2寄存器要小心,对这两个寄存器改变后不要再使用背景数据块参数,当要使用背景数据块参数时要恢复这两个寄存器的值就可以了