各位老师好!
程序LP#DBX0.0LAR1在OB1可以仿真监控
程序LP#DB1.DBX0.0LAR1却显示P#DB1.DBX0.0为红色不能仿真监控
这是为什么呢两者有什么区别。。
ASs='html_titleimg_p' STyle='text-align:CEnter;'>
问题补充:
学到POintER指针这块就特别困惑像32位16位指针我都明白可就是不明白这个P##pointer不知道要怎么样才能把它理解已经想这个问题好多天了
最佳答案
我认为LP#DBX0.0LAR1没有错误而LP#DB1.DBX0.0LAR1是错误的,是因为AR1是32位的地址寄存器,即使是交叉区域寄存器间接寻址最多也只能是有区域地址如M,I,Q,等而不能表示数据块号。而LP#DB1.DBX0.0LAR1包含有数据块号,这是要POINTER类型(48位)才能表示的。POINTER要用V区,但是这个语句是直接写在OB1里的,就用不到V区。对于POINTER可以多看step7帮助的相关内容。
提问者对于答案的评价:
谢谢LJCLWYF的热情解答不明白这个语句是直接写在OB1里的,就用不到V区V区和L区有什么区别呢L大侠能否继续给予解疑释惑呢谢谢!
专家置评
请参阅STL编程手册或参考网友“hoppt123”提供的资料。