chenghan521 发表于 2011-4-17 21:11:06

请高手帮忙分析一下这个程序

本帖最后由 loop 于 2011-4-17 23:03 编辑

assume cs:code,ds:data,ss:stack
data segment
    db 'welcome to masm!',0
data ends

stack segment
    dw 10 dup(0)
stack ends

code segment
start:

   mov bl,5
       mov bh,8
   mov ax,data
   mov ds,ax
   mov ax,stack
   mov ss,ax
   mov sp,11h
   mov si,0
   mov di,0
   mov cx,0

       mov cl,2
       
call show_str

   mov ax,4c00h
   int 21h

show_str:
   mov ax,0b872h
       mov es,ax
       
s:   push cx   ;第一,如果去掉这里            
   xor cx,cx
   mov cl,
   jcxz ok       
       mov es:,cl
       xor cx,cx         
      pop cx      ;第二,也去掉这里,换上mov cl,2   ,这样这个程序就可以执行。
                  
       mov es:,cl
       inc si
       add di,2
       jmp short s
       
       
ok:ret



code ends
end start请教这是为什么。。。。
页: [1]
查看完整版本: 请高手帮忙分析一下这个程序