- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计第01章第10章课件
第10章 DOS功能调用与BIOS中断调用; 利用DOS(磁盘操作系统)功能调用和BIOS(基本输入输出)中断调用,程序员在不必了解硬件I/O接口特性的情况下,能非常方便地完成标准设备输入、数据输入、文件管理和系统信息查询等操作。 ;BIOS和DOS中断子程层次特点; 层次特点:
ROM BIOS中的中断子程
使用IN/OUT指令直接控制外设,
实现与外设之间的输入/输出操作,
以软件形式向其上层提供服务。
IO.SYS中的中断子程
( 称基本输入/输出BIOS模块)
调用ROM BIOS的基本I/O功能,
向 MSDOS.SYS提供设备驱动服务。; MSDOS.SYS中的中断子程
( 称DOS内核模块 )
调用IO.SYS,实现对外设的控制。
与标准外设有两层隔离 :
IO.SYS和ROM BIOS。
其中21H类型的中断子程
提供了丰富的系统服务,
称21类型的中断调用
为DOS系统(功能)调用。; 用户编程原则
①尽可能使用DOS的系统功能调用,
提高程序可移植性。
②在DOS功能不能实现情况下,
考虑用BIOS功能调用。
③在DOS和BIOS的中断子程
不能解决问题时,
使用IN/OUT指令直接控制硬件。;中断与中断源;非屏蔽中断请求;2. 中断类型分类
向量表中的中断类型分为七类:
① 处理CPU特殊操作( 除0、溢出 )的00H、04H类型。
② 为DEBUG调试程序设置的单步( 01H )、断点( 03H )类型。
③ 处理CPU的NMI引脚信号的02H类型。
非屏蔽硬中断子程
④ 处理CPU的INTR引脚信号的08~0FH类型。
可屏蔽类型硬中断子程
⑤ 用INT指令调用的中断子程
BIOS功能调用(如10~1AH)
DOS功能调用 (如 21H);⑥ 保留类型
为DOS系统保留
1)指现在未用到,以后系统可能会用到。
2)已用到,但不向用户公开。
为用户保留
1)被系统子程嵌套调用了的类型 ( 如1BH、1CH )。
使用户在系统功能基础上扩充功能。
2)系统未占用类型 ( 如 60H~67H )。
⑦ 非中断向量类型
对应向量表中的4个单元存放的不是中断向量。
(如1DH、1EH、1FH、41H、46H、22H)
通常是一些参数表的地址信息.; 中断向量分配表;参年揣焚嘘钥喳辩堆盎鸵刘鳞度堤汀恋机吾裸我睁磨龚惊询筏艘操轿蚤铝汇编语言程序设???第01章第10章课件汇编语言程序设计第01章第10章课件;滨逾栓疤步糯且磕卡玻勺信盆赢近晓藏屹队兰绰臭耐找更愁淌掏承恩否旦汇编语言程序设计第01章第10章课件汇编语言程序设计第01章第10章课件;3. 调用方法;例1 单字符显示功能调用
MOV DL, ‘A’ ;设置入口参数
MOV AH, 02H ;设置功能号
INT 21H ;执行中断调用
例2 单字符输入功能调用
MOV AH, 01H ;设置功能号
INT 21H ;执行中断调用;10.2 BIOS中断调用;10.2.1 BIOS中断调用方法;10.2.2 常用BIOS中断调用;例:BIOS键盘中断 ( INT 16H);INT 10H 视频程序设计;1. INT 10H 视频程序设计;1. INT 10H 视频程序设计;1. INT 10H 视频程序设计;【例】每屏80*25字符的彩色文本方式下,在10行20列位置以兰底白字形式显示40个 “$”。;在屏幕10行20~24列处显示五朵梅花,颜色各异;LP:MOV AH,2;置光标位置
INC DL
INT 10H
MOV AL,5 ;显示梅花形字符
MOV BL,[SI]
MOV CX,1
MOV AH,9
INT 10H
INC SI;指向下一属性字节
DEC DI;判显示完否
JNZ LP;未完转LP再显示
MOV AH,4CH;完,返回DOS
INT 21H
CODE ENDS
END START;采用直接对显示卡的寄存器和显示缓冲区编程的方法,在VGA图形模式13H(即320×200,256色)下作图,画一条彩色的线。;DATA SEGMENT
SCR_LINE DW 0
SCR_COL DW 0
CUR_COLOR db 0h
DATA
文档评论(0)