DOS功能调用大全.docx

上传人:b****5 文档编号:5688821 上传时间:2022-12-31 格式:DOCX 页数:12 大小:17.86KB
下载 相关 举报
DOS功能调用大全.docx_第1页
第1页 / 共12页
DOS功能调用大全.docx_第2页
第2页 / 共12页
DOS功能调用大全.docx_第3页
第3页 / 共12页
DOS功能调用大全.docx_第4页
第4页 / 共12页
DOS功能调用大全.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

DOS功能调用大全.docx

《DOS功能调用大全.docx》由会员分享,可在线阅读,更多相关《DOS功能调用大全.docx(12页珍藏版)》请在冰豆网上搜索。

DOS功能调用大全.docx

DOS功能调用大全

一、21H号中断类型(INT21H)的各功能详解。

00H号功能——程序终止

   入口参数:

AH=0;功能号

             CS已指定

   返回值:

无。

01H号功能——键盘输入并回显。

[检测break(Ctrl+C)]

   入口参数:

AH=01H;功能号

   返回值:

AL=输入的字符。

02H号功能——显示输出。

[检测break(Ctrl+C)]

   入口参数:

AH=02H;功能号

             DL=要显示的字符

   返回:

光标移动。

03H号功能——异步通讯输入。

   入口参数:

AH=03H;功能号

   返回值:

AL=输入的数值

04H号功能——异步通讯输出。

   入口参数:

AH=04H;功能号

             DL=要输出的数值

   返回值:

05H号功能——打印机输出。

[自动检测打印机]

   入口参数:

AH=05H;功能号

             DL=要输出的数值

   返回值:

06H号功能——直接控制台I/O(输入/输出)。

[[不检测break(Ctrl+C)]]

   入口参数1:

AH=06H;功能号

             DL=要输出的字符(DL<0FFH)

   功能1:

输出

   返回1:

光标移动

   入口参数2:

AH=06H;功能号

             DL=0FFH

   功能2:

输入

   返回2:

AL=输入的字符

07H号功能——键盘输入但不回显。

   入口参数:

AH=07H;功能号

   返回值:

AL=输入的字符。

08H号功能——键盘输入但不回显。

[检测break(Ctrl+C)]

   入口参数:

AH=08H;功能号

   返回值:

AL=输入的字符。

   说明:

如果返回AL=0,则是扩展ASC码,要再次调用才能取得扩展ASC码。

例:

         movah,8

         int21h

         cmpal,0

         jnz-----是ASC码,去处理ASC码。

         movah,8

         int21h   ;这次AL返回扩展ASC码。

09H号功能——显示字符串。

   入口参数:

AH=09H;功能号

             DS:

DX=串地址。

串必须以'$'字符结尾。

   返回:

光标移动。

0AH号功能——键盘输入字串到缓冲区。

   入口参数:

AH=0AH;功能号

             DS:

DX=缓冲区地址。

             缓冲区首字节=缓冲区字节数。

   返回:

缓冲区第二字节单元中的值为实际输入的字符数。

   例子:

如果要输入的最多字符个数为10,则缓冲区的结构如下:

         db12        ;缓冲区长度(调用前设置)

         db?

         ;实际输入的字符数(由INT21H功能自动设置)

         db10dup(?

);输入的字符保存在这里

0BH号功能——检测键盘状态。

   入口参数:

AH=0BH;功能号

   返回:

AL=0:

表示有输入;

         AL=0FFH:

表示没有输入。

0CH号功能——清除键盘输入缓冲区,并请求指定的输入功能。

   入口参数:

AH=0CH;功能号

             AL=输入功能号(即上述功能号:

01H,06H,07H,08H,0AH)

             DS:

DX=缓冲区地址(如果不请求0AH号功能,则本参数省略)。

             缓冲区首字节=缓冲区字节数。

   返回:

与请求的功能返回相同。

0DH号功能——磁盘复位。

   入口参数:

AH=0DH;功能号

   返回:

清除磁盘缓冲区。

0EH号功能——指定当前缺省的磁盘驱动器。

   入口参数:

AH=0EH;功能号

             DL=驱动器编号(0=驱动器A;1=驱动器B;......)

   返回:

AL=驱动器数。

0FH号功能——打开文件。

   入口参数:

AH=0FH;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=0FFH:

失败。

10H号功能——关闭文件。

   入口参数:

AH=10H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=0FFH:

失败。

11H号功能——查找首个目录。

   入口参数:

AH=11H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=0FFH:

失败。

12H号功能——查找下一个目录。

   入口参数:

AH=12H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=0FFH:

失败。

13H号功能——删除文件。

   入口参数:

AH=13H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=0FFH:

失败。

14H号功能——顺序读文件。

   入口参数:

AH=14H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=1:

文件结束,无可读数据;

         AL=2:

DTA(数据传输区)空间不够;

         AL=3:

文件结束,记录不完整。

15H号功能——顺序写文件。

   入口参数:

AH=15H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=1:

磁盘满;

         AL=2:

DTA(数据传输区)空间不够。

16H号功能——新建文件。

   入口参数:

AH=16H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=0FFH:

无磁盘空间。

17H号功能——文件改名。

   入口参数:

AH=17H;功能号

             DS:

DX=FCB(文件控制块)首址

             (DS:

DX+1)=旧文件名

             (DS:

DX+17)=新文件名

   返回:

AL=0:

成功;

         AL=0FFH:

失败。

19H号功能——取当前缺省驱动器名。

   入口参数:

AH=19H;功能号

   返回:

AL=缺省驱动器编号(0=驱动器A;1=驱动器B;......)

1AH号功能——设置DTA(数据传输区)地址。

   入口参数:

AH=1AH;功能号

             DS:

DX=DTA地址

   返回:

1BH号功能——取缺省驱动器FAT信息。

   入口参数:

AH=1BH;功能号

   返回:

AL=每簇的扇区数;

         DS:

BX=指向FAT标识字节;

         CX=物理扇区的大小;

         DX=簇数。

1CH号功能——取指定驱动器FAT信息。

   入口参数:

AH=1BH;功能号

             DL=驱动器编号(0=驱动器A;1=驱动器B;......)

   返回:

AL=每簇的扇区数;

         DS:

BX=指向FAT标识字节;

         CX=物理扇区的大小;

         DX=簇数。

21H号功能——随机读文件。

   入口参数:

AH=21H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=1:

文件结束,无可读数据;

         AL=2:

DTA(数据传输区)空间不够;

         AL=3:

文件结束,记录不完整。

22H号功能——随机写文件。

   入口参数:

AH=22H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功;

         AL=1:

磁盘满;

         AL=2:

DTA(数据传输区)空间不够。

23H号功能——测定文件大小。

   入口参数:

AH=23H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

AL=0:

成功,文件长度填入FCB;

         AL=0FFH:

失败。

24H号功能——设置随机记录号。

   入口参数:

AH=24H;功能号

             DS:

DX=FCB(文件控制块)首址

   返回:

25H号功能——设置中断向量。

   入口参数:

AH=25H;功能号

             DS:

DX=中断向量

             AL=中断类型号

   返回:

26H号功能——建立程序段前缀。

   入口参数:

AH=26H;功能号

             DX=新的程序段前缀

   返回:

27H号功能——随机分块读文件。

   入口参数:

AH=27H;功能号

             DS:

DX=FCB(文件控制块)首址

             CX=记录数

   返回:

AL=0:

成功;

         AL=1:

文件结束,无可读数据;

         AL=2:

DTA(数据传输区)空间不够;

         AL=3:

文件结束,记录不完整。

28H号功能——随机分块写文件。

   入口参数:

AH=28H;功能号

             DS:

DX=FCB(文件控制块)首址

             CX=记录数

   返回:

AL=0:

成功;

         AL=1:

文件结束,无可读数据;

         AL=2:

DTA(数据传输区)空间不够。

29H号功能——分析文件名。

   入口参数:

AH=29H;功能号

             ES:

DI=FCB(文件控制块)首址

             DS:

SI=ASCIIZ串

             AL=控制块分析标志

   返回:

AL=0:

标准文件;

         AL=1:

多义文件;

         AL=0FFH:

非法盘符。

2AH号功能——取计算机当前日期。

   入口参数:

AH=2AH;功能号

   返回:

CX=年份;

         DH=月份

         DL=日期

         AL=星期(0—6:

分别对应星期日、星期一、......)。

2BH号功能——设置计算机日期。

   入口参数:

AH=2BH;功能号

             CX=年份;

             DH=月份

             DL=日期

       返回:

AL=0:

成功;

             AL=0FFH:

无效。

2CH号功能——取计算机当前时间。

   入口参数:

AH=2CH;功能号

   返回:

CH=时;

         CL=分;

         DH=秒;

         DL=1/100秒。

2DH号功能——设置计算机时间。

   入口参数:

AH=2DH;功能号

             CH=时;

             CL=分;

             DH=秒;

             DL=1/100秒。

       返回:

AL=0:

成功;

             AL=0FFH:

无效。

2EH号功能——设置磁盘自动读写标志。

   入口参数:

AH=2EH;功能号

             AL=0为关闭;AL=1为打开

       返回:

2FH号功能——取磁盘缓冲区(DTA)地址。

   入口参数:

AH=2FH;功能号

       返回:

ES:

BX=缓冲区地址。

       注意:

该地址是用1AH号功能设置的。

30H号功能——取DOS版本号。

   入口参数:

AH=30H;功能号

       返回:

AH=发行号;

             AL=版号。

31H号功能——程序结束并驻留。

   入口参数:

AH=31H;功能号

             AL=返回码;

             DX=驻留区大小(从PSP开始计算)

       返回:

AH=发行号;

             AL=版号。

33H号功能——Ctrl-Break检测。

   入口参数:

AH=33H;功能号

             AL=0为取状态值;AL=1为置状态值;

             DL=0为关闭检测;DL=1为打开检测。

       返回:

DL=0:

关闭Ctrl-Break检测;

             DL=1:

打开Ctrl-Break检测。

35H号功能——取中断向量。

   入口参数:

AH=35H;功能号

             AL=中断类型

             DL=0为关闭检测;DL=1为打开检测。

       返回:

DL=0:

关闭Ctrl-Break检测;

             DL=1:

打开Ctrl-Break检测。

36H号功能——取空闲磁盘空间。

   入口参数:

AH=36H;功能号

             DL=驱动器号(0=缺省驱动器,1=A,2=B,...)

       返回:

AX=0FFFFH时为失败,否则为成功。

成功时:

             AX=每簇扇区数;

             BX=有效簇数;

             CX=每扇区字节数;

             DX=总簇数。

38H号功能——取或置国家信息。

   入口参数:

AH=38H;功能号

             DS:

DX=信息区地址

       返回:

BX=国家码(国际电话前缀码)

             AX=错误码。

39H号功能——建立子目录(MKDIR)。

   入口参数:

AH=39H;功能号

             DS:

DX=ASCIIZ串地址

       返回:

AX=错误码。

3AH号功能——删除子目录(RMDIR)。

   入口参数:

AH=3AH;功能号

             DS:

DX=ASCIIZ串地址

       返回:

AX=错误码。

3BH号功能——改变当前目录。

   入口参数:

AH=3BH;功能号

             DS:

DX=ASCIIZ串地址

       返回:

AX=错误码。

3CH号功能——建立文件。

   入口参数:

AH=3CH;功能号

             DS:

DX=ASCIIZ串地址

                CX=文件属性(CX=0为普通文件)

       返回:

CF=0:

成功,AX=文件代号;

             CF=1:

失败,AX=错误码。

3DH号功能——打开文件。

   入口参数:

AH=3DH;功能号

             DS:

DX=ASCIIZ串地址

             AL=0:

以只读方式打开

             AL=1:

以只写方式打开

             AL=2:

可读/写

       返回:

CF=0:

成功,AX=文件代号;

             CF=1:

失败,AX=错误码。

3EH号功能——关闭文件。

   入口参数:

AH=3EH;功能号

             BX=文件代号(3CH、3DH功能返回的文件代号)

       返回:

CF=0:

成功;

             CF=1:

失败,AX=错误码。

3FH号功能——读文件或设备。

   入口参数:

AH=3FH;功能号

             DS:

DX=数据缓冲区地址

             BX=文件代号(3CH、3DH功能返回的文件代号)

             CX=要读取的字节数

       返回:

CF=0:

成功,AX=实际读入的字节数;

             CF=1:

失败,AX=错误码。

40H号功能——写文件或设备。

   入口参数:

AH=40H;功能号

             DS:

DX=数据缓冲区地址

             BX=文件代号(3CH、3DH功能返回的文件代号)

             CX=要写入的字节数

       返回:

CF=0:

成功,AX=实际写入的字节数;

             CF=1:

失败,AX=错误码。

41H号功能——删除文件。

   入口参数:

AH=41H;功能号

             DS:

DX=ASCIIZ串地址

       返回:

CF=0:

成功,AX=0;

             CF=1:

失败,AX=错误码(2、5)。

42H号功能——移动文件指针。

   入口参数:

AH=42H;功能号

             BX=文件代号(3CH、3DH功能返回的文件代号)

             CX=移动字节数的高16位值

             DX=移动字节数的低16位值

             AL=移动方式:

                AL=0:

绝对位置(即从文件首开始)

                AL=1:

相对位置(即从当前文件指针开始)

                AL=2:

绝对倒移(即从文件尾开始)

             注:

DXCX移动量为补码形式(即符号数)。

       返回:

CF=0:

成功,DXAX=新的文件指针位置;

             CF=1:

失败,AX=错误码。

43H号功能——取或置文件属性。

   入口参数:

AH=43H;功能号

             DS:

DX=ASCIIZ串地址

             AL=0为取文件属性

             AL=1为置文件属性,CX=文件属性。

       返回:

CF=0:

成功,CX=文件属性;

             CF=1:

失败,AX=错误码。

44H号功能——设备文件I/O控制。

   入口参数:

AH=44H;功能号

             BX=文件代码;

             AL=0为取状态;

             AL=1为置状态,DX=状态信息;

             AL=2为读数据;

             AL=3为写数据;

             AL=6为取输入状态;

             AL=7为取输出状态。

       返回:

DX=设备信息。

45H号功能——复制文件。

   入口参数:

AH=45H;功能号

             BX=文件代号1(3CH、3DH功能返回的文件代号)

       返回:

CF=0:

成功,AX=文件代码2;

             CF=1:

失败,AX=错误码。

46H号功能——人工复制文件代号。

   入口参数:

AH=46H;功能号

             BX=文件代号1

             CX=文件代号2

       返回:

CF=1:

失败,AX=错误码。

47H号功能——取当前目录路径名。

   入口参数:

AH=47H;功能号

             DL=驱动器号(0=缺省驱动器,1=A,2=B,...)

             DS:

SI=接收缓冲区地址

       返回:

CF=1:

失败,AX=错误码。

             CF=0:

成功,ASCIIZ串存入接收缓冲区。

48H号功能——分配内存空间。

   入口参数:

AH=48H;功能号

             BX=申请内存容量

       返回:

CF=0:

成功,AX=分配的内存首地址;

             CF=1:

失败,AX=错误码,BX=最大可用空间。

49H号功能——释放内存空间。

   入口参数:

AH=49H;功能号

             ES=内存起始段址

       返回:

CF=1:

失败,AX=错误码。

             CF=0:

成功。

4AH号功能——调整已分配的内存空间。

   入口参数:

AH=4AH;功能号

             ES=原内存起始段址

             BX=再申请的容量

       返回:

CF=0:

成功,AX=分配的内存首地址;

             CF=1:

失败,AX=错误码,BX=最大可用空间。

4BH号功能——装载/执行程序。

   入口参数:

AH=4BH;功能号

             DS:

DX=程序名ASCIIZ串地址

             ES:

BX=参数区地址

             AL=0:

装入并运行

             AL=3:

装入不运行

       返回:

CF=0:

成功;

             CF=1:

失败,AX=错误码。

4CH号功能——带返回码结束程序。

   入口参数:

AH=4CH;功能号

             AL=返回码

4DH号功能——取子进程的返回码。

   入口参数:

AH=4DH;功能号

       返回:

AX=返回码。

4EH号功能——查找第一个匹配文件。

   入口参数:

AH=4EH;功能号

             DS:

DX=文件名ASCIIZ串地址

             CX=文件属性(CX=0:

普通文件)

       返回:

CF=1:

失败,AX=错误码(2、18)。

4FH号功能——查找下一个匹配文件。

   入口参数:

AH=4FH;功能号

             DS:

DX=文件名ASCIIZ串地址

       返回:

CF=1:

失败,AX=错误码(18)。

54H号功能——取盘的自动读写标志。

   入口参数:

AH=54H;功能号

       返回:

AL=当前标志值。

56H号功能——修改文件名。

   入口参数:

AH=56H;功能号

             DS:

DX=原文件名ASCIIZ串地址

             ES:

DI=新文件名ASCIIZ串地址

       返回:

CF=1:

失败,AX=错误码(3、5、17)。

       注意:

如果新文件名已经存在,则不会删除。

57H号功能——置/取文件日期时间。

   入口参数:

AH=57H;功能号

             BX=文件代号;

         

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1