文档详情

汇编语言程序设计第01章第10章.ppt

发布:2017-06-22约7.86千字共39页下载文档
文本预览下载声明
利用DOS(磁盘操作系统)功能调用和BIOS(基本输入输出)中断调用,程序员在不必了解硬件I/O接口特性的情况下,能非常方便地完成标准设备输入、数据输入、文件管理和系统信息查询等操作。 中断与中断源 1、中断:当一种特殊事件发生时,CPU停止正在运行的程序,而转去执行该事件的处理程序,处理完该事件后,再返回原程序继续正确地执行下去,这个过程就称为中断。 2、中断源:引起中断的事件。 10.2 BIOS中断调用 BIOS中断分为四类: (1)内中断:中断类型号为00H-07H,包括被零除中断、单步中断、不可屏蔽中断、断点中断、溢出中断、屏幕拷贝等。 (2)外中断:中断类型号08H-0FH,主要处理计时器、键盘、通信端口、硬盘、软件等。 (3)设备驱动:中断类型号10H-17H,服务对象包括显示器、内存检查、通信I/O、键盘I/O、打印机I/O等。 (4)特殊中断:中断类型号18H-1FH,包括ROM BASIC、DOS自举、日期调用、键盘中断、计时器控制、显示器参数、图形字符表等。 10.2.1 BIOS中断调用方法 调用BIOS中断程序的基本过程: (1)将调用参数(入口参数)装入指定的寄存器中; (2)功能号送入AH寄存器。 (3)如需要将子功能号送入AL寄存器。 (4)发送INT n软中断指令(有时通过通用寄存器带回出口参数)。 10.2.2 常用BIOS中断调用 INT 10H 视频程序设计 (1)00H号功能 功能: 显示方式设置 入口参数: AL=显示方式 (P181) 出口参数: 无 【例11.2】图形方式设置示例。 MOV AH,00H MOV AL,13H INT 10H ;设置320×200,256色图形方式 1. INT 10H 视频程序设计 (2)02H号功能 功能: 设置光标位置 入口参数:BH=显示页号 DH=行号 DL=列号 出口参数:无 1. INT 10H 视频程序设计 (3)06H号功能 功能: 屏幕窗口上卷(文本方式有效)或初始化 入口参数: AL=滚动行数。为0时,整个屏幕为空白 CH=滚动窗口左上角字符所在的行号 CL=滚动窗口左上角字符所在的列号 DH =滚动窗口左下角字符所在的行号 DL=滚动窗口左上角字符所在的行号 BH=滚动后空行区域填充字符属性 出口参数:无 1. INT 10H 视频程序设计 (4)07H号功能(下滚,其余与06H号类似,) (5)09H号功能 功能: 在当前光标位置显示字符及其属性 入口参数: AL=字符代码(ASCⅡ码) BL=字符属性 CX=字符个数 BH=页号 出口参数: 无 【例】每屏80*25字符的彩色文本方式下,在10行20列位置以兰底白字形式显示40个 “$”。 CSEG SEGMENT ASSUME CS:CSEG STAT: MOV AH,0 ; 置显示方式 MOV AL,3 ; 80*25彩色文本方式 INT 10H MOV AH,2 ; 置光标位置 MOV DH,10 ;光标行号 MOV DL,20 ;光标列号 MOV BH,0 ;光标页号 INT 10H MOV AH,09H ;显示字符及其属性 MOV AL,$ ;字符 MOV BL,9FH ;兰底白字 MOV CX,40 ;字符个数 MOV BH,0 ;页号 INT 10H MOV AH,4CH INT 21H CSEG ENDS END STAT 在屏幕10行20~24列处显示五朵梅花,颜色各异 DATA SEGMENT ATRI DB 6EH,52H,94H,52H,6EH DATA ENDS STACK SEGMENT PARA STACK STACK DB 200 DUP(0) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX MOV AH,0 ;设置80×25彩色文本方式 MOV AL,3 INT 10H LEA SI,ATRI;属性字节值表首址存SI MOV DI,5 ;显示5个字符 MOV DX,0A13H ;显示位置 LP:MOV AH,2;置光标位置 INC DL INT 10H MOV AL,5 ;显示梅花形字符 MOV BL,[SI] MOV CX,1
显示全部
相似文档