tebi 发表于 2011-5-4 10:21:05

一个绕脑筋的问题:关于loop和标号后的代码谁先执行的问题!!!

本帖最后由 loop 于 2011-5-6 01:19 编辑

assume cs:codesg

codesg segment

   mov ax,0020h

   mov ds,ax

   mov bx,0

   mov dl,0

   mov cx,40h

s:   mov ,dl

   inc dl

   inc bx

   loop s



   mov ax,4c00h

   int 21h



codesg ends

end这段程序代码,先执行s:后的,还是先不执行s:到loop才执行呢?详细解释下cx的设定。谢谢!!!

风扫地 发表于 2011-5-4 10:46:03

本帖最后由 风扫地 于 2011-5-4 11:27 编辑

执行inc bx后。。。
执行cx=cx-1..
然后判断cx是否为0..
不为0.。转到s循环。。
为0...执行mov ax,4c00h

qq646000130 发表于 2011-5-4 10:47:50

程序是从上往下,一条一条执行的,当执行到loop s的时候,才会判断CX的值,如果大于0,就跳转,否则,还是继续往下执行。

tebi 发表于 2011-5-4 14:35:55

明白了谢谢
页: [1]
查看完整版本: 一个绕脑筋的问题:关于loop和标号后的代码谁先执行的问题!!!