网上答案很多,但看了大多数与章节知识点不同,干脆就直接写了一个,共大家一起探讨学习。
assume cs:code
data segment
db 'Welcome to masm!',0
data ends
code segment
start:
;复制代码到200H
mov ax,cs
mov ds,ax
mov si,offset s
mov ax,0
mov es,ax
mov di,200h
mov cx,offset se-offset s
cld
rep movsb
;中断向量表7ch处添加200h
mov ax,0
mov es,ax
mov word ptr es:[4*7ch],200h
mov word ptr es:[4*7ch+2],0
mov dh,10
mov dl,10
mov cl,2
mov ax,data
mov ds,ax
mov si,0
int 7ch
mov ax,4c00h
int 21h
;利用CPU提供的中断程序完成任务
s: mov ch,0
push cx
mov ah,2
mov bh,0
int 10h
mov ah,9
mov bl,cl
mov bh,0
mov cx,1
mov al,[si]
int 10h
pop cx
cmp al,0
je ok
inc si
inc dl
jmp short s
ok: iret
se: nop
code ends
end start