assume cs:code
data segment
db 'Welcome to masm!',0
data ends
code segment
start: mov dh,8 ;8行 8*160
mov dl,3 ;3列 3 * 2
mov cl,2 ;颜色
mov ax,data
mov ds,ax
mov si,0
call show_str ;显示字符
mov ax,4c00h
int 21h
show_str: mov ax,0b800h
mov es,ax
mov ah,0 ;先清0试下
mov al,0a0h ;B800H + 160 也就是一行
dec dh ;前面加了一行,这里-1,对的~嘿嘿
mul dh ;在这之前,要保存一下AX才行
mov bx,ax
mov dh,0
add dl,dl
add bx,dx
;mov bx,ax
show_obj: push cx ;保存CX
mov ch,0
mov cl,ds:[si]
jcxz ok
mov al,[si]
mov es:[bx],al
pop cx
mov al,cl
mov es:[bx+1],al
add bx,2
inc si
jmp short show_obj
ok: pop cx
ret
code ends
end start
同学,你贴发重复了! |