楼主最近还看过
第一个问题84000140的由来,配合ANY结构图看,16#84就是代表DB块,16#140=2#0000,0001,0100,0000;字节9前三位012,代表位,3~7和字节8的0~7和字节7前三位012,代表变量的起始地址,去掉字节9前三位012就是2#0000,0001,0100,0=10#40,就是DB80.dbX40里的那个40。standard是累加器1的值,因为 L D [AR2,P#6.0],处理结果就是84000140,之后没有处理累加器的程序,所以没刷新。
第二个问题, L D [AR1,P#4.0]是区的DB号,16#50=10#80,就是DB80。 L D [AR1,P#4.0] LAR1就是取偏移量放到AR1偏移量是0,AR2也是同理,如16#140=10#40,偏移量就是40,上面已经说过了。如 如 L B [AR1,P#0.0] []里就是P#0.0,L B [AR2,P#0.0] []里就是P#40.0,对应DB80.dbx40里的偏移量
第三个问题 我也没明白这段要干啥,意思就是把DB80.DB0的值和E0=1110求与,后面又和1=0001对比,结果永远为FALSE,那么JC跳转永远不会执行。
"niumiao1234" 的回复,发表在1楼
对内容: 【第一个问题84000140的由来,配合ANY结构图看,16#84就是代表DB块,16#140=2#0000,0001,0100,0000;字节9前三位012,代表位,3~7和字节8的0~7和字节7前三...】进行回复:
---------------------------------------------------------------
感谢你的回答:
第二个问题你回答时是不是忽略了这二条指令(如果忽略掉这两条指令是这样子的),因为这两条指令所以累加器1的值为0,为什么为零?
第三个问题,于(AW)、或(OW)异或(XOW)这个指令一看就明白,但是这些指令用途是什么不知道 ?不知道这个指令的用途看程序就很费、望指教!
"niumiao1234" 的回复,发表在5楼
对内容: 【针对第二个问题,红色处AR1第二次赋值,指针所指向的地址就已经改变了,蓝色这个指向的地址就是图一红色圈圈里的地址,里面的值是0Standard就是0.,如果这里面是100,你看到的Standard就是...】进行回复:
-----------------------------------------------------------------
niumiao1234好像也不是哦!
更改不同的程序点,对应出现不数值!
更改程序 这几个点DB2的数值都不变,一会变成A00F6,ac40e218