ddxl 发表于 2020-3-31 21:46:39

关于loop的使用问题

assume cs:code
code segment
dw 0123h,0456h,0789h,0abch,0defh,0cbah,0987h
mov bx,0
mov ax,0
mov cx,8

s:add ax,cs:
add bx,2
loop s

mov ax,4c00h
int 21h
code ends
end

汇编教材6.1的问题,loop在循环的时候会让cx-1,cx的值如果变化的话,cs:所对应地址的段地址是不是也在不断变化?
还有,如上程序,在mov cx,8之前,cx的值是多少?

希望各位大佬能够解答我的疑惑,谢谢!!

鱼尧呀 发表于 2020-4-4 16:38:35

我也是刚学,以现有知识量解答一下..不对勿怪。
第一问:CX的值变化与CS:的值没有什么关系,我们并没有取CS:的地址,也并未对它做任何地址改变的操作。
第二问:MOV CX,8之前,任何寄存器的值都是未知的,我们不能知道CX之前的值是多少,赋给它8相当于覆盖了它之前的随机值。

ddxl 发表于 2020-4-22 09:49:56

鱼尧呀 发表于 2020-4-4 16:38
我也是刚学,以现有知识量解答一下..不对勿怪。
第一问:CX的值变化与CS:的值没有什么关系,我们并没有取C ...

谢谢!
页: [1]
查看完整版本: 关于loop的使用问题