| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
自己敲出来的,中间遇到了一些问题,上来看了看其他同学的代码呵呵。不过我只是看了看思路。下面是我敲的代码 
 
- assume cs:code 
 
 - data segment
 
 - db 'Welcone to masm',0
 
 - data ends
 
 - stack segment
 
 - db 16 dup (0)
 
 - stack ends
 
 - code segment
 
 - start: mov ax,data
 
 -        mov ds,ax
 
 -     mov ax,0b800h
 
 -     mov es,ax
 
 -     mov ax,stack
 
 -     mov ss,ax
 
 -     mov sp,10h
 
 -     mov dh,8    ;行数    0--24      
 
 -     mov dl,30    ;列数    0---79    
 
 -     mov cl,2       ;颜色     B8000H---Bffff
 
 -     mov ch,0
 
 -     mov si,0       ;数值的首地址
 
 -   
 
 -     mov al,dh         ;下面到CALL的代码都是行数和列数的运算
 
 -     mov ah,0
 
 -     mov dh,160
 
 -     mul dh
 
 -     mov bx,ax
 
 -     mov al,dl
 
 -     mov ah,0
 
 -     mov dl,2
 
 -     mul dl
 
 -     mov di,ax
 
 -     call show
 
 -     mov ax,4c00h
 
 -     int 21h
 
 -     
 
 -  show: push cx
 
 -     mov al,[si]   ; 把si内存的内容给AL
 
 -     mov cl,al
 
 -     jcxz ok     ;  循环到CX=0就跳转
 
 -     mov es:[bx+di],al
 
 -     pop cx
 
 -     mov es:[bx+di+1],cl
 
 -     inc si
 
 -     add di,2
 
 -     jmp short show
 
 -     
 
 -    ok: pop cx
 
 -        ret
 
 - code ends
 
 - end start   
 
  复制代码 
 |   
 
 
 
 |