DOS及BIOS INT 21H功能调用详解
需积分: 33 92 浏览量
更新于2024-10-31
收藏 159KB DOC 举报
"INT 21H是MS-DOS操作系统中常用的一个系统调用接口,它提供了与BIOS(基本输入输出系统)和DOS进行交互的一系列功能。通过调用INT 21H中断,程序员可以实现诸如输入输出、文件管理、磁盘操作等基本的系统任务。本文档详细列出了INT 21H的功能调用一览表,包括功能号、入口参数和出口参数。"
在编程中,INT 21H是IBM PC兼容机上DOS系统的核心组成部分,它提供了一种方法,让应用程序能够利用DOS和BIOS提供的服务。当调用INT 21H时,通常需要按照以下步骤进行:
1. **准备参数**:根据不同的功能调用,将所需参数放入特定的寄存器。例如,功能号可能需要放入AH寄存器,而子功能号可能放入AL寄存器。
2. **调用中断**:一旦参数准备好,就可以通过执行中断指令INT 21H来触发DOS或BIOS的服务。中断处理程序会读取寄存器中的参数并执行相应的功能。
3. **检查返回值**:服务执行完毕后,DOS或BIOS会将结果或状态信息放回特定的寄存器,如AL或AX。这时,调用程序需要检查这些返回值以确认操作是否成功。
以下是部分INT 21H功能调用的说明:
- **编号0**:程序终止,通过将CS和PSP段地址传入,结束当前程序。
- **编号1**:带回显的字符输入,将输入的字符读入AL寄存器,并在屏幕上显示。
- **编号2**:字符输出,将DL寄存器中的8位数据(一个字符)输出到屏幕或打印机。
- **编号9**:显示字符串,将DS:DX指向的字符串输出到屏幕。
- **编号OAHH**:缓冲输入,从指定的缓冲区读取字符,功能号可以用于不同类型的输入操作。
- **编号OCHH**:重置输入缓冲区后输入,根据功能号(如1/6/7/8/OAH)重置输入缓冲区。
- **编号OEH**:置缺省盘驱动器,设置默认驱动器为指定的驱动器号(DL=0=A,1=B等)。
- **编号OFHH**:打开文件,通过FCB(文件控制块)打开文件,AL返回0表示成功,-1表示失败。
- **编号14H**:顺序读,从文件中读取数据,返回码在AL中。
- **编号15H**:顺序写,向文件中写入数据,返回码同样在AL中。
- **编号1AH**:设置DTA(数据传输区),允许程序指定一个内存区域作为数据传输的默认位置。
这些功能调用涵盖了文件操作、设备I/O、字符串处理、驱动器管理和系统信息查询等多个方面,构成了DOS编程的基础。通过熟练掌握INT 21H,开发者可以编写出能在DOS环境下运行的各种应用程序。
118 浏览量
点击了解资源详情
198 浏览量
528 浏览量
408 浏览量
658 浏览量
2021-10-11 上传
155 浏览量
242 浏览量
Lin110120
- 粉丝: 0
- 资源: 2
最新资源
- 网络你让我难过中的经典好资源用过都说好
- 批处理教程(txt)
- C#拷屏代码.txt
- 高数知识点高数总结。。。。
- SQL 语言 艺术 适合SQL数据库开发者
- Web_Dynpro_for_ABAP NW2004s_SPS8
- 严蔚敏数据结构习题集答案
- max197AD说明书
- wince 驱动快速编译的方法
- grails-reference-documentation-1.1.x.pdf
- asp.net图书管理系统
- Cdma高FER优化
- Manning.Publications.wxPython.in.Action.Mar.2006(pdf版)
- 快速精通linux-from window to linux
- 无线分布式网络图像视频编码
- 单片机设计数字音乐盒