【第十三章】int指令(2)

1.PNG

assume cs:code
data segment
	db 'conversation',0
data ends

code segment
start:	;安装程序
	mov ax,code
	mov ds,ax
	mov si,offset do7c

	mov ax,0
	mov es,ax
	mov di,200h

	mov cx,offset do7cEnd - offset do7c
	cld
	rep movsb

	mov ax,0
	mov es,ax
	mov word ptr es:[7ch*4],200h
	mov word ptr es:[7ch*4+2],0

	;让ds:si指向data段
	mov ax,data
	mov ds,ax
	mov si,0

	;让es:di指向b800:15*160
	mov ax,0b800h
	mov es,ax
	mov di,15*160

s:	cmp byte ptr ds:[si],0
	je ok
	cld
	movsb
	inc di
	mov bx,offset s - offset ok
	int 7ch

ok:	mov ax,4c00h
	int 21h

do7c:	push bp
	mov bp,sp
	add [bp+2],bx
	pop bp
	iret
do7cEnd:	nop
code ends

end start