- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
清华大学“汇编语言课程”教案第9章
* 第九章 BIOS 和 DOS 中断 汇编 语言 键盘 I/O 显示器 I/O 打印机 I/O 串行通信口 I/O 主要内容: 汇编 语言 子程序调用 主程序 …… CALL SUBP …… 子程序 …… …… RET DOS/BIOS调用 源程序 …… INT n …… DOS/BIOS 例行程序 …… …… IRET 实现机制不同 汇编 语言 BIOS和DOS基本调用 调用方法: 1、将调用参数装入指定的寄存器中; 2、BIOS或DOS功能号装入AH; 3、如需子功能号,把它装入AL; 4、按中断号调用DOS或BIOS中断(INT); 5、检查或取得返回参数。 汇编 语言 例:DOS调用:键盘输入,显示输出 MOV AH, 01 ;DOS功能号:键盘输入 INT 21H ;DOS调用 MOV CHAR, AL ;返回参数: (AL) MOV DL, ’A’ ;调用参数: 输出字符 MOV AH, 02 ; DOS功能号: 显示输出 INT 21H ; DOS调用 汇编 语言 1. 键盘 I/O (1) BIOS键盘中断 (INT 16H) AH 功能 返回参数 0 从键盘读一字符 AL=字符码,AH=扫描码 1 读键盘缓冲区的字符 如ZF=0,AL=字符码, AH=扫描码 如ZF=1,缓冲区空 2 取键盘状态字节 AL=键盘状态字节 字符数字键 字符码为ASCII 码 功能键、控制键 字符码为0 对应一个扫描码 汇编 语言 DOS键盘中断 (INT 21H) AH 功 能 调用参数 返回参数 1 从键盘输入一个字符并回显在屏幕上 AL=字符 6 读键盘字符,不回显 DL= 0FFH 若有字符可取,AL=字符,ZF=0 ? 若无字符可取,AL=0,ZF=1 7 从键盘输入一个字符,不回显 AL=字符 8 从键盘输入一个字符,不回显, AL=字符 检测Ctrl-Break A 输入字符到缓冲区 DS:DX = 缓冲区首址 B 读键盘状态 AL=0FFH有键入,AL=00无键入 C 清除键盘缓冲区, AL=键盘功能号 并调用一种键盘功能 (1,6,7,8或A) 汇编 语言 例: 输入字符串到缓冲区STRING DATA SEGMENT MAXLEN DB 32 A
文档评论(0)