編寫兩個程序
第一個: 編寫程序,該程序將它其中的一個子程序複製到200h處。
被複制的子程序定義:
名稱:putchar
功能:在屏幕中間打印一個字符
參數:ch爲給定的字符
cl爲字符屬性
返回值:無
第二個:編寫一個程序,該程序調用存在於內存200h處的程序,在屏幕上打印綠色字符‘x’。調用後要確保能夠正確返回。
assume cs:code
code segment
start:
mov ch,'x'
mov cl,02h
mov si,200h
mov di,offset putchar
s: mov ax,cs:[di] ;將其子程序複製到cs:[200]處
mov cs:[si],ax
mov bl,0c3h
cmp al,bl
je n
add di,2
add si,2
jmp short s
n: mov ax,200h ;調用存在於內存200h處的程序
call ax ;指示內存單元時也可寫進16進制
mov ah,4ch
int 21h
;名稱:putchar
;功能:在屏幕中間打印一個字符
;參數:ch爲給定的字符
; cl爲字符屬性
;返回值:無
putchar:push ax
push cx
mov ax,0b800h
mov es,ax
mov es:[180*6+2*60],ch
mov es:[180*6+2*60+1],cl
pop ax
pop cx
ret
code ends
end start