DOS系统功能调用

DOS系统功能调用

ID:38183779

大小:61.00 KB

页数:5页

时间:2019-05-24

DOS系统功能调用_第1页
DOS系统功能调用_第2页
DOS系统功能调用_第3页
DOS系统功能调用_第4页
DOS系统功能调用_第5页
资源描述:

《DOS系统功能调用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、南京工程学院教案4.4DOS系统功能调用4.4.1中断的基本概念所谓中断是指当系统运行时或程序运行期间,遇到特殊情况,需要CPU停止执行当前程序,产生断点转去执行处理例行程序(中断处理程序),处理完后又返回断点处继续执行主程序的过程。中断指令:INTn,类型号n=00H~FFH,共256种中断类型。中断处理程序的入口地址(称中断向量)的存放地址为4n、4n+1(存放IP)、4n+2、4n+3(存放CS)。中断类型号n=00H~04H为规定的专用中断,n=08H~0FH为分配给主板和扩展槽上的基本外设的中断服务子程序,n=10

2、H~1AH为BIOSROM中的I/O子程序,n=20H~3FH为DOS功能子程序。n=40H~7FH留给用户使用。4.4.2DOS系统功能调用(FuncitionCALL)DOS(磁盘操作系统)的核心模块包括IBMBIO.COM(基本I/O设备处理程序)和IBMDOS.COM(磁盘文件管理程序),这两个模块均有若干子功能可以被用户程序调用。IBMBIO.COM完成数据输入和输出的基本操作,对I/O设备进行管理。IBMDOS.COM完成磁盘与文件管理的功能,存放在磁盘上,系统启动时装入内存,用户应用程序及DOS的大部分命令都将

3、通过软件中断调用它们。图1操作系统MS-DOS的结构DOS提供了许多命令供用户直接使用和80多个功能子程序供汇编语言程序设计时调用使用。用户程序通过INT21H软中断指令调用DOS系统功能,并将所有功能子程序放在其中断服务程序中按顺序编号(即子程序的功能号)。这些调用包含了整个DOS系统的功能,因此INT21H被称为“DOS系统功能调用”。DOS系统功能调用模式(步骤):1)传送入口参数到指定的寄存器。2)子程序的功能号送AH寄存器。3)执行INT21H。程序员给出这3个方面的信息,不必关心具体的子程序以及它在内存中的实际存

4、放地址,DOS根据所给出的信息,自动地转入相应的子程序去执行。调用结束后,出口参数一般在寄存器中,屏幕显示字符的子程序则会立即在屏幕上看到结果。一些注意点:①从键盘输入的字符在机器内由系统自动转换为ASCII码。②需要在屏幕上显示的字符,必须在程序中把它们转换为ASCII码。③在对09H功能号调用时,需要在被显示字符串的后面加上字符传结束标志$。南京工程学院教案④调用结束后,若要返回DOS或DEBUG状态,应在程序后加入退出语句:MOVAH,4CHINT21H4.4.3常用基本I/O子程序调用例举系统向用户提供了十分有效的基

5、本I/O子程序。这些子程序有2个存放的地方:一个是在DOS系统功能调用中,是常用的一类基本I/O管理及时间、日期的处理子程序。另一个是在BIOS的固化ROM中,就是基本I/O子程序,允许用户在程序设计时使用INTn指令调用。1、键盘输入单字符并显示功能号:01H,无入口参数。MOVAH,01HINT21H功能:等待键入,将键入的字符送AL寄存器并显示。2、键盘输入字符串功能号:0AH,入口参数:DS:DX=缓冲区首地址功能:将键盘键入的以ENTER(0DH)结尾的字符串写到DS:DX指定的内存区。为此,应先用程序设置一内存区

6、。例数据段:BUFDB20;第一个字节设置最大长度(含0DH)DB?;第二个字节空出,由DOS最后填写实际长度(不含0DH)DB20DUP(?);第三字节开始写字符代码段:MOVDX,OFFSETBUFMOVAH,0AHINT21H注:键入字符超出缓冲区范围,超出的字符丢失且响铃警告。若小于设置范围,保持原来内容。图2例题数据段示意图3、输出单字符调用号:02H,入口参数:DL功能:将DL的内容显示(DL=待输出字符的ASII码)MOVDL,‘A’MOVAH,02HINT21H程序执行后,在显示器上显示字符A4、输出字符串南

7、京工程学院教案调用号:09H,入口参数:DS:DX(缓冲区首地址)功能:将缓冲区内以$结尾的字串显示,$(24H)不显示。BUFDB‘ABCDEF$’MOVDX,OFFSETBUFMOVAH,09HINT21H执行结果在显示器上显示ABCDEF5、返回操作系统调用号:4CH,无入口参数。MOVAH,4CHINT21H结束当前程序,返回操作系统。6、设置中断向量调用号:25H,入口参数:AL=中断类型号,DS:DX=中断程序入口地址。若中断类型号是40H,中断程序入口地址0300:2400H(中断向量)。MOVAX,0300H

8、MOVDS,AXMOVDX,2400HMOVAH,25HMOVAL,40HINT21H其他DOS功能调用请参见有关教材附表,在应用时通过查表获知其具体功能。南京工程学院教案[有空就练]04/05-2考试题1、执行下列程序段后AL=()。MOVAL,128MOVCL,2SHRAL,CLMOV

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。