page 60,132TITLE 設定游標;------------------------------------ .MODEL SMALL ;------------------------------------.DATA .CODE MAIN PROC FAR mov ah,02h ;表求設定游標 mov bh,0 ;頁號0 mov dh,08 ;第8行 mov dl,15 ;第15列 int 10h ;調用中斷服務 MOV AX,4C00H INT 21HMAIN ENDP ;過程結束 END MAIN ;程式結束
page 60,132TITLE 清除螢幕;------------------------------------ .MODEL SMALL ;------------------------------------.DATA .CODE MAIN PROC FAR mov ax,0600h ;AH=06(滾動),AL=00(全屏空白) mov bh,71h ;白色背景(7),藍色前景(1) mov cx,0000h ;左上方行:列 mov dx,184fh ;右下角行:列 (第25行,80列) int 10h ;調用中斷服務 MOV AX,4C00H INT 21HMAIN ENDP ;過程結束 END MAIN ;程式結束
page 60,132TITLE 顯示串;------------------------------------ .MODEL SMALL ;------------------------------------.DATACUS_MSG DB 'Hello World!','$' ;顯示串 .CODE MAIN PROC FAR mov ax,@data mov ds,ax mov ah,09h ;請求顯示 lea dx,cus_msg ;裝入提示符地址 int 21h ;調用中斷服務 MOV AX,4C00H INT 21HMAIN ENDP ;過程結束 END MAIN ;程式結束
TITLE A08CTRNM (EXE) ;從鍵盤接收名字,並在螢幕中央顯示名字,並響鈴 .MODEL SMALL .STACK 64 .DATAPARLIST LABEL BYTE ;名字的參數表 MAXNLEN DB 30 ; 名字的最大長度ACTULEN DB ? ; 輸入的字元數KBNAME DB 31 DUP(' ') ; 存入名字PROMPT DB 'Name?','$' ;;------------------------------------------------ .CODE.386A10MAIN PROC FAR MOV AX,@data MOV DS,AX MOV ES,AX CALL Q10CLEAR ;CLEAR SCREENA20: MOV DX,0000 CALL Q20CURSOR ;SET CURSOR CALL B10INPUT ;INPUT NAME CALL Q10CLEAR CMP ACTULEN,00 JE A30 CALL C10CENTER ;設定響鈴和'$' CALL D10DISPLY ;在中央顯示名字 JMP A20A30: MOV AX,4C00H INT 21HA10MAIN ENDP; 顯示提示符並接收輸入的名字;------------------------------------------------B10INPUT PROC NEAR PUSH AX PUSH DX MOV AH,09H ;請求顯示 LEA DX,PROMPT INT 21H MOV AH,0AH ;請求輸入 LEA DX,PARLIST INT 21H POP DX POP AX RETB10INPUT ENDP; 設定響鈴和'$'定界符,在螢幕中央設定游標;------------------------------------------------C10CENTER PROC NEAR MOVZX BX,ACTULEN MOV KBNAME[BX],07 MOV KBNAME[BX+1],'$' MOV DL,ACTULEN SHR DL,1 NEG DL ADD DL,40 MOV DH,12 CALL Q20CURSOR RETC10CENTER ENDP; 顯示中心位置的名字;------------------------------------------------D10DISPLY PROC NEAR MOV AH,09H LEA DX,KBNAME INT 21H RETD10DISPLY ENDP; 清屏並設定屬性;------------------------------------------------Q10CLEAR PROC NEAR PUSHA MOV AX,0600H MOV BH,30 MOV CX,0000 MOV DX,184FH INT 10H POPA RETQ10CLEAR ENDP; 設定游標的行列;------------------------------------------------Q20CURSOR PROC NEAR ;DX已輸入游標 MOV AH,02H ;請求設定游標 MOV BH,00 ;頁號0 INT 10H RETQ20CURSOR ENDPEND A10MAIN