发布于 2012-03-15 00:23:38
3楼
1、每个扫描开始时,AC0-AC3中的值,是否是上次扫描的残留,没有考证过。即是残留,也不建议使用,因为没有官方的保证。所以,AC0-AC3在扫描开始时里面存的什么,不能作假设,只能认为可能是任意值;
2、在同一扫描周期中,AC0-AC3完全受用户程序控制,系统绝对不会自动(无意识)地去改变其中的值。所以,要是用户程序因使用AC0-AC3而产生不可预知的结果,完全是用户程序本身的事。
3、AC0-AC3就是四个通用的存贮单元,和其它的如V、M区没有太大的区别。但也有它的特色:比如ACx不能位寻址;字节、字、双字操作时是右对齐,无法直接单独操作高位字节。ACx存在的价值,是可以减少指令编译后所占的空间(字节数);
4、AC0不能作间址,只是规定。其内幕是什么,不得而知。应该不是NULL指针的保护。