- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编语言---dos与bios功能调用
常用系统功能调用和BIOS
BIOS是BASIC INPUT/OUTPUT SYSTEM的缩写,即基本输入/输出系统,指固化在ROM中的一组程序,以称ROM BIOS。BIOS提供了最低,最直接的硬件控制,是硬件与软件之间的接口。
BIOS主要包括以下一些功能。;(1)系统自检及初始化。例如,系统加电启动时对硬件进行检测;对外部设备进行初始化;设置中断向量;引导操作系统等。
(2)系统服务。为操作系统和应用程序提供系统服务,这些服务主要与I/O设备有关,如读取键盘输入等。为了完成这些操作,BIOS必须直接与I/O设备打交道,它通过端口与I/O设备之间传送数据,使应用程序脱离具体的硬件操作。
(3)硬件中断处理。提供硬件中断服务程序。;;
1. DOS系统调用
MS DOS使用中断号21H作为系统说明,为程序员提供了上百种系统服务功能。
对这些功能的调用步骤如下:
(1)由AH给出功能号;
(2)根据相应功能的要求,设置入口???数。入口参数是子程序运行所需要的数据,DOS系统功能调用的入口参数通常是放在指定的内部寄存器器中,少数功能调用也可以没有入口参数;
(3)执行中断指令INT 21H;
(4)分析和使用出口参数。;;
(2)显示一个字符
功能号:02H。
入口参数:DL=要显示字符的ASCII码。;(3)显示一个字符串
功能号:09H。
入口参数:DS:DX=欲显示字符串在内存的首地址,且字符串必须以‘$’(24H) 作为结束符。
出口参数:无。
功能:在当前光标位置,显示由DS:DX所指的、以‘$’结尾的字符串,且光标右移。其中,‘$’不算在显示的字符串之内。;;下面介绍一下其他功能:
(1)AH=25H:设置中断向量
入口参数:AL=中断号。
DS:DX=中断向量。
功能:将AL所指中断号的中断向量设置为DS:DX。
(2)AH=35H:获取中断向量
入口参数:AL=中断号。
出口参数:ES:BX=中断向量。
功能:将AL的指中断号的中断向量由ES:BX返回。
(3)AH=31H:程序终止并驻留内存
入口参数:AL=返回码。
DX=驻留内存的节数(1字=16字节)。
功能:终止程序执行,全由DX所确定的一部分代码工数据仍留在内存中。;2、BIOS服务
BIOS提供了访问主要I/O设备的服务程序。 ;(2)INT=16H:键盘输入
①AH=0:从键盘读一键
出口参数:AL=ASCII码,AH=扫描码。
功能:从键盘读入一个键后返回,按键不显示在屏幕上。对于无相应ASCII码的键,如功能键等,AL返回0。
扫描码是表示按键所在位置的代码,有关细节将在以后讨论。
②AH=1:判断是否有键可读
出口参数:若ZF=0,则有键可读,AL=ASCII码,AH=扫描码;否则,无键可读。
③AH=2:返回变换键的当前状态
出口参数:AL=变换键的状态。;BIOS调用与DOS调用的比较;;;用户可以用四种方式控制PC的硬件;;[例]:读键盘输入,显示其中的ASCII字符,按回车键退出,源程序如下。
CSEG SEGMENT PARA PUBLIC ‘CODE’
ASSUME CS:CSEG
START:
READNEXT: MOV AH,0
INT 21H
CMP AL,0DH
JZ READNEXT
MOV AH,0EH
INT 10H
JMP READNEXT
EXIT: MOV AH,4CH
INT 21H
CSEG ENDS
END START;习 题
1.假设VAR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处:
(1)ADD VAR1,VAR2
(2)SUB AL,VAR1
(3)JMP LAB[SI]
(4)JNZ VAR1
(5)JMP NEAR LAB
2.画图说明下列语句所分配的存储空间及初始化的数据值。
(1)BYTE_VAR DB ‘BYTE’,12,-12H,3 DUP(0,?,2 DUP(1,2),?)
(2)WORD_VAR DW 5 DUP
您可能关注的文档
最近下载
- DIN 9830 冲压件切割毛边高度.pdf VIP
- 2024-2025学年广东省深圳市红岭中学九年级上学期开学考数学试题及答案.pdf VIP
- 2020秋部编人教版语文二年级上册全册课件.pptx VIP
- 古建筑传统瓦工(砧刻工砌花街工泥塑工古建瓦工)施工机械用电管理详细措施.docx VIP
- (高清版)DB51∕T 2997-2023 四川省水文数据通信传输指南 .pdf VIP
- 二升三年级数学暑假作业完整版25天.pdf VIP
- 统编《世界历史》九年级上册教材分析与建议.doc VIP
- 沪教牛津版八年级英语上册词汇表.docx VIP
- 2025年全国翻译专业资格(水平)考试西班牙语二级口译试卷.docx VIP
- GB∕T 5796.1-2022 梯形螺纹 第1部分:牙型.pdf
文档评论(0)