⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 int21.txt

📁 会变语言实现的一些程序
💻 TXT
📖 第 1 页 / 共 3 页
字号:
出口参数: 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——文件不存在,创建之 
(1)、功能0FH

 功能描述: 打开文件,并使之为顺序读/写作好准备 
入口参数: AH=0FH
DS:DX=文件控制块的地址 
出口参数: 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
DS:DX=文件控制块的地址 
出口参数: AL=00H——关闭成功,否则,AL=FFH 

(3)、功能11H和12H

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

(4)、功能13H

 功能描述: 在指定(或缺省)的驱动器中,删除所有相匹配的文件 
入口参数: AH=13H
DS:DX=文件控制块的地址 
出口参数: AL=00H——删除成功,否则,AL=FFH 

(5)、功能16H

 功能描述: 在当前目录中创建一个文件,其文件长度为0,并打开该文件,为随后的读/写操作作好必要的准备 
入口参数: AH=16H
DS:DX=未打开的文件控制块的地址 
出口参数: AL=00H——创建成功,否则,AL=FFH(如:磁盘满) 

(6)、功能17H

 功能描述: 在指定的驱动器的当前目录中,把所有相匹配的文件换名 
入口参数: AH=17H
DS:DX=指定文件控制块的地址 
出口参数: AL=00H——换名成功,否则,AL=FFH 

(7)、功能23H

 功能描述: 在当前目录中查找一个相匹配的文件。如果发现,则用其记录数来更新其文件大小 
入口参数: AH=23H
DS:DX=未打开的文件控制块的地址 
出口参数: AL=00H——匹配成功,FCB中偏移量为21H的字段被设置为其记录数,否则,AL=0FFH 

(8)、功能29H

 功能描述: 分析一个字符串(文件名)置入FCB表中的不同字段 
入口参数: AH=29H
CX=要写入的记录数
DS:SI=字符串段的地址
ES:DI=FCB的地址
AL=分析的控制标志位 位3=1——
 若字符串中有文件后缀,则FCB中的文件后缀将改变 
=0—— 若后缀忽略修改,或若分析后无后缀,则FCB中后缀字段被置为“空” 
位2=1—— 若字符串中有文件名,则FCB中的文件名将改变 
=0—— 若文件名忽略修改,或若分析后无文件名,则FCB中文件名字段被置为“空” 
位1=1—— 若字符串中指定了驱动器号,则FCB中的ID字节被修改 
=0—— 若ID字节忽略修改,或若分析后没有指定驱动器号,则FCB中驱动器字段被置为0(缺省值) 
位0=1——
=0—— 忽略前导分割符
不忽略前导分割符 
 
出口参数: AL=00H—没有通配字符 01H—有通配字符 FFH—驱动器号非法
DS:SI=分析后文件名第一个字符的地址
ES:DI=格式化后的、未打开的FCB地址 
(1)、功能1AH

 功能描述: 设置磁盘传送数据区地址,为随后FCB相关操作作准备 
入口参数: AH=1AH
DS:DX=指定文件控制块的地址 
出口参数: 无 

(2)、功能2FH

 功能描述: 为FCB读/写操作而获取DTA的当前地址 
入口参数: AH=2FH 
出口参数: ES:BX=DTA的段地址和偏移量 

(3)、功能3FH

 功能描述: 从先前打开的文件中读出指定数目的字节,并移动文件指针 
入口参数: AH=3FH
BX=文件句柄
CX=将要读出的字节数
DS:DX=存放字符的缓冲区地址 
出口参数: CF=0——读取成功,AX=读取的字符数,否则,AX=错误号(05H或06H),其含义见错误代码表 

(4)、功能40H

 功能描述: 向先前打开的文件写入指定数量的字节,并相应修改文件指针 
入口参数: AH=40H
BX=文件句柄
CX=写入的字节数
DS:DX=存放数据的缓冲区地址 
出口参数: CF=0——关闭成功,AX=写入的字节数,否则,AX=错误号(05H或06H),其含义见错误代码表 

(5)、功能42H

 功能描述: 设置文件指针的相对位置(相对与文件头、文件尾和当前位置) 
入口参数: AH=42H
BX=文件句柄
CX=偏移量的高位
DX=偏移量的低位
AL=00H——从文件头开始的绝对偏移量
 =01H——从当前文件指针开始的偏移量(可带符号)
 =02H——从文件尾开始的偏移量(可带符号) 
出口参数: CF=0——设置成功,DX是指针的高位,AX是其低位,否则,AX=错误号(01H和06H),其含义见错误代码表。 

(6)、功能5CH

 功能描述: 文件区域加锁或解锁 
入口参数: AH=5CH
AL=00H——区域加锁  01H——区域解锁
BX=文件句柄
CX:DX=区域偏移量
SI:DI=区域长度
DS:DX=路径名的地址 
出口参数: CF=0——操作成功,否则,AX=错误号(01H、06H、21H或24H),其含义见错误代码表 

(7)、功能68H

 功能描述: 提交文件缓冲区数据 
入口参数: AH=68H
BX=文件句柄 
出口参数: CF=0——操作成功,否则,AX=错误号,其含义见错误代码表 
(1)、功能14H

 功能描述: 从文件中读出下一个顺序块,并相应增加文件的指针 
入口参数: AH=14H
DS:DX=先前打开文件控制块的地址 
出口参数: AL=00H——读取成功  01H——文件尾
  02H——段缠绕   03H——部分记录在文件尾 

(2)、功能15H

 功能描述: 向文件写入下一个顺序数据块,并相应增加文件的指针 
入口参数: AH=15H
DS:DX=先前打开文件控制块的地址 
出口参数: AL=00H——写入成功  01H——磁盘满  02H——段缠绕 

(3)、功能21H

 功能描述: 从文件中读出当前选定的记录 
入口参数: AH=21H
DS:DX=先前打开文件控制块的地址 
出口参数: AL=00H——读取成功   01H——文件尾
  02H——取消读操作  03H——部分记录在文件尾 

(4)、功能22H

 功能描述: 把内存中的数据写入在文件中当前选定的记录 
入口参数: AH=22H
DS:DX=先前打开文件控制块的地址 
出口参数: AL=00H—写入成功  01H—磁盘满  02H—取消写操作 

(5)、功能24H

 功能描述: 设置FCB中相对记录数作为被打开FCB中的记录数 
入口参数: AH=24H
DS:DX=先前打开文件控制块的地址 
出口参数: AL的值被破坏,其它寄存器不受影响,FCB中偏移量21H单元被修改 

(6)、功能27H

 功能描述: 从文件中读出若干个记录到内存中 
入口参数: AH=27H
DS:DX=先前打开文件控制块的地址 
出口参数: AL=00H——读取成功   01H——文件尾
  02H——取消读操作  03H——部分记录在文件尾
CX=实际读出的记录数 

(7)、功能28H

 功能描述: 从内存向文件中写入若干个记录 
入口参数: AH=28H
CX=要写入的记录数
DS:DX=先前打开文件控制块的地址 
出口参数: AL=00H——写入成功  01H——磁盘满  02H——段缠绕
CX=实际写入的记录数 
(1)、功能48H

 功能描述: 分配一块内存单元,并返回该块内存单元的首地址 
入口参数: AH=48H
BX=需要申请的内存单元字节数 
出口参数: CF=0——分配成功,AX=存储单元的首地址,否则,AX=错误号(07H或08H),其含义见错误代码表,BX=还可用的最大块数 

(2)、功能49H

 功能描述: 释放内存单元块以便为其它程序使用 
入口参数: AH=49H
ES=被申请块的段地址 
出口参数: CF=0——释放成功,否则,AX=错误号(07H或09H),其含义见错误代码表 

(3)、功能4AH

 功能描述: 根据程序的需要,动态地改变一个内存块 
入口参数: AH=4AH
BX=需要一个新存储块的大小
ES=被修改块的段地址 
出口参数: CF=0——修改成功,否则,AX=错误号(07H、08H或09H),其含义见错误代码表,BX=可用最大块的大小 

(4)、功能58H

 功能描述: 读取/设置内存分配策略 
入口参数: AH=58H 读取内存分配策略 AL=00H 
设置内存分配策略 AL=01H
BX=内存分配策略代码:
   00H—第一满足
   01H—最好满足
   02H—最后满足 
 
出口参数: CF=0——操作成功,AX=已选用的内存分配策略代码(含义如上说明),否则,AX=错误号(01H),其含义见错误代码表 
(1)、功能25H

 功能描述: 设置中断向量表 
入口参数: AH=中断号
DS:DX=中断处理程序的入口地址 
出口参数: 无 

(2)、功能30H

 功能描述: 取MS-DOS操作系统的版本号 
入口参数: AH=30H 
出口参数: AL=0——V 1.0;对其它高版本有:AL=主要版本号
AH=次版本号(MS-DOS 3.1=0AH,...)
BH=OEM的序列号(Original Equipment Manufacturer)
BL:CX=24位用户序列号 

(3)、功能33H

 功能描述: 获得或改变操作系统中断的状态。在功能调用期间,将影响^C的检测 
入口参数: AH=33H
AL=00H——取状态
 =01H——设置状态,DL=00/01表示置该状态OFF/ON 
出口参数: 取状态时,DL=00/01——分别表示OFF/ON
说明:
 1、若AL中存入其它的功能号,则返回时,AL的值为0FFH;
 2、若置AL为5,则启动驱动器号返回在DL中(1-A,2-B,…)  

(4)、功能34H

 功能描述: 获得InDos标志的远地址,它由DOS维护表示DOS时活跃的 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -