大家好,有个地方不太懂,求教
本帖最后由 布衣 于 2012-7-19 13:57 编辑这是汇编语言检测点9.3关于loop指令的答案
assume cs:code
code segment
start:
mov ax,2000h
mov ds,ax
mov bx,0
s:
mov cl,
mov ch,0
inc cx ;此条指令为题目要求补全的指令(我的问题——为什么要让CX的值加1,这样一来cx不就永远不等于0,一直在s循环里不断重复?)
inc bx
loop s
ok:
dec bx(为什么要让bx的值减1呢)
mov dx,bx
mov ax,4c00h
希望大家能予以解惑,在此感谢
int 21h
code ends
end start
恍然大悟,原来我傻了。 恍然大悟,原来我傻了。 inc cx是因为loop s会先执行cx-1所以若cx=0,那么loops后会向下执行 ,进入ok,但是loop s前 inc bx了,所以最后要bx的值减一
有问题可以继续追问{:1_1:} 额 俺还没有懂 求大神指点 貌似要刷评论才有预币赚哎0.0 {:5_109:}能解决就好。
页:
[1]