| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 927 人关注过本帖
标题:我找到的中断大全(由于发帖限制分五个贴)2
取消只看楼主 加入收藏
hjj1123
Rank: 1
等 级:新手上路
帖 子:198
专家分:0
注 册:2006-7-29
收藏
 问题点数:0 回复次数:0 
我找到的中断大全(由于发帖限制分五个贴)2

(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地址

6、记录操作功能(Record Function)
1AH —设置数据传输区地址42H —设置文件指针
2FH —读取数据传输区地址5CH —文件区域加锁或解锁
3FH —读文件或设备68H —提交文件缓冲区数据
40H —写文件或设备

(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=错误号,其含义见错误代码表

7、记录操作功能(FCB)(Record Function)
14H —顺序读24H —设置相对记录数
15H —顺序写27H —随机读块
21H —随机读28H —随机写块
22H —随机写

(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=实际写入的记录数

8、内存分配功能(Memory-Allocation Function)
48H —分配内存块
49H —释放内存块
4AH —重定义内存块的大小
58H —读取/设置内存分配策略

(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),其含义见错误代码表

9、系统功能(System Function)
25H —设置中断向量
30H —读取MS-DOS版本号
33H —读取/设置Break标志
34H —读取InDOS标志的地址
35H —读取中断向量
38H —读取/设置国家信息
44H —IOCTL(I/O控制)
50H —设置程序段前缀(PSP)地址
51H —读取程序段前缀(PSP)地址
59H —读取扩展的错误信息
5EH —读取机器名,读取/设置打印机配置
5FH —设备重定向
63H —读取前导字节表
65H —读取扩展的国家信息
66H —读取/设置代码页
5D0AH —设置扩展的错误信息

(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时活跃的
入口参数:AH=34H
出口参数:ES:BX=InDos标志的远地址
若该单元值为1,表示DOS功能在执行,否则,则不是。

(5)、功能35H
功能描述:取指定中断号的入口地址
入口参数:AH=35H
AL=中断号
出口参数:ES:BX=中断处理程序的入口地址

(6)、功能38H
功能描述:读取或设置国家信息
入口参数:AH=38H 当读取国家信息时
DS:DX=存放返回信息的地址
AL=0——取当前国家信息
AL=1~0FEH——取国家代码小于255的国家信息
AL=0FFH——取代码大于等于255的国家信息,BX=国家代码
设置国家信息时
DX=0FFFFH
AL=0~0FEH——设置国家代码小于255的国家信息
AL=0FFH——置代码大于等于255的国家信息,BX=国家代码

出口参数:CF=0——调用成功,BX=国家代码,否则。AX=错误代码(02H),其含义见错误代码表 说明国家信息如下所示:
字节0-1H:日期格式:0—mdy、1—dmy、2—ymd
字节2-6H:货币字符
字节7-8H:数值千位分割符
字节9-0AH:数值精度分割符
字节0B-0CH:日期间隔符
字节0D-0EH:时间间隔符
字节0FH:货币格式
位0=0——货币符号在前,否则,货币符号在后
位1=0——货币符号和数据之间无空格,否则,二者之间有一个空格
位2=0——货币符号和小数点分开,否则,货币符号代替小数点
字节10H:货币的小数位数
字节11H:时间格式。位0=0—12小时制,否则,24小时制
字节12~15H:Case-Map调用地址
字节16~17H:字符串分割符
字节18~21H:保留


(7)、功能44H
功能描述:输入/输出控制,其子功能描述:
 00H—取设备信息01H—取设备信息
 02H—从字符设备驱动器接受控制数据03H—发送控制数据到字符设备驱动器
 04H—从块设备驱动器接受控制数据 05H—发送控制数据到块设备驱动器
 06H—检查输入状态07H—检查输出状态
 08H—检查块设备是否为可拆卸设备09H—检查设备是否为远程设备
 0AH—检查句柄是否为远程对象0BH—改变共享访问入口数
 0CH—字符设备的一般I/O控制信息0DH—块设备的一般I/O控制信息
 0EH—读取逻辑驱动器映射关系0FH—设置逻辑驱动器映射关系
说明:输入/输出子功能中的00H、06H和07H仅针对文件句柄,子功能00H~ 08H不支持网络设备。


(8)、功能50H
功能描述:设置程序段前缀(PSP)地址
入口参数:AH=50H
BX=新的PSP地址
出口参数:无

(9)、功能51H
功能描述:读取程序段前缀(PSP)地址
入口参数:AH=51H
出口参数:BX=PSP地址

(10)、功能59H
功能描述:读取扩展的错误信息
入口参数:AH=59H
BX=00H
出口参数:AX=扩展的错误代码,其含义见错误代码表
BH=错误类型,其定义如下: 01h—资源短缺02h—处于临时状态而非错误
03h—权限问题04h—系统软件内部错误
05h—硬件失败06h—系统软件失败,但不是活跃进程失败
07h—应用程序错08h—文件或数据项未发现
09h—文件或数据项类型或格式错0Ah—文件或数据项相互加锁
0Bh—驱动器中坏磁盘,磁盘中坏区域或存储问题
0Ch—其它错误

BL=建议采用的措施,其定义如下:
 01h — 重试若干次后,再选"终止"或"忽略"
 02h — 重试若干次(二次之间要等待)后,再选"终止"或"忽略"
 03h — 从用户获取正确的信息
 04h — 终止应用程序,并清除其所使用资源
 05h — 立即终止程序,但没有清除其资源
 06h — 忽略错误
 07h — 消除错误原因,再重试
CH=错误地点,其定义如下:
 01h — 不知道
 02h — 块设备(磁盘或磁盘模拟器)
 03h — 网络
 04h — 串行设备
 05h — 内存
ES:DI=插入磁盘标签的字符串,若AX=0022h(非法改变磁盘)

(11)、功能5EH
功能描述:读取机器名,读取/设置打印机配置 子功能号功能描述
00h读取机器名
02h设置打印机安装字符串
03h读取打印机安装字符串

①、子功能1
入口参数:AH=5EH
AL=00H
DS:DX=接受字符串缓冲区的地址
出口参数:CF=1——操作失败,AX=错误号(01H),其含义见错误代码表,否则,
CH=00H——机器名未定义,否则,机器名已定义
CL=NetBIOS名称号(当CH≠00H时)
DS:DX=标识符地址(当CH≠00H时)
②、子功能2
入口参数:AH=5EH
AL=02H
BX=重定向列表索引
CX=安装字符串的长度
DS:SI=安装字符串的地址
出口参数:CF=0——操作成功,否则,AX=错误号(01H),其含义见错误代码表
③、子功能3
入口参数:AH=5EH
AL=03H
BX=重定向列表索引
ES:DI=接受字符串缓冲区的地址
出口参数:CF=0——操作成功,CX=接受字符串的长度,否则,AX=错误号(01H),其含义见错误代码表

(12)、功能5FH
功能描述:设备重定向 子功能号功能描述
02h读取重定向列表索引
03h重定向设备

①、子功能1
入口参数:AH=5FH
AL=02H
BX=重定向列表索引
DS:SI=接受本地设备名的16字节存储区地址
ES:DI=接受网络名的128字节存储区地址
出口参数:CF=1——操作失败,AX=错误号(01H或12H),其含义见错误代码表,否则,BH位0=0H——设备合法,否则,设备非法
BL=设备类型——03H:打印机,04H:驱动器
CX=存储参数值
DX=被破坏
BP=被破坏
DS:SI=存放本地设备名的地址
ES:DI=存放网络名的地址
②、子功能2
入口参数:AH=5FH
AL=03H
BL=设备类型——03H:打印机,04H:驱动器
CX=调用者保存的参数
DS:SI=本地设备名的16字节存储区地址
ES:DI=网络名的128字节存储区地址,紧跟其后是密码
出口参数:CF=0——操作成功,否则,AX=错误号(01H、03H、05H、08H、0FH或12H),其含义见错误代码表

(13)、功能63H
功能描述:读取前导字节表
入口参数:AH=63H AL=子功能
=00H—读取系统前导字节表地址
=01H—设置/清除临时控制台标志(DL=00H/01H—清除/设置标志)
=02H—读取临时控制台标志值

出口参数:BX=1——操作失败,AX=错误号(01H),其含义见错误代码表,否则,调用时,
   若AL=00H,则,DS:SI=系统前导字节表地址;
   若AL=02H,则,DL=临时控制台标志值

(14)、功能65H
功能描述:读取扩展的国家信息
入口参数:AH=65H
BX=代码页(-1=活跃的CON设备)
CX=接受信息的缓冲区大小
DX=国家标识(-1=缺省)
ES:DI=接受信息的缓冲区地址 AL=子功能
=01H——读取一般的国家信息
=02H——读取指向大写字母表的指针
=04H——读取指向文件名大写字母表的指针
=06H——读取指向校对表的指针
=07H——读取指向DBCS向量的指针

出口参数:CF=0——操作成功,需要的数据存入调用的缓冲区,否则,AX=错误号(02H),其含义见错误代码表

(15)、功能66H
功能描述:读取/设置代码页
入口参数:AH=66H
AL=子功能号:01H——读取代码页,02H——选择代码页
BX=选择的代码页(当AL=02H)
出口参数:CF=0——操作成功,当调用子功能01H时,BX=活跃的代码页,DX=缺省的代码页,否则,AX=错误号(02H或65H),其含义见错误代码表

(16)、功能5D0AH
功能描述:设置扩展的错误信息
入口参数:AX=5D0AH
DS:DX=扩展错误结构的地址,该结构的说明如下: EXTEND_ERR STRUCT
RAx WORD ? ;AX
RBx WORD ? ;BX
RCx WORD ? ; CX
RDx WORD ? ; DX
RSi WORD ? ; SI
RDi WORD ? ; DI
RDs WORD ? ; DS
REs WORD ? ; ES
Pad WORD 3 DUP(0)
EXTEND_ERRENDS

出口参数:无

10、进程控制功能(Process-Control Function)
00H —终止进程
26H —创建新的程序段前缀(PSP)
31H —终止并驻留
4BH —执行程序(EXEC)
4CH —带返回码方式的终止进程
4DH —读取返回代码
62H —读取PSP地址

(1)、功能00H
功能描述:终止进程。这是程序可以使用的终止进程的方法之一
入口参数:AH=00H
CS=代码段地址
出口参数:无

搜索更多相关主题的帖子: 大全 发帖 
2006-08-20 13:27
快速回复:我找到的中断大全(由于发帖限制分五个贴)2
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031003 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved