首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

x86中断完全版(5)

x86中断完全版(5)

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

2、目录控制功能(Directory-Control Function)
39H - 创建目录
3AH - 删除目录
3BH - 设置当前目录
47H - 读取当前目录

(1)、功能39H

功能描述: 用指定的驱动器和路径创建一个新目录
入口参数: AH=39H
DSX=指定路径的字符串地址(以0为字符串的结束标志)
出口参数: CF=0 -- 创建成功,否则,AX=错误号(03H或05H),其含义见错误代码表

(2)、功能3AH

功能描述: 删除指定的驱动器和路径的目录
入口参数: AH=3AH
DSX=指定路径的字符串地址(以0为字符串的结束标志)
出口参数: CF=0 -- 删除成功,否则,AX=错误号(03H或05H),其含义见错误代码表

(3)、功能3BH

功能描述: 用指定的驱动器和路径设置为当前目录
入口参数: AH=3BH
DSX=指定路径的字符串地址(以0为字符串的结束标志)
出口参数: CF=0 -- 设置成功,否则,AX=错误号(03H),其含义见错误代码表

(4)、功能47H

功能描述: 取当前目录的完全路径字符串
入口参数: AH=47H
DL=驱动器号(0=缺省,1=A,…)
DS:SI=存放当前目录字符串的地址
出口参数: CF=0 -- 读取成功,否则,AX=错误号(0FH),其含义见错误代码表


13)、功能5BH

功能描述: 创建新文件
入口参数: AH=5BH
DSX=路径名的地址
CX=文件属性(位可组合),其定义如下: 位0=1 只读 位4=0 保留
位1=1 隐含 位5=1 归档
位2=1 系统 位6-15=0 保留
位3=1 卷标号

出口参数: CF=0 -- 操作成功,AX=文件句柄,否则,AX=错误号(03H、04H、05H或50H),其含义见错误代码表

(14)、功能67H

功能描述: 设置文件句柄数(最多文件数)
入口参数: AH=67H
BX=句柄的数量
出口参数: CF=0 -- 操作成功,否则,AX=错误号,其含义见错误代码表

(15)、功能6CH

功能描述: 扩展的打开文件功能(打开、创建或替换文件)
入口参数: AH=6CH
AL=00H
DS:SI=路径名的地址
BX=打开方式 位2~0 000-只读  001-只写  010-可读、写
位3 保留(0)
位6~4 000-兼容   001-拒绝读写  010 -- 拒绝写
011-拒绝读  100 -- 不拒绝任何操作
位7 0-子进程继承句柄,1-子进程不继承句柄
位12~8 保留(0)
位13 致命错误处理程序,0-执行INT 24H,否则,返回错误代码给进程
位14 写入方式:0-写入缓冲区,1-直接写入文件
位15 保留(0)
CX=文件属性
位0=1 只读 位4=0   保留
位1=1 隐含 位5=1   归档
位2=1 系统 位6-15=0  保留
位3=1 卷标签

DX=打开标志 位3~0  0-打开失败,1-打开文件,2-替换文件
位7~4  0-打开失败,1-创建文件
位15~8  0-保留


出口参数: CF=1 -- 操作失败,AX=错误号,其含义见错误代码表,否则,
AX=文件句柄
CX=1 -- 文件存在,打开之
 =2 -- 文件不存在,创建之

-------------------------------------------------------------------------------------------------

5、文件操作功能(FCB)(File Operation Function)
0FH - 打开文件 16H -创建文件
10H - 关闭文件 17H -文件换名
11H、12H - 查找第一个或下一个文件 23H -读取文件的大小
13H - 删除文件 29H -分析文件名

(1)、功能0FH

功能描述: 打开文件,并使之为顺序读/写作好准备
入口参数: AH=0FH
DSX=文件控制块的地址
出口参数: AL=00H -- 打开成功,否则,AL=FFH(如文件找不到)
在MS-DOS操作系统中,文件控制块的字段如下表所示。 字段名 偏移量 字段含义
驱动器字 00H 1 for drive A, 2 for drive B,...
当前块字段 0CH 00H
记录大小字段 0EH 0080H
文件长度字段 10H 文件字节数
日期字段 14H 日期
时间字段 16H 时间


(2)、功能10H

功能描述: 关闭文件
入口参数: AH=10H
DSX=文件控制块的地址
出口参数: AL=00H -- 关闭成功,否则,AL=FFH

(3)、功能11H和12H

功能描述: 查找第一个或下一个相匹配的文件
入口参数: AH=11H -- 第一个相匹配的文件
  =12H -- 下一个相匹配的文件
DSX=文件控制块的地址
出口参数: AL=00H -- 查找到,否则,AL=FFH


13)、功能5BH

功能描述: 创建新文件
入口参数: AH=5BH
DSX=路径名的地址
CX=文件属性(位可组合),其定义如下: 位0=1 只读 位4=0 保留
位1=1 隐含 位5=1 归档
位2=1 系统 位6-15=0 保留
位3=1 卷标号

出口参数: CF=0 -- 操作成功,AX=文件句柄,否则,AX=错误号(03H、04H、05H或50H),其含义见错误代码表

(14)、功能67H

功能描述: 设置文件句柄数(最多文件数)
入口参数: AH=67H
BX=句柄的数量
出口参数: CF=0 -- 操作成功,否则,AX=错误号,其含义见错误代码表

(15)、功能6CH

功能描述: 扩展的打开文件功能(打开、创建或替换文件)
入口参数: AH=6CH
AL=00H
DS:SI=路径名的地址
BX=打开方式 位2~0 000-只读  001-只写  010-可读、写
位3 保留(0)
位6~4 000-兼容   001-拒绝读写  010 -- 拒绝写
011-拒绝读  100 -- 不拒绝任何操作
位7 0-子进程继承句柄,1-子进程不继承句柄
位12~8 保留(0)
位13 致命错误处理程序,0-执行INT 24H,否则,返回错误代码给进程
位14 写入方式:0-写入缓冲区,1-直接写入文件
位15 保留(0)
CX=文件属性
位0=1 只读 位4=0   保留
位1=1 隐含 位5=1   归档
位2=1 系统 位6-15=0  保留
位3=1 卷标签

DX=打开标志 位3~0  0-打开失败,1-打开文件,2-替换文件
位7~4  0-打开失败,1-创建文件
位15~8  0-保留


出口参数: CF=1 -- 操作失败,AX=错误号,其含义见错误代码表,否则,
AX=文件句柄
CX=1 -- 文件存在,打开之
 =2 -- 文件不存在,创建之
返回列表