发布于 2008-07-22 22:28:36
0楼
程序没有问题,LOOP指令自动使累加器1中的值减1,跳转回去又给MW2000,所以是自减循环没有错,你的程序是正确执行了,否则,死循环会使你的CPU当机的,看看你的CPU停了吗,没有停吧,所以说程序完全正确。
而且MW2000是1也是正确的,LOOP指令是先减1,再检测是否小于等于0,如果是则跳出循环,当MW2000为1时,减1后,系统检测满足跳出条件,此时,虽然累加器为0,但并没有跳上去执行MW2000的赋值语句,所以MW2000保持1不变。
也正是因为如此,你的循环执行的次数是9次,而不是10次。
莫等闲,白了少年头,空悲切!