?? bios和dos中斷大全.txt
字號(hào):
DOS中斷:
1、字符功能調(diào)用類(Character-Oriented Function)
01H、07H和08H —從標(biāo)準(zhǔn)輸入設(shè)備輸入字符
02H —字符輸出
03H —輔助設(shè)備的輸入
04H —輔助設(shè)備的輸出
05H —打印輸出
06H —控制臺(tái)輸入/輸出
09H —顯示字符串
0AH — 鍵盤緩沖輸入
0BH —檢測輸入狀態(tài)
0CH —清輸入緩沖區(qū)的輸入功能
(1)、功能01H、07H和08H
功能描述:從標(biāo)準(zhǔn)輸入設(shè)備(如:鍵盤)讀入一個(gè)字符。該中斷在處理過程中將一直處于等待狀態(tài)直到有字符可讀為止。該輸入還可被重定向,如果這樣做,則無法判斷文件是否已到文件尾
入口參數(shù):AH=01H,過濾掉控制字符,并回顯
=07H,不過濾掉控制字符,不回顯
=08H,過濾掉控制字符,不回顯
出口參數(shù):AL=輸入字符的ASCII碼
(2)、功能02H
功能描述:向標(biāo)準(zhǔn)輸出設(shè)備(如:屏幕)輸出一個(gè)字符。該輸出還可被重定向,如果這樣做,則將無法判斷磁盤是否滿
入口參數(shù):AH=02H
DL=待輸出字符的ASCII碼
出口參數(shù):無
(3)、功能03H
功能描述:從輔助設(shè)備讀入一個(gè)字符,該輔助設(shè)備的缺省值為COM1
入口參數(shù):AH=03H
出口參數(shù):AL=讀入字符的ASCII碼
(4)、功能04H
功能描述:向輔助設(shè)備輸出一個(gè)字符,該輔助設(shè)備的缺省值為COM1
入口參數(shù):AH=04H
DL=待輸出字符的ASCII碼
出口參數(shù):無
(5)、功能05H
功能描述:向標(biāo)準(zhǔn)的輸出設(shè)備輸出一個(gè)字符。該缺省的輸出設(shè)備為LPT1端口的打印機(jī),除非用MODE命令來改變
入口參數(shù):AH=05H
DL=待輸出字符的ASCII碼
出口參數(shù):無
(6)、功能06H
功能描述:控制臺(tái)(如:鍵盤、屏幕)輸入/輸出。如果輸入/輸出操作被重定向,那么,將無法判斷文件是否已到文件尾,或磁盤已滿
入口參數(shù):AH=06H,DL=輸入/輸出功能選擇
出口參數(shù):若DL=00H-FEH,則此功能為輸出,DL為待輸出字符的ASCII碼;
若DL=0FFH,則此功能為輸入,此時(shí):若ZF=1,則無字符可讀,否則,AL=讀入字符的ASCII碼
(7)、功能09H
功能描述:輸出一個(gè)字符串到標(biāo)準(zhǔn)輸出設(shè)備上。如果輸出操作被重定向,那么,將無法判斷磁盤已滿
入口參數(shù):AH=09H
DS:DX=待輸出字符的地址
說明:待顯示的字符串以’$’作為其結(jié)束標(biāo)志
出口參數(shù):無
(8)、功能0AH
功能描述:從標(biāo)準(zhǔn)輸入設(shè)備上讀入一個(gè)字節(jié)字符串,遇到“回車鍵”結(jié)束輸入(輸入的字符在標(biāo)準(zhǔn)的輸出設(shè)備上有回顯)。如果該輸入操作被重定向,那么,將無法判斷文件是否已到文件尾
入口參數(shù):AH=0AH
DS:DX=存放輸入字符的起始地址
接受輸入字符串緩沖區(qū)的定義說明:
1、第一個(gè)字節(jié)為緩沖區(qū)的最大容量,可認(rèn)為是入口參數(shù);
2、第二個(gè)字節(jié)為實(shí)際輸入的字符數(shù)(不包括回車鍵),可看作出口參數(shù);
3、從第三個(gè)字節(jié)開始存放實(shí)際輸入的字符串;
4、字符串以回車鍵結(jié)束,回車符是接受的最后一個(gè)字符;
5、若輸入的字符數(shù)超過緩沖區(qū)的最大容量,則多出的部分被丟棄,系統(tǒng)并發(fā)出響鈴,直到輸入“回車”鍵才結(jié)束輸入。
例如:
BUFF 80, ?, 80 DUP(?) ;最多接受80個(gè)字符
出口參數(shù):無
(9)、功能0BH
功能描述:檢查標(biāo)準(zhǔn)輸入設(shè)備上是否有字符可讀。該輸入操作可被重定向
入口參數(shù):AH=0BH
出口參數(shù):AL=00H——無字符可讀;FFH——有字符可讀
(10)、功能0CH
功能描述:清空當(dāng)前的標(biāo)準(zhǔn)輸入緩沖區(qū),再讀入字符。其輸入操作可被重定向
入口參數(shù):AH=0CH
AL=01H、06H、07H、08H或0AH
出口參數(shù):若入口參數(shù)AL為0AH,則DS:DX=存放輸入字符的起始地址,否則,出口參數(shù)AL=輸入字符的ASCII碼
2、目錄控制功能(Directory-Control Function)
39H —?jiǎng)?chuàng)建目錄
3AH —?jiǎng)h除目錄
3BH —設(shè)置當(dāng)前目錄
47H —讀取當(dāng)前目錄
(1)、功能39H
功能描述:用指定的驅(qū)動(dòng)器和路徑創(chuàng)建一個(gè)新目錄
入口參數(shù):AH=39H
DS:DX=指定路徑的字符串地址(以0為字符串的結(jié)束標(biāo)志)
出口參數(shù):CF=0——?jiǎng)?chuàng)建成功,否則,AX=錯(cuò)誤號(hào)(03H或05H),其含義見錯(cuò)誤代碼表
(2)、功能3AH
功能描述:刪除指定的驅(qū)動(dòng)器和路徑的目錄
入口參數(shù):AH=3AH
DS:DX=指定路徑的字符串地址(以0為字符串的結(jié)束標(biāo)志)
出口參數(shù):CF=0——?jiǎng)h除成功,否則,AX=錯(cuò)誤號(hào)(03H或05H),其含義見錯(cuò)誤代碼表
(3)、功能3BH
功能描述:用指定的驅(qū)動(dòng)器和路徑設(shè)置為當(dāng)前目錄
入口參數(shù):AH=3BH
DS:DX=指定路徑的字符串地址(以0為字符串的結(jié)束標(biāo)志)
出口參數(shù):CF=0——設(shè)置成功,否則,AX=錯(cuò)誤號(hào)(03H),其含義見錯(cuò)誤代碼表
(4)、功能47H
功能描述:取當(dāng)前目錄的完全路徑字符串
入口參數(shù):AH=47H
DL=驅(qū)動(dòng)器號(hào)(0=缺省,1=A,…)
DS:SI=存放當(dāng)前目錄字符串的地址
出口參數(shù):CF=0——讀取成功,否則,AX=錯(cuò)誤號(hào)(0FH),其含義見錯(cuò)誤代碼表
3、磁盤管理功能(Disk-Management Function)
0DH —磁盤復(fù)位 2EH —設(shè)置校驗(yàn)標(biāo)志
0EH —選擇磁盤36H —讀取驅(qū)動(dòng)器分配信息
19H —讀取當(dāng)前驅(qū)動(dòng)器54H —讀取校驗(yàn)標(biāo)志
1BH, 1CH —讀取驅(qū)動(dòng)器數(shù)據(jù)
(1)、功能0DH
功能描述:清空當(dāng)前的文件緩沖區(qū),但在MS-DOS內(nèi),暫時(shí)寫入緩沖區(qū)的數(shù)據(jù)將寫入磁盤
入口參數(shù):AH=0DH
出口參數(shù):無
(2)、功能0EH
功能描述:指定當(dāng)前驅(qū)動(dòng)器
入口參數(shù):AH=0EH
DL=驅(qū)動(dòng)器號(hào)(0=A,1=B,...)
出口參數(shù):AL=系統(tǒng)中當(dāng)前的驅(qū)動(dòng)器號(hào)
(3)、功能19H
功能描述:取當(dāng)前缺省驅(qū)動(dòng)器號(hào)
入口參數(shù):AH=19H
出口參數(shù):AL=驅(qū)動(dòng)器號(hào)(0=A,1=B,...)
(4)、功能1BH和1CH
功能描述:獲得驅(qū)動(dòng)器的分配信息
入口參數(shù):AH=1BH——為缺省驅(qū)動(dòng)器
AH=1CH——為任意驅(qū)動(dòng)器,DL=驅(qū)動(dòng)器號(hào)(0=缺省,1=A,...)
出口參數(shù):AL=0FFH——失敗,否則,
AL=每簇的扇區(qū)數(shù)
DS:BX=ID字節(jié)的地址
CX=物理扇區(qū)的大小(字節(jié)數(shù))
DX=驅(qū)動(dòng)器的簇?cái)?shù)
(5)、功能2EH
功能描述:設(shè)置/清除操作系統(tǒng)自動(dòng)讀取檢驗(yàn)標(biāo)志
入口參數(shù):AH=2EH
DL=00H
AL=00H——清除該標(biāo)志,01H——設(shè)置該標(biāo)志
出口參數(shù):無
(6)、功能36H
功能描述:取選定驅(qū)動(dòng)器的信息
入口參數(shù):AH=36H
DL=驅(qū)動(dòng)器號(hào)(0-缺省,1=A,2=B,…)
出口參數(shù):若功能調(diào)用失敗,AX=0FFFFH,否則,
AX=每簇的扇區(qū)數(shù)
BX=可用的簇?cái)?shù)
CX=物理扇區(qū)的大小(字節(jié)數(shù))
DX=驅(qū)動(dòng)器中的簇?cái)?shù)
(7)、功能54H
功能描述:讀取校驗(yàn)標(biāo)志
入口參數(shù):AH=54H
出口參數(shù):AL=當(dāng)前檢驗(yàn)標(biāo)志值:00H—關(guān)檢驗(yàn),01H—開檢驗(yàn)
4、文件操作功能(File Operation Function)
3CH —?jiǎng)?chuàng)建文件
3DH —打開文件
3EH —關(guān)閉文件
41H —?jiǎng)h除文件
43H —讀取/設(shè)置文件屬性
45H —復(fù)制文件句柄
46H —重定義文件句柄
4EH —查找到第一個(gè)文件
4FH —查找下一個(gè)文件
56H — 文件換名
57H —讀取/設(shè)置文件的日期和時(shí)間
5AH —?jiǎng)?chuàng)建臨時(shí)文件
5BH —?jiǎng)?chuàng)建新文件
67H —設(shè)置文件句柄數(shù)(最多文件數(shù))
6CH —擴(kuò)展的打開文件功能(打開、創(chuàng)建或替換文件)
(1)、功能3CH
功能描述:用指定的文件名創(chuàng)建一個(gè)新文件。如果指定的文件已存在,則設(shè)置其長度為0。創(chuàng)建后,該文件是打開的,并返回其句柄
入口參數(shù):AH=3CH
DS:DX=指定文件名字符串的地址(以0為字符串的結(jié)束標(biāo)志)
CX=文件屬性(這些標(biāo)志位可以組合) 位0=1——只讀
位2=1——系統(tǒng)
位5=1——?dú)w檔位1=1——隱含
位3=1——卷標(biāo)號(hào)
其它位保留不用,并置為0
出口參數(shù):CF=0——?jiǎng)?chuàng)建成功,AX=文件句柄,否則,AX=錯(cuò)誤號(hào)(03H、04H或05H),其含義見錯(cuò)誤代碼表
(2)、功能3DH
功能描述:打開指定的驅(qū)動(dòng)器、路徑和文件名,并返回其文件句柄
入口參數(shù):AH=3DH
DS:DX=表明文件的字符串(以0為字符串的結(jié)束標(biāo)志)
AL為打開方式: 位0~2000—只讀方式 001—寫方式 010—讀/寫方式
位3保留,其值為0
位4~6共享模式 000—兼容模式001—不共享010—拒絕寫
011—拒絕讀100—不拒絕任何操作
位7繼承標(biāo)志——0/1:子進(jìn)程繼承或不繼承句柄
出口參數(shù):CF=0——打開成功,AX=文件句柄,否則,AX=錯(cuò)誤號(hào)(02H、03H、04H、05H或0CH),其含義見錯(cuò)誤代碼表
(3)、功能3EH
功能描述:關(guān)閉指定句柄的文件
入口參數(shù):AH=3EH
BX=文件句柄
出口參數(shù):CF=0——關(guān)閉成功,否則,AX=錯(cuò)誤號(hào)(06H),其含義見錯(cuò)誤代碼表
(4)、功能41H
功能描述:刪除指定的文件
入口參數(shù):AH=41H
DS:DX=文件名字符串的地址
出口參數(shù):CF=0——?jiǎng)h除成功,否則,AX=錯(cuò)誤號(hào)(02H、03H或05H),其含義見錯(cuò)誤代碼表
(5)、功能43H
功能描述:讀取或設(shè)置指定文件的屬性
入口參數(shù):AH=43H
BX=文件句柄
DS:DX=文件名字符串的地址
AL=00H/01H——讀取/設(shè)置文件屬性
CX=文件屬性: 位0=1——只讀位1=1——隱含
位2=1——系統(tǒng)位3=1——卷標(biāo)號(hào)
位5=1——?dú)w檔其它位保留不用,并置為0
出口參數(shù):CF=0——關(guān)閉成功,CX=文件屬性,否則,AX=錯(cuò)誤號(hào)(01H、02H、03H或05H),其含義見錯(cuò)誤代碼表
(6)、功能45H
功能描述:復(fù)制當(dāng)前打開設(shè)備或文件的句柄,
該句柄對應(yīng)同樣設(shè)備或文件的相同位置
入口參數(shù):AH=45H
BX=待復(fù)制的文件句柄
出口參數(shù):CF=0——復(fù)制成功,AX=新句柄,否則,AX=錯(cuò)誤號(hào)(04H或06H),其含義見錯(cuò)誤代碼表
(7)、功能46H
功能描述:指定二個(gè)句柄,把第二句柄指向第一個(gè)句柄,即第二個(gè)句柄被重定向
入口參數(shù):AH=46H
BX=文件或設(shè)備的句柄
CX=待重定向的文件句柄
出口參數(shù):CF=0——重定向成功,否則,AX=錯(cuò)誤號(hào)(04H或06H),其含義見錯(cuò)誤代碼表
(8)、功能4EH
功能描述:獲取第一個(gè)與給定的文件名相匹配的文件
入口參數(shù):AH=4EH
DS:DX=給定文件名的字符串
CX=搜索時(shí)使用的文件屬性: 位0=1——只讀 位1=1——隱含
位2=1——系統(tǒng) 位3=1——卷標(biāo)號(hào)
位4=1——目錄 位5=1——?dú)w檔
其它位保留不用,并置為0
出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào)(02H、03H或12H),其含義見錯(cuò)誤代碼表,否則,操作成功,DTA(Disk Transfer
Area)按下列方式填入數(shù)據(jù): 字節(jié)00~14H保留
字節(jié)15H匹配的文件屬性
字節(jié)16~17H壓縮的文件名
字節(jié)18~19H壓縮的文件日期
字節(jié)1A~1DH文件大小
字節(jié)1E~2AH文件名字符串
(9)、功能4FH
功能描述:在中斷21H的功能4EH成功使用之后,再搜索下一個(gè)文件名
入口參數(shù):AH=4FH
AL=返回的代碼
出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào)(12H),其含義見錯(cuò)誤代碼表,否則,操作成功,DTA中的數(shù)據(jù)如前面功能4EH所示
(10)、功能56H
功能描述:文件換名
入口參數(shù):AH=56H
DS:DX=當(dāng)前文件名字符串地址
ES:DI=新文件名字符串地址
出口參數(shù):CF=0——操作成功,否則,AX=錯(cuò)誤號(hào)(02H、03H、05H、11H),其含義見錯(cuò)誤代碼表
(11)、功能57H
功能描述:讀取/設(shè)置文件的日期和時(shí)間
入口參數(shù):AH=57H
BX=文件句柄 讀取日期和時(shí)間AL=00H
設(shè)置日期和時(shí)間AL=01H
CX=時(shí)間(0F~0BH:小時(shí),0AH~05H:分鐘,04H~00H:2秒的個(gè)數(shù))
DX=日期(0F~09H:年(相對1980年),08H~05H:月,04H~00H:日)
出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào)(01H、06H),其含義見錯(cuò)誤代碼表,否則,若是讀文件信息,則,CX=時(shí)間,DX=日期
(12)、功能5AH
功能描述:創(chuàng)建臨時(shí)文件
入口參數(shù):AH=5AH
DS:DX=路徑名的地址
CX=文件屬性(位可組合),其定義如下: 位0=1 只讀位3-4=0 保留
位1=1 隱含位5=1 歸檔
位2=1 系統(tǒng)位6-15=0 保留
出口參數(shù):CF=0——操作成功,AX=文件句柄,DS:DX=完整的路徑文件地址,否則,AX=錯(cuò)誤號(hào)(03H、04H或05H),其含義見錯(cuò)誤代碼表
(13)、功能5BH
功能描述:創(chuàng)建新文件
入口參數(shù):AH=5BH
DS:DX=路徑名的地址
CX=文件屬性(位可組合),其定義如下: 位0=1只讀位4=0保留
位1=1隱含位5=1歸檔
位2=1系統(tǒng)位6-15=0保留
位3=1卷標(biāo)號(hào)
出口參數(shù):CF=0——操作成功,AX=文件句柄,否則,AX=錯(cuò)誤號(hào)(03H、04H、05H或50H),其含義見錯(cuò)誤代碼表
(14)、功能67H
功能描述:設(shè)置文件句柄數(shù)(最多文件數(shù))
入口參數(shù):AH=67H
BX=句柄的數(shù)量
出口參數(shù):CF=0——操作成功,否則,AX=錯(cuò)誤號(hào),其含義見錯(cuò)誤代碼表
(15)、功能6CH
功能描述:擴(kuò)展的打開文件功能(打開、創(chuàng)建或替換文件)
入口參數(shù):AH=6CH
AL=00H
DS:SI=路徑名的地址
BX=打開方式 位2~0000—只讀 001—只寫 010—可讀、寫
位3保留(0)
位6~4000—兼容 001—拒絕讀寫 010——拒絕寫
011—拒絕讀 100——不拒絕任何操作
位70—子進(jìn)程繼承句柄,1—子進(jìn)程不繼承句柄
位12~8保留(0)
位13致命錯(cuò)誤處理程序,0—執(zhí)行INT 24H,否則,返回錯(cuò)誤代碼給進(jìn)程
位14寫入方式:0—寫入緩沖區(qū),1—直接寫入文件
位15保留(0)
CX=文件屬性
位0=1 只讀位4=0 保留
位1=1 隱含位5=1 歸檔
位2=1 系統(tǒng)位6-15=0 保留
位3=1 卷標(biāo)簽
DX=打開標(biāo)志 位3~0 0—打開失敗,1—打開文件,2—替換文件
位7~4 0—打開失敗,1—?jiǎng)?chuàng)建文件
位15~8 0—保留
出口參數(shù):CF=1——操作失敗,AX=錯(cuò)誤號(hào),其含義見錯(cuò)誤代碼表,否則,
AX=文件句柄
CX=1——文件存在,打開之
=2——文件不存在,創(chuàng)建之
5、文件操作功能(FCB)(File Operation Function)
0FH —打開文件16H —?jiǎng)?chuàng)建文件
10H —關(guān)閉文件17H —文件換名
11H、12H —查找第一個(gè)或下一個(gè)文件23H —讀取文件的大小
13H —?jiǎng)h除文件29H —分析文件名
(1)、功能0FH
功能描述:打開文件,并使之為順序讀/寫作好準(zhǔn)備
入口參數(shù):AH=0FH
DS:DX=文件控制塊的地址
出口參數(shù):AL=00H——打開成功,否則,AL=FFH(如文件找不到)
在MS-DOS操作系統(tǒng)中,文件控制塊的字段如下表所示。 字段名偏移量字段含義
驅(qū)動(dòng)器字00H1 for drive A, 2 for drive B,...
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -