不知道能用这个程序来干嘛?
这个程序将以如下步骤进行运行:
开机后
第1个运行周期:由于D0=0,故置位M1,复位M2
执行INC D0,得D0=1
执行ADD D2 D0 D2,得D2=1
0+1=1
第2个运行周期:执行INC D0,得D0=2
执行ADD D2 D0 D2,得D2=3
1+2=3
第3个运行周期:执行INC D0,得D0=3
执行ADD D2 D0 D2,得D2=6
3+3=6
第4个运行周期:执行INC D0,得D0=4
执行ADD D2 D0 D2,得D2=10
6+4=10
第5个运行周期:执行INC D0,得D0=5
执行ADD D2 D0 D2,得D2=15
10+5=15
如此循环,直到D0=100,复位M1,置位M2,假设此时D2=x(具体等于多少先不追究)
第101个运行周期:由于D0=100,故复位M1,置位M2
执行DEC D0,得D0=99
执行SUB D2 D0 D2,得D2=x-99
x-99=x-99
第102个运行周期:由于D0=99,故置位M1,复位M2
执行INC D0,得D0=100
执行ADD D2 D0 D2,得D2=x+1
x-99+100=x+1
第103个运行周期:由于D0=100,故复位M1,置位M2
执行DEC D0,得D0=99
执行SUB D2 D0 D2,得D2=x-98
x+1-99=x-98
第104个运行周期:由于D0=99,故置位M1,复位M2
执行INC D0,得D0=100
执行ADD D2 D0 D2,得D2=x+2
x-98+100=x+2
第105个运行周期:由于D0=100,故复位M1,置位M2
执行DEC D0,得D0=99
执行SUB D2 D0 D2,得D2=x-97
x+2-99=x-97
第106个运行周期:由于D0=99,故置位M1,复位M2
执行INC D0,得D0=100
执行ADD D2 D0 D2,得D2=x+3
x-97+100=x+3
之后的程序将如此循环,D0的值将在99和100之间变来变去,D2的值将一直递增
楼主怎么说没有循环呢?
刚才发现周期分析上有错误,过来说明一下,上面说到的第102和103个周期其实应该在一个周期内就完成了,我却把他分析成一个周期
运行结果是一样的
[ 此帖被勇闯天涯在2008-10-21 11:32重新编辑 ]