




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
●键盘I/O●显示器I/O●打印机I/O●串行通信口I/O第九章BIOS和DOS中断子程序调用
主程序
……CALLSUBP
……
子程序…………RETDOS/BIOS调用
源程序
……INTn
……DOS/BIOS
例行程序…………IRET实现机制不同
BIOS和DOS基本调用调用方法:1、将调用参数装入指定的寄存器中;2、BIOS或DOS功能号装入AH;3、如需子功能号,把它装入AL;4、按中断号调用DOS或BIOS中断(INT);5、检查或取得返回参数。
1.键盘I/O(1)BIOS键盘中断(INT16H)AH功能返回参数
0从键盘读一字符AL=字符码,AH=扫描码
1读键盘缓冲区的字符如ZF=0,AL=字符码,
AH=扫描码如ZF=1,缓冲区空
2取键盘状态字节AL=键盘状态字节
字符数字键字符码为ASCII码功能键、控制键字符码为0对应一个扫描码DOS键盘中断(INT21H)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
DATASEGMENT
MAXLENDB32
MAXLENDB32,0,32DUP(?)ACTLENDB?MAXLENDB32,33DUP(?)STRINGDB32DUP(?)DATAENDSCODE SEGMENT
… LEA DX,MAXLEN MOV AH,0AH INT 21H …CODE ENDS END32568H61H70H70H79H0DHMAXLENACTLENSTRING
BIOS显示中断INT10H
功能号AH=0,1,2,3,5,6,7,8,9,0AH,0EH13H(p.328)
例:清除屏幕
mov ah,6 ;屏幕初始化
mov al,0 ;全屏空白
mov
bh,7 ;卷入行属性
mov
ch,0 ;左上角行号
mov
cl,0 ;左上角列号
mov dh,24 ;右下角行号
mov dl,79 ;右下角列号
int 10h ;BIOS调用
定义窗口例:
在品红背景下,显示5个浅绿色闪烁的星号。
MOV AH,09
;光标位置下显示MOV AL,’*’ ;显示字符MOV BH,0 ;显示页0MOV BL,0DAH;1
101
1010
(表9.7)
MOV CX,05 ;显示次数
INT 10H
;BIOS调用例:在屏幕上以红底兰字显示字符串:“WORLDSCENERY”STRING DB ‘WORLDSCENERY’;定义在ES段LEN_TR DW 13 ┇ MOV AL,3 ;80×25,16色文
本方式
MOV AH,0
INT 10H MOV BP,SEGSTRING MOV ES,BP ;串地址ES:BP MOV BP,OFFSETSTRING MOV CX,LEN_STR;串长度
MOV DX,0 ;起始行列 MOV BX,0041H ;0100
0001(属性) MOV AL,1 ;子功能
MOV AH,13H
;显示字符串
INT 10H
例:显示字符串MESSAGEDB‘Thesortoperationisfinished.’,13,10,’$’……
MOVAH,9 MOVDX,SEGMESSAGE MOVDS,DX MOVDX,OFFSETMESSAGE
INT21H3.打印机I/O(p.336)INTAH功能调用参数返回参数21H5
打印一个字符
DL=字符
17H0
打印一个字符
AL=字符AH=状态字节
并回送状态字节
DX=打印机号
17H1
初始化打印机
DX=打印机号AH=状态字节
回送状态字节
17H2
回送状态字节
DX=打印机号AH=状态字节例:
打印字符串TEXT(DOS)TEXTDB‘Hello,everybody!’COUNTEQU$-TEXT;COUNT=17…… MOVCX,COUNT MOVBX,0 NEXT:MOVAH,5
MOVDL,TEXT[BX]
INT21H INC BX LOOPNEXT
4.串行通信口I/ODOS串行通信口功能(INT21H)AH功能调用参数返回参数3读字符AL=读入的数据4写字符DL=写入的数据(2)BIOS串行通信口功能(INT14H)AH功能调用参数返回参数0初始化串行通信口AL=初始化参数AH=通信口状态DX=通信口号AL=modem状态1向通信口写字符AL=所写字符成功:AL=字符DX=通信口号失败:AH=口状态2从通信口读字符DX=通信口号成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年微波集成电路AL2O3基片资金筹措计划书代可行性研究报告
- 2024年甲氧基酚资金筹措计划书代可行性研究报告
- 直播销售电子教案 项目七任务一:直播销售数据采集 教案
- 2025年中国变色玻璃行业市场前景预测及投资价值评估分析报告
- 2025年嵌入式考试政策解读试题及答案
- 高端体育赛事品牌赞助全面合作协议
- 抖音火花汽车行业品牌合作共赢合同
- 虚拟偶像IP与动漫产业联合开发合同
- 2025年中国保险杠行业市场前景预测及投资价值评估分析报告
- 新能源汽车试驾体验及售后服务保障及充电设施建设合同
- 浙江省杭州市滨江区2022-2023学年七年级下学期期末语文试卷(含答案)
- 诚信教育主题班会
- 成都医学院辅导员考试真题2022
- 氯磺化聚乙烯生产工艺技术
- 桐庐县2023年三下数学期末综合测试试题含解析
- 装饰施工阶段安全检查表完整
- 数值课件第章非线性方程求根
- TEC-5600除颤操作培训
- 苏科版二年级下册劳动第7课《做皮影》课件
- 芯片手册盛科sdk用户开发指南
- SH/T 0659-1998瓦斯油中饱和烃馏分的烃类测定法(质谱法)
评论
0/150
提交评论