标准 MS-DOS 文件 I/O 服务详解
在 MS-DOS 编程中,文件和目录的 I/O 操作是非常重要的部分。INT 21h 提供了丰富的文件和目录 I/O 服务,下面将详细介绍其中一些常用的功能。
1. 文件/设备句柄
MS-DOS 和 MS-Windows 使用 16 位整数(句柄)来标识文件和 I/O 设备。有五个预定义的设备句柄,除了句柄 2(错误输出)外,其他句柄都支持在命令提示符下进行重定向。这些句柄始终可用:
| 句柄值 | 描述 |
| ---- | ---- |
| 0 | 键盘(标准输入) |
| 1 | 控制台(标准输出) |
| 2 | 错误输出 |
| 3 | 辅助设备(异步) |
| 4 | 打印机 |
每个 I/O 函数都有一个共同特点:如果操作失败,进位标志(Carry flag)会被设置,并且错误代码会返回到 AX 中。可以使用这个错误代码来显示相应的错误信息。以下是一些常见的 MS-DOS 扩展错误代码及其描述:
| 错误代码 | 描述 |
| ---- | ---- |
| 01 | 无效的函数编号 |
| 02 | 文件未找到 |
| 03 | 路径未找到 |
| 04 | 打开的文件过多(没有可用的句柄) |
| 05 | 访问被拒绝 |
| 06 | 无效的句柄 |
| 07 | 内存控制块被破坏 |
| 08 | 内存不足 |
| 09 | 无效的内存块地址 |
| 0A | 无效的环境 |
| 0B | 无效的格式 |
|
MS-DOS文件I/O服务详解
超级会员免费看
订阅专栏 解锁全文
1

被折叠的 条评论
为什么被折叠?



