汇编谁能详细的解释一下面程序
assumecs:codecodesegmentstart:movax,2000Hmovds,axmovbx,0s:movch,0movcl,[bx]jcxzokincb...
assume cs:code
code segment
start: mov ax,2000H
mov ds,ax
mov bx,0
s: mov ch,0
mov cl,[bx]
jcxz ok
inc bx
jmp short s
ok: mov dx,bx
mov ax,4c00h
int 21h
code ends
end start 展开
code segment
start: mov ax,2000H
mov ds,ax
mov bx,0
s: mov ch,0
mov cl,[bx]
jcxz ok
inc bx
jmp short s
ok: mov dx,bx
mov ax,4c00h
int 21h
code ends
end start 展开
展开全部
assume cs:code //定义代码段名称为code
code segment //进入代码段
start: mov ax,2000H
mov ds,ax //这两句是把2000H放到ds里面(不可以直接放,需要ax作为中转,这里定义了段基址)
mov bx,0 //段基址确定了之后,将偏移地址设置为0,也就是从2000:0开始操作
s: mov ch,0 //cx的高8位先设置为0(cx有16位)
mov cl,[bx] //将2000:[bx]处的数拿出来,给cx的低8位(如果那处的数为0,cx也为0)
jcxz ok //如果cx为0,跳转到ok处
inc bx //bx自增1
jmp short s //继续从s处循环
ok: mov dx,bx
mov ax,4c00h
int 21h //这两句是结束
code ends
end start
汇编程序要几行几行得看。等我一会儿完善解答。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询