1、3)可自行设计显示姓名及学号的方案。二、分析1)BIOS中断调用:BIOS常驻ROM,独立于DOS,可与任何操作系统一起工作。它的主要功能是驱动系统所配置的外部设备,如磁盘驱动器、显示器、打印机及异步通讯接口等。通过INT 10HINT 1AH向用户提供服务程序的入口,使用户无需对硬件有深入了解,就可完成对I/O设备的控制与操作。BIOS的中断调用与DOS功能调用类似。 2)图形设计:掌握BIOS中断调用INT 10H的13H号功能。注意13H号功能入口参数的要求。3)颜色显示:在彩色显示屏幕上每个字符在存储中用两个字节表示。一个字节保存字符的ASCII码,另一个字节保存字符的属性。BIOS中
2、断调用INT 10H的13H号功能是显示字符串,字符的属性在BL中。属性设置方法见教材第四章164页。三、软件设计1)设计详细的程序流程图;2)根据流程图,编写源程序;3)上机调试源程序。程序流程图程序执行图:图1.菜单提示界面图2.输入一般字符时(非Esc、非Y)的显示画面图3.输入Y后,显示的画面ROW=8COLUM=00ESCKEY=1BH DSEG SEGMENT MENU DB 0DH,0AH,-COMTENT-,0DH,0AH DB 0DH,0AH,1.SHOW THE2008,PRESS Y.2.SHOW THENUMBER,PRESS ANY KEY!3.TO EXIT,PRE
3、SS THE ESC. N = $-MENU MESS1 DB +OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+ DB |D| 11111111 1111111111 1111111111 11111111 |D|L| 1111 1111 1111 1111 1111 1111 1111 1111 |L|X| 1111 1111 1111 111111 1111 111111 1111 1111 |X|Y| 1111 1111 11111111 1111 11111111 111111
4、1111 |Y|Z| 1111 1111 11 1111 1111 11 1111 11111111 |Z|D| 1111 11111111 1111 11111111 1111 1111 111111 |D|H| 1111 111111 1111 111111 1111 1111 1111 |H|Z| 1111 1111 1111 1111 1111 1111 1111 1111 |Z|Y| 111111111111 1111111111 1111111111 11111111 |Y| MESS_LEN1 = $-OFFSET MESS1MESS2 DB +OOOOOOOOOOOOOOOOO
5、OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+| NNNNNN NNNNNNNN NN NNNNNN NNNNNNNN | NN NN NN NN NNNNNN NN NN NN NN | NN NN NN NN NN NN NN NN NN | NN NN NNNNNNNN NN NN NN NN NN | NN NN NN NN NN NN NN NNNNNNNNNN | NN NN NN NN NN NN NN NN | MESS_LEN2 = $-OFFSET MESS2 COLORB DB 4AH,3AH,1
6、4H,52H,4FH,74H,2EH,59H,6FH,6DH,20H COLORE LABEL BYTE DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG,ES:DSEG START: MOV DI,OFFSET COLORB-1 ;预置颜色指向 MOV AX,DSEG MOV DS,AX MOV ES,AX LEA BP,MENU ;显示提示菜单 MOV AH,13H MOV AL,01 MOV CX,N MOV BL,0BH MOV BH,0 MOV DX,0 INT 10H NEXTC: INC DI ;改变颜色 CMP DI,OFFSET CO
7、LORE JNZ NEXTE MOV DI,OFFSET COLORB NEXTE: MOV BL,DI MOV DH,ROW MOV DL,COLUM MOV AH,0 ;选择要显示的字符 INT 16H CMP AL,Y JZ C1 CMP AL,1BH ;退出 JZ OVER1 JMP C2 C1: CALL ECHO1 JMP NEXTC OVER1: MOV AX,4C00H INT 21H C2: CALL ECHO2 ECHO1 PROC NEAR ;子程序1,显示MESS1 MOV SI,OFFSET MESS1 MOV CX,MESS_LEN1 PUSH ES PUSH BP
8、 PUSH DS POP ES MOV BP,SI MOV AL,0 CALL CLRS POP BP CALL DELAY RET ECHO1 ENDP ECHO2 PROC NEAR ;子程序2,显示MESS2 MOV SI,OFFSET MESS2 MOV CX,MESS_LEN2 ECHO2 ENDP CLRS PROC NEAR ;清屏子程序 PUSH AX PUSH BX PUSH CX PUSH DX MOV AH,6 MOV CH,0 MOV CL,0 MOV DH,24 MOV DL,79 MOV BH,7 POP DX POP CX POP BX POP AX CLRS ENDP DELAY PROC NEAR ;延时 MOV DX,57138 WAIT1:MOV CX,4435 WAIT2:LOOP WAIT2 DEC DX JNZ WAIT1 DELAY ENDP CSEG ENDS END START
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1