发布于 2013-06-05 10:18:10
3楼
楼主:以前为一个朋友想过办法,写了一段代码,有详细的注释,你可以试试。
A M 100.0 //扫描条件的状态(M100.0=1条件满足,M100.0=0条件不满足)
FP M 100.1 //判断条件的上升沿
JCN END //条件的上升沿来到数据移动一次,反之跳转到END标签
LAR1 P#48.0 //装载倒数第二个数据的地址到地址寄存器1(初始化地址寄存器1)
L 25 //循环次数,数据个数减一(26-1=25)
NEXT: T LW 20 //暂存当前的循环次数
L MW [AR1,P#0.0] //装载当前地址里面的数据到ACCU1
T MW [AR1,P#2.0] //将当前ACCU1里面的数据写到高字地址里面
TAR1 //将当前地址寄存器1里面的数据写到ACCU1里面
L P#2.0 //ACCU1移到ACCU2,并将P#2.0装载到ACCU1里面
-D //ACCU2-ACCU1的差值存入ACCU1(地址递减一个字)
LAR1 //装载当前ACCU1里面的内容到地址寄存器1
L LW 20 //装载当前循环次数
LOOP NEXT //循环次数减一,跳转到NEXT标签
//当循环次数减至0时,离开循环,往下执行
END: NOP 0
佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!”