一段循环程序:把从3开始的、以2为差值递增长度为6的等差数列(3、5、7、9、11、13)传送到从MW200开始的字中
L 3
T LW 0
L P#200.0
T LD 4
L 6
j2: T LW 10
L LW 0
T MW [LD 4]
+ 2
T LW 0
L LD 4
L P#2.0
+D
T LD 4
L LW 10
+ -1
JN j2
程序运行后出错,发现是循环程序无限循环导致,监视寄存器发现,第六个循环执行完时 ACCU1=0,但CC1=0 CC0=0,应该是CC1值不对导致JN继续跳转。
继续分析发现第一个循环时执行完+D后CC1就是1了,之后一直不变,这里+D为什么导致CC1变为1呢?(只不过是P#200.0+P#2.0相加)。请各位指教