发布于 2012-09-25 21:08:44
3楼
P##Start_Addr 对应到的实参数应该是DB2.DBX4.0吧
1.L W [AR1,P#0.0] //仿真的结果是累加器1中的值为2,我想问下,这里M具体是什么意思?
应该是W是什么意思吧? 你去看看pointer指针的参数类型 0号和1号字节是DB块的编号 ,所以数据宽度为W, L W [AR1,P#0.0] 是用来读取DB块的块号的。由于你的实参是DB2.DBX4.0所以你的读出来的块号是2。这是累加器1中的值为也就为2了。
2. L D [AR1,P#2.0] //仿真结果ACCU1=84000020,ACCU2=2,这里的D怎么理解?
这是用来读取pointer指针 2~5号字节的变量地址的所以数据宽度为 D 84000020 为16进制的值 16#84代表了你访问的数据区为DB数据区 16#20转成2#100000 转换成 DBX4.0