BIOS中斷:
一、顯示服務(Video Service——INT 10H) 網絡
00H —設置顯示器模式0CH —寫圖形象素 01H —設置光標形狀0DH —讀圖形象素 02H —設置光標位置0EH —在Teletype模式下顯示字符 03H —讀取光標信息0FH —讀取顯示器模式 04H —讀取光筆位置10H —顏色 05H —設置顯示頁11H —字體 06H、07H —初始化或滾屏12H —顯示器的配置 08H —讀光標處的字符及其屬性13H —在Teletype模式下顯示字符串 09H —在光標處按指定屬性顯示字符1AH —讀取/設置顯示組合編碼 0AH —在當前光標處顯示字符1BH —讀取功能/狀態信息 0BH —設置調色板、背景色或邊框1CH —保存/恢復顯示器狀態 (1)、功能00H 功能描述:設置顯示器模式 入口參數:AH=00H AL=顯示器模式,見下表所示 出口參數:無 可用的顯示模式以下所列: 顯示模式顯示模式屬性顯示模式顯示模式屬性 00H40×2516色 文本01H40×2516色 文本 02H80×2516色 文本03H80×2516色 文本 04H320×2004色05H320×2004色 06H640×2002色07H80×252色 文本 08H160×20016色09H320×20016色 0AH640×2004色0BH保留 0CH保留0DH320×20016色 0EH640×20016色0FH640×3502(單色) 10H640×3504色10H640×35016色 11H640×4802色12H640×48016色 13H640×480256色 對於超級VGA顯示卡,咱們可用AX=4F02H和下列BX的值來設置其顯示模式。 BX顯示模式屬性BX顯示模式屬性 100H640×400256色101H640×480256色 102H800×60016色103H800×600256色 104H1024×76816色105H1024×768256色 106H1280×102416色107H1280×1024256色 108H80×60文本模式109H132×25文本模式 10AH132×43文本模式10BH132×50文本模式 10CH132×60文本模式 (2)、功能01H 功能描述:設置光標形狀 入口參數:AH=01H CH低四位=光標的起始行 CL低四位=光標的終止行 出口參數:無 (3)、功能02H 功能描述:用文本座標下設置光標位置 入口參數:AH=02H BH=顯示頁碼 DH=行(Y座標) DL=列(X座標) 出口參數:無
實例: ;--------------------------------------------------------- mov ah,2 mov dx,0 int10h ;----------------------------------------------------------app (4)、功能03H 功能描述:在文本座標下,讀取光標各類信息 入口參數:AH=03H BH=顯示頁碼 出口參數:CH=光標的起始行 CL=光標的終止行 DH=行(Y座標) DL=列(X座標) 實例:(換行) ;--------------------------------------------------------------------- ;Move the cursor to the next line. Nextline: ;Get cursor mov ah,3 mov bh,0 int10h;讀取目前的光標信息。dh=行號,dl=列號 mov ah,2 inc dh;將當前行號加1,列號置0 mov dl,0 int10h ret ;---------------------------------------------------------------------ide (5)、功能04H 功能描述:獲取當前狀態和光筆位置 入口參數:AH=04H 出口參數:AH=00h——光筆未按下/未觸發,01h——光筆已按下/已觸發 BX=象素列(圖形X座標) CH=象素行(圖形Y座標,顯示模式:04H~06H) CX=象素行(圖形Y座標,顯示模式:0DH~10H) DH=字符行(文本Y座標) DL=字符列(文本X座標) (6)、功能05H 功能描述:設置顯示頁,即選擇活動的顯示頁 入口參數:AH=05H AL=顯示頁 對於CGA、EGA、MCGA和VGA,其顯示頁以下表所列: 模式頁數顯示器類型 00H、01H0~7CGA、EGA、MCGA、VGA 02H、03H0~3CGA 02H、03H0~7EGA、MCGA、VGA 07H0~7EGA、VGA 0DH0~7EGA、VGA 0EH0~3EGA、VGA 0FH0~1EGA、VGA 10H0~1EGA、VGA 對於PCjr: AL=80H——讀取CRT/CPU頁寄存器 81H——設置CPU頁寄存器 82H——設置CRT頁寄存器 83H——設置CRT/CPU頁寄存器 BH=CRT頁(子功能號82H和83H) BL=CPU頁(子功能號81H和83H) 出口參數:對於前者,無出口參數,但對PCjr在子功能80H~83H調用下,有:BH=CRT頁寄存器,BL=CPU頁寄存器 (7)、功能06H和07H 功能描述:初始化屏幕或滾屏 入口參數:AH=06H——向上滾屏,07H——向下滾屏 AL=滾動行數(0——清窗口) BH=空白區域的缺省屬性 (CH、CL)=窗口的左上角位置(Y座標,X座標) (DH、DL)=窗口的右下角位置(Y座標,X座標) 出口參數:無 實例: ;--------------------------------------------------------- ;Clear the screen mov ax,0600h mov bx,0700h mov cx,0 mov dx,0ffffh int10h
字體 (8)、功能08H 功能描述:讀光標處的字符及其屬性 入口參數:AH=08H BH=顯示頁碼 出口參數:AH=屬性 AL=字符 (9)、功能09H 功能描述:在當前光標處按指定屬性顯示字符 入口參數:AH=09H AL=字符 BH=顯示頁碼 BL=屬性(文本模式)或顏色(圖形模式) CX=重複輸出字符的次數 出口參數:無 (10)、功能0AH 功能描述:在當前光標處按原有屬性顯示字符 入口參數:AH=0AH AL=字符 BH=顯示頁碼 BL=顏色(圖形模式,僅適用於PCjr) CX=重複輸出字符的次數 出口參數:無 (11)、功能0BH 功能描述:設置調色板、背景色或邊框 入口參數:AH=0BH 設置顏色:BH=00H,BL=顏色 選擇調色板:BH=01H,BL=調色板(320×200、4種顏色的圖形模式) 出口參數:無 (12)、功能0CH 功能描述:寫圖形象素 入口參數:AH=0CH AL=象素值 BH=頁碼 (CX、DX)=圖形座標列(X)、行(Y) 出口參數:無 (13)、功能0DH 功能描述:讀圖形象素 入口參數:AH=0DH BH=頁碼 (CX、DX)=圖形座標列(X)、行(Y) 出口參數:AL=象素值 (14)、功能0EH 功能描述:在Teletype模式下顯示字符 入口參數:AH=0EH AL=字符 BH=頁碼 BL=前景色(圖形模式) 出口參數:無 (15)、功能0FH 功能描述:讀取顯示器模式 入口參數:AH=0FH 出口參數:AH=屏幕字符的列數 AL=顯示模式(參見功能00H中的說明) BH=頁碼 (16)、功能10H 功能描述:顏色中斷。其子功能說明以下: 功能號 子功能名稱功能號 子功能名稱 00H — 設置調色板寄存器01H — 設置邊框顏色 02H — 設置調色板和邊框03H — 觸發閃爍/亮顯位 07H — 讀取調色板寄存器08H — 讀取邊框顏色 09H — 讀取調色板和邊框10H — 設置顏色寄存器 12H — 設置顏色寄存器塊13H — 設置顏色頁狀態 15H — 讀取顏色寄存器17H — 讀取顏色寄存器塊 1AH — 讀取顏色頁狀態1BH — 設置灰度值 (17)、功能11H 功能描述:字體中斷。其子功能說明以下: 子功能號子功能名稱 00H裝入用戶字體和可編程控制器 10H裝入用戶字體和可編程控制器 01H裝入8×14 ROM字體和可編程控制器 11H裝入8×14 ROM字體和可編程控制器 02H裝入8×8 ROM字體和可編程控制器 12H裝入8×8 ROM字體和可編程控制器 03H設置塊指示器 04H裝入8×16 ROM字體和可編程控制器 14H裝入8×16 ROM字體和可編程控制器 20H設置INT 1Fh字體指針 21H爲用戶字體設置INT 43h 22H爲8×14 ROM字體設置INT 43H 23H爲8×8 ROM字體設置INT 43H 24H爲8×16 ROM字體設置INT 43H 30H讀取字體信息 (18)、功能12H 功能描述:顯示器的配置中斷。其子功能說明以下: 功能號 功能名稱 功能號 功能名稱 10H — 讀取配置信息20H — 選擇屏幕打印 30H — 設置掃描行31H — 容許/禁止裝入缺省調色板 32H — 容許/禁止顯示33H — 容許/禁止灰度求和 34H — 容許/禁止光標模擬35H — 切換活動顯示 36H — 容許/禁止屏幕刷新 (19)、功能13H 功能描述:在Teletype模式下顯示字符串 入口參數:AH=13H BH=頁碼 BL=屬性(若AL=00H或01H) CX=顯示字符串長度 (DH、DL)=座標(行、列) ES:BP=顯示字符串的地址 AL=顯示輸出方式 0——字符串中只含顯示字符,其顯示屬性在BL中。顯示後,光標位置不變 1——字符串中只含顯示字符,其顯示屬性在BL中。顯示後,光標位置改變 2——字符串中含顯示字符和顯示屬性。顯示後,光標位置不變 3——字符串中含顯示字符和顯示屬性。顯示後,光標位置改變 出口參數:無 實例: ;--------------------------------------------------------------------- ;Print a string. ; ax :The address of string ; cx :The length of string Print: ;Print things by BIOS interrupt No.16 mov bp, ax mov ax,01301h mov bx,07h mov dl,0 int10h ret ;---------------------------------------------------------------------編碼 (20)、功能1AH 功能描述:讀取/設置顯示組合編碼,僅PS/2有效,在此從略 (21)、功能1BH 功能描述:讀取功能/狀態信息,僅PS/2有效,在此從略 (22)、功能1CH 功能描述:保存/恢復顯示器狀態,僅PS/2有效,在此從略 |
二、直接磁盤服務(Direct Disk Service——INT 13H) spa
00H —磁盤系統復位0EH —讀扇區緩衝區 01H —讀取磁盤系統狀態0FH —寫扇區緩衝區 02H —讀扇區10H —讀取驅動器狀態 03H —寫扇區11H —校準驅動器 04H —檢驗扇區12H —控制器RAM診斷 05H —格式化磁道13H —控制器驅動診斷 06H —格式化壞磁道14H —控制器內部診斷 07H —格式化驅動器15H —讀取磁盤類型 08H —讀取驅動器參數16H —讀取磁盤變化狀態 09H —初始化硬盤參數17H —設置磁盤類型 0AH —讀長扇區18H —設置格式化媒體類型 0BH —寫長扇區19H —磁頭保護 0CH —查尋1AH —格式化ESDI驅動器 0DH —硬盤系統復位 (1)、功能00H 功能描述:磁盤系統復位 入口參數:AH=00H DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (2)、功能01H 功能描述:讀取磁盤系統狀態 入口參數:AH=01H DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 出口參數:AH=00H,AL=狀態代碼,其定義以下: 00H — 無錯 01H — 非法命令 02H — 地址目標未發現03H — 磁盤寫保護(軟盤) 04H — 扇區未發現05H — 復位失敗(硬盤) 06H — 軟盤取出(軟盤)07H — 錯誤的參數表(硬盤) 08H — DMA越界(軟盤)09H — DMA超過64K界限 0AH — 錯誤的扇區標誌(硬盤)0BH — 錯誤的磁道標誌(硬盤) 0CH — 介質類型未發現(軟盤)0DH — 格式化時非法扇區號(硬盤) 0EH — 控制數據地址目標被發現(硬盤)0FH — DMA仲裁越界(硬盤) 10H — 不正確的CRC或ECC編碼11H — ECC校訂數據錯(硬盤) CRC:Cyclic Redundancy Check code ECC:Error Checking & Correcting code 20H — 控制器失敗40H — 查找失敗 80H — 磁盤超時(未響應)AAH — 驅動器未準備好(硬盤) BBH — 未定義的錯誤(硬盤)CCH — 寫錯誤(硬盤) E0H — 狀態寄存器錯(硬盤)FFH — 檢測操做失敗(硬盤) (3)、功能02H 功能描述:讀扇區 入口參數:AH=02H AL=扇區數 CH=柱面 CL=扇區 DH=磁頭 DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 ES:BX=緩衝區的地址 出口參數:CF=0——操做成功,AH=00H,AL=傳輸的扇區數,不然,AH=狀態代碼,參見功能號01H中的說明 實例: ;--------------------------------------------------------------------- ;Copy the loader from floppy to memory. CopyLoaderToMem: mov dx,0h mov cx,02h mov bx,End mov ax,0200h+LoaderLength int13h jnc End;加載成功將跳轉到End ;If failed,return. ret ;---------------------------------------------------------------------指針 (4)、功能03H 功能描述:寫扇區 入口參數:AH=03H AL=扇區數 CH=柱面 CL=扇區 DH=磁頭 DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 ES:BX=緩衝區的地址 出口參數:CF=0——操做成功,AH=00H,AL=傳輸的扇區數,不然,AH=狀態代碼,參見功能號01H中的說明 (5)、功能04H 功能描述:檢驗扇區 入口參數:AH=04H AL=扇區數 CH=柱面 CL=扇區 DH=磁頭 DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 ES:BX=緩衝區的地址 出口參數:CF=0——操做成功,AH=00H,AL=被檢驗的扇區數,不然,AH=狀態代碼,參見功能號01H中的說明 (6)、功能05H 功能描述:格式化磁道 入口參數:AH=05H AL=交替(Interleave) CH=柱面 DH=磁頭 DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 ES:BX=地址域列表的地址 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (7)、功能06H 功能描述:格式化壞磁道 入口參數:AH=06H AL=交替 CH=柱面 DH=磁頭 DL=80H~0FFH:硬盤 ES:BX=地址域列表的地址 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (8)、功能07H 功能描述:格式化驅動器 入口參數:AH=07H AL=交替 CH=柱面 DL=80H~0FFH:硬盤 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (9)、功能08H 功能描述:讀取驅動器參數 入口參數:AH=08H DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 出口參數:CF=1——操做失敗,AH=狀態代碼,參見功能號01H中的說明,不然, BL=01H — 360K =02H — 1.2M =03H — 720K =04H — 1.44M CH=柱面數的低8位 CL的位7-6=柱面數的該2位 CL的位5-0=扇區數 DH=磁頭數 DL=驅動器數 ES:DI=磁盤驅動器參數表地址 (10)、功能09H 功能描述:初始化硬盤參數 入口參數:AH=09H DL=80H~0FFH:硬盤(還有有關參數表問題,在此從略) 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (11)、功能0AH 功能描述:讀長扇區,每一個扇區隨帶四個字節的ECC編碼 入口參數:AH=0AH AL=扇區數 CH=柱面 CL=扇區 DH=磁頭 DL=80H~0FFH:硬盤 ES:BX=緩衝區的地址 出口參數:CF=0——操做成功,AH=00H,AL=傳輸的扇區數,不然,AH=狀態代碼,參見功能號01H中的說明 (12)、功能0BH 功能描述:寫長扇區,每一個扇區隨帶四個字節的ECC編碼 入口參數:AH=0BH AL=扇區數 CH=柱面 CL=扇區 DH=磁頭 DL=80H~0FFH:硬盤 ES:BX=緩衝區的地址 出口參數:CF=0——操做成功,AH=00H,AL=傳輸的扇區數,不然,AH=狀態代碼,參見功能號01H中的說明 (13)、功能0CH 功能描述:查尋 入口參數:AH=0CH CH=柱面的低8位 CL(7-6位)=柱面的高2位 DH=磁頭 DL=80H~0FFH:硬盤 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (14)、功能0DH 功能描述:硬盤系統復位 入口參數:AH=0DH DL=80H~0FFH:硬盤 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (15)、功能0EH 功能描述:讀扇區緩衝區 入口參數:AH=0EH ES:BX=緩衝區的地址 出口參數:CF=0——操做成功,不然,AH=狀態代碼,參見功能號01H中的說明 (16)、功能0FH 功能描述:寫扇區緩衝區 入口參數:AH=0FH ES:BX=緩衝區的地址 出口參數:CF=0——操做成功,不然,AH=狀態代碼,參見功能號01H中的說明 (17)、功能10H 功能描述:讀取驅動器狀態 入口參數:AH=10H DL=80H~0FFH:硬盤 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (18)、功能11H 功能描述:校準驅動器 入口參數:AH=11H DL=80H~0FFH:硬盤 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態代碼,參見功能號01H中的說明 (19)、功能12H 功能描述:控制器RAM診斷 入口參數:AH=12H 出口參數:CF=0——操做成功,不然,AH=狀態代碼,參見功能號01H中的說明 (20)、功能13H 功能描述:控制器驅動診斷 入口參數:AH=13H 出口參數:CF=0——操做成功,不然,AH=狀態代碼,參見功能號01H中的說明 (21)、功能14H 功能描述:控制器內部診斷 入口參數:AH=14H 出口參數:CF=0——操做成功,不然,AH=狀態代碼,參見功能號01H中的說明 (22)、功能15H 功能描述:讀取磁盤類型 入口參數:AH=15H DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤 出口參數:CF=1——操做失敗,AH=狀態代碼,參見功能號01H中的說明, 不然,AH=00H — 未安裝驅動器 =01H — 無改變線支持的軟盤驅動器 =02H — 帶有改變線支持的軟盤驅動器 =03H — 硬盤,CX:DX=512字節的扇區數 (23)、功能16H 功能描述:讀取磁盤變化狀態 入口參數:AH=16H DL=00H~7FH:軟盤 出口參數:CF=0——磁盤未改變,AH=00H,不然,AH=06H,參見功能號01H中的說明 (24)、功能17H 功能描述:設置磁盤類型 入口參數:AH=17H DL=00H~7FH:軟盤 AL=00H — 未用 =01H — 360K在360K驅動器中 =02H — 360K在1.2M驅動器中 =03H — 1.2M在1.2M驅動器中 =04H — 720K在720K驅動器中 出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態編碼,參見功能號01H中的說明 (25)、功能18H 功能描述:設置格式化媒體類型 入口參數:AH=18H CH=柱面數 CL=每磁道的扇區數 DL=00H~7FH:軟盤 出口參數:CF=0——操做成功,AH=00H,ES:DI=介質類型參數表地址,不然,AH=狀態編碼,參見功能號01H中的說明 (26)、功能19H 功能描述:磁頭保護,僅在PS/2中有效,在此從略 (27)、功能1AH 功能描述:格式化ESDI驅動器,僅在PS/2中有效,在此從略 |
三、串行口服務(Serial Port Service——INT 14H)
00H —初始化通訊口03H —讀取通訊口狀態
01H —向通訊口輸出字符04H —擴充初始化通訊口
02H —從通訊口讀入字符
(1)、功能00H
功能描述:初始化通訊口
入口參數:AH=00H
DX=初始化通訊口號(0=COM1,1=COM2,……)
AL=初始化參數,參數的說明以下: 波特率奇偶位中止位字的位數
76543210
000 = 110X0 = None0 = 1 bit10 = 7 bits
001 = 15001 = Odd1 = 2 bits11 = 8 bits
010 = 30011 = Even
011 = 600
100 = 1200
101 = 2400
110 = 4800
111 = 9600
對於PS/2,可用INT 14H之功能04H和05H來初始化其通訊速率大於9600。
出口參數:AH=通訊口狀態,各狀態位爲1時的含義以下: 位7—超時
位6—傳遞移位寄存器爲空
位5—傳遞保持寄存器爲空
位4—發現終止位3—發現幀錯誤
位2—發現奇偶錯
位1—發現越界錯
位0—接受數據準備好
AL=Modem狀態
位7—接受單線信號診斷
位6—環指示器
位5—數據發送準備好
位4—清除數據,再發送位3—改變在接受線上的信號診斷
位2—後邊界環指示器
位1—改變「數據準備好」狀態
位0—改變「清除—發送」狀態
(2)、功能01H
功能描述:向通訊口輸出字符
入口參數:AH=01H
AL=字符
DX=初始化通訊口號(0=COM1,1=COM2,……)
出口參數:AL的值不變
AH的位7=0——操做成功,通訊口狀態,AH的位6~0是其狀態位
(3)、功能02H
功能描述:從通訊口讀入字符
入口參數:AH=02H
DX=初始化通訊口號(0=COM1,1=COM2,……)
出口參數:AL=接受的字符
AH的位7=0——操做成功,通訊口狀態,AH的位6~0是其狀態位
(4)、功能03H
功能描述:讀取通訊口狀態
入口參數:AH=03H
DX=初始化通訊口號(0=COM1,1=COM2,……)
出口參數:AH=通訊口狀態,AL=Modem狀態,參見功能號00H中的說明
(5)、功能04H
功能描述:擴充初始化通訊口,僅在PS/2中有效,在此從略
四、雜項系統服務(Miscellaneous System Service——INT 15H)
00H —開盒式磁帶機馬達85H —系統請求(SysReq)鍵
01H —關盒式磁帶機馬達86H —延遲
02H —讀盒式磁帶機87H —移動擴展內存塊
03H —寫盒式磁帶機88H —讀取擴展內存大小
0FH —格式化ESDI驅動器按期中斷89H —進入保護模式
21H —讀/寫自檢(POST)錯誤記錄90H —設備等待
4FH —鍵盤截聽91H —設備加電自檢
80H —設備打開C0H —讀取系統環境
81H —設備關閉C1H —讀取擴展BIOS數據區地址
82H —進程終止C2H —鼠標圖形
83H —事件等待C3H —設置WatcHdog超時
84H —讀遊戲杆C4H —可編程選項選擇
(1)、功能00H
功能描述:開盒式磁帶機馬達
入口參數:AH=00H
出口參數:CF=0——操做成功,不然,AH=狀態(86H,若未安裝盒式磁帶機)
(2)、功能01H
功能描述:關盒式磁帶機馬達
入口參數:AH=01H
出口參數:CF=0——操做成功,不然,AH=狀態(86H,若未安裝盒式磁帶機)
(3)、功能02H
功能描述:讀盒式磁帶機
入口參數:AH=02H
CX=讀入的字節數
ES:BX=存放數據的緩衝區地址
出口參數:CF=0——操做成功,DX=實際讀入的字節數,ES:BX指向最後一個字節的後面地址,不然,AH=狀態碼,其值含義以下: 01H
—— CRC校驗碼錯80H —— 非法命令
02H —— 位信號混亂86H —— 未安裝盒式磁帶機
04H —— 無發現數據
(4)、功能03H
功能描述:寫盒式磁帶機
入口參數:AH=03H
CX=要寫入的字節數
ES:BX=已存數據的緩衝區地址
出口參數:CF=0——操做成功,CX=00H,ES:BX指向最後一個字節的後面地址,不然,AH=狀態碼,其值含義以下: 80H ——
非法命令86H —— 未安裝盒式磁帶機
(5)、功能0FH
功能描述:格式化ESDI驅動器按期中斷,僅在PS/2中有效,在此從略
(6)、功能21H
功能描述:讀/寫自檢(POST)錯誤記錄,僅在PS/2中有效,在此從略
(7)、功能4FH
功能描述:鍵盤截聽,僅在PS/2中有效,在此從略
(8)、功能80H
功能描述:打開設備
入口參數:AH=80H
BX=設備號
CX=進程號
出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態碼
(9)、功能81H
功能描述:關閉設備
入口參數:AH=81H
BX=設備號
CX=進程號
出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態碼
(10)、功能82H
功能描述:進程終止
入口參數:AH=81H
BX=進程號
出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態碼
(11)、功能83H
功能描述:事件等待
入口參數:AH=83H 若須要事件等待,則:AL=00H
CX:DX=千分秒
ES:BX=信號量字節的地址
不然,調用參數爲AL=01H
出口參數:若調用時,AL=00H,操做成功——CF=0,不然,CF=1
(12)、功能84H
功能描述:讀遊戲杆
入口參數:AH=84H
DX=00H——讀取開關設置
=01H——讀取阻力輸入
出口參數:CF=1H——操做失敗,不然,
DX=00H時,AL=開關設置(位7~4)
DX=01H時,AX、BX、CX和DX分別爲A(x)、A(y)、B(x)和B(y)的值
(13)、功能85H
功能描述:系統請求(SysReq)鍵
入口參數:AH=85H
AL=00H——鍵按下
=01H——鍵放開
出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態碼
(14)、功能86H
功能描述:延遲
入口參數:AH=86H
CX:DX=千分秒
出口參數:CF=0——操做成功,AH=00H
(15)、功能87H
功能描述:從常規內存和擴展內存之間移動擴展內存塊
入口參數:AH=87H
CX=移動的字數
ES:SI=GDT(Global Descriptor Table)的地址,其結構定義以下: 偏移量存儲的信息
00h-0Fh保留,但現全爲0
10h-11h段的長度(2CX-1或更大)
12h-14h24位源地址
15h訪問權限字節(其值爲93h)
16h-17h保留,但現全爲0
18h-19h段的長度(2CX-1或更大)
1Ah-1Ch 24位目標源地址
1Dh訪問權限字節(其值爲93h)
1Eh-2Fh保留,但現全爲0
出口參數:CF=0——操做成功,AH=00H,不然,AH=狀態碼,其含義以下:
01H —— RAM奇偶錯
02H —— 異常中斷錯
03H —— 20號線門地址失敗
(16)、功能88H
功能描述:讀取擴展內存大小
入口參數:AH=88H
出口參數:AX=擴展內存字節數(以K爲單位)
(17)、功能89H
功能描述:進入保護模式,CPU從實模式進入保護模式
入口參數:AH=89H
BH=IRQ0的中斷號
BL=IRQ8的中斷號
ES:SI=GDT的地址(參見功能號87H)
出口參數:CF=1——操做失敗,AH=0FFH,不然,AH=00H,CS、DS、ES和SS都是用戶定義的選擇器
(18)、功能90H
功能描述:設備等待
入口參數:AH=90H AL=驅動器類型,具體的驅動器類型定義以下:
=00H~7FH——串行再重用設備
=80H~0BFH——可重入式設備
=0C0H~0FFH——等待訪問設備,沒有自檢功能
00h — 磁盤
02h — 鍵盤
80h — 網絡
FDh — 軟盤馬達啓動01h — 軟盤
03h — 點設備(Pointing Device)
FCh — 硬盤復位
FEh — 打印機
ES:BX=對驅動器類型80H~0FFH的請求塊地址
出口參數:CF=1——操做失敗,不然,AH=00H
(19)、功能91H
功能描述:設備加電自檢
入口參數:AH=91H
AL=00H~7FH——串行再重用設備
=80H~0BFH——可重入式設備
出口參數:AH=00H
(20)、功能0C0H
功能描述:讀取系統環境
入口參數:AH=0C0H
出口參數:ES:BX=配置表地址,配置表的定義以下: 偏移量含義說明
00h-01h表的大小(字節數)
02h系統模型
03h系統子模型
04hBIOS版本號
05h配置標誌,其各位爲1時的說明以下:
位7—DMA通道3使用
位6—存在從屬8259
位5—實時時鐘有效
位4—鍵盤截聽有效
位3—等待外部事件有效
位2—擴展BIOS數據區
位1—微通道設施
位0—保留
06h-09h保留
(21)、功能C1H
功能描述:讀取擴展BIOS數據區地址,僅在PS/2中有效,在此從略
(22)、功能C2H
功能描述:鼠標圖形,僅在PS/2中有效,在此從略
(23)、功能C3H
功能描述:設置WatcHdog超時,僅在PS/2中有效,在此從略
(24)、功能C4H
功能描述:可編程選項選擇,僅在PS/2中有效,在此從略
五、鍵盤服務(Keyboard Service——INT 16H)
00H、10H —從鍵盤讀入字符03H —設置重複率
01H、11H —讀取鍵盤狀態04H —設置鍵盤點擊
02H, 12H —讀取鍵盤標誌05H —字符及其掃描碼進棧
(1)、功能00H和10H
功能描述:從鍵盤讀入字符
入口參數:AH=00H——讀鍵盤
=10H——讀擴展鍵盤,可根據0000:0496H單元的內容判斷:擴展鍵盤是否有效
出口參數:AH=鍵盤的掃描碼
AL=字符的ASCII碼
(2)、功能01H和11H
功能描述:讀取鍵盤狀態
入口參數:AH=01H——檢查普通鍵盤
=11H——檢查擴展鍵盤
出口參數:ZF=1——無字符輸入,不然,AH=鍵盤的掃描碼,AL=ASCII碼。
(3)、功能02H和12H
功能描述:讀取鍵盤標誌
入口參數:AH=02H——普通鍵盤的移位標誌
=12H——擴展鍵盤的移位標誌
出口參數:AL=鍵盤標誌(02H和12H都有效),其各位之值爲1時的含義以下: 位7—INS開狀態位3—ALT鍵按下
位6—CAPS LOCK開狀態位2—CTRL鍵按下
位5—NUM LOCK開狀態位1—左SHIFT鍵按下
位4—SCROLL LOCK開狀態位0—右SHIFT鍵按下
AH=擴展鍵盤的標誌(12H有效),其各位之值爲1時的含義以下:
位7—SysReq鍵按下位3—右ALT鍵按下
位6—CAPS LOCK鍵按下位2—右CTRL鍵按下
位5—NUM LOCK鍵按下位1—左ALT鍵按下
位4—SCROLL鍵按下位0—左CTRL鍵按下
(4)、功能03H
功能描述:設置重複率
入口參數:AH=03H 對於PC/AT和PS/2:AL=05H
BH=重複延遲
BL=重複率
對於PCjr:AL=00H——裝入缺省的速率和延遲
=01H——增長初始延遲
=02H——重複頻率下降一半
=03H——增長延遲和下降一半重複頻率
=04H——關閉鍵盤重複功能
出口參數:無
(5)、功能04H
功能描述:設置鍵盤點擊
入口參數:AH=04H AL=00H——關閉鍵盤點擊功能
=01H——打開鍵盤點擊功能
出口參數:無
(6)、功能05H
功能描述:字符及其掃描碼進棧
入口參數:AH=05H
CH=字符的描述碼
CL=字符的ASCII碼
出口參數:CF=1——操做成功,AL=00H,不然,AL=01H
六、並行口服務(Parallel Port Service——INT 17H)
00H —向打印機輸出字符
01H —初始化打印機端口
02H —讀取打印機狀態
(1)、功能00H
功能描述:向打印機輸出字符
入口參數:AH=00H
AL=輸出的字符
DX=打印機號(0—LPT1,1—LPT2,2—LPT3,……)
出口參數:AH=打印機狀態。其各位爲1時的含義以下: 位7—打印機空閒 位3—I/O錯誤
位6—打印機響應位2—保留
位5—無紙位1—保留
位4—打印機被選位0—打印機超時
(2)、功能01H
功能描述:初始化打印機端口
入口參數:AH=01H
DX=打印機號(0—LPT1,1—LPT2,2—LPT3,……)
出口參數:AH=打印機狀態。各位定義以下功能00H所示
(3)、功能02H
功能描述:讀取打印機狀態
入口參數:AH=02H
DX=打印機號(0—LPT1,1—LPT2,2—LPT3,……)
出口參數:AH=打印機狀態。各位定義以下功能00H所示
七、時鐘服務(Clock Service——INT 1AH)
00H —讀取時鐘「滴答」計數06H —設置鬧鐘
01H —設置時鐘「滴答」計數07H —鬧鐘復位
02H —讀取時間0AH —讀取天數計數
03H —設置時間0BH —設置天數計數
04H —讀取日期 80H —設置聲音源信息
05H —設置日期
(1)、功能00H
功能描述:讀取時鐘「滴答」計數
入口參數:AH=00H
出口參數:AL=00H——未過午夜,不然,表示已過午夜
CX:DX=時鐘「滴答」計數
(2)、功能01H
功能描述:設置時鐘「滴答」計數
入口參數:AH=01H
CX:DX=時鐘「滴答」計數
出口參數:無
(3)、功能02H
功能描述:讀取時間
入口參數:AH=02H
出口參數:CH=BCD碼格式的小時
CL=BCD碼格式的分鐘
DH=BCD碼格式的秒
DL=00H——標準時間,不然,夏令時
CF=0——時鐘在走,不然,時鐘中止
(4)、功能03H
功能描述:設置時間
入口參數:AH=03H
CH=BCD碼格式的小時
CL=BCD碼格式的分鐘
DH=BCD碼格式的秒
DL=00H——標準時間,不然,夏令時
出口參數:無
(5)、功能04H
功能描述:讀取日期
入口參數:AH=04H
出口參數:CH=BCD碼格式的世紀
CL=BCD碼格式的年
DH=BCD碼格式的月
DL=BCD碼格式的日
CF=0——時鐘在走,不然,時鐘中止
(6)、功能05H
功能描述:設置日期
入口參數:AH=05H
CH=BCD碼格式的世紀
CL=BCD碼格式的年
DH=BCD碼格式的月
DL=BCD碼格式的日
出口參數:無
(7)、功能06H
功能描述:設置鬧鐘
入口參數:AH=06H
CH=BCD碼格式的小時
CL=BCD碼格式的分鐘
DH=BCD碼格式的秒
出口參數:CF=0——操做成功,不然,鬧鐘已設置或時鐘已中止
(8)、功能07H
功能描述:鬧鐘復位
入口參數:AH=07H
出口參數:無
(9)、功能0AH
功能描述:讀取天數計數,僅在PS/2有效,在此從略
(10)、功能0BH
功能描述:設置天數計數,僅在PS/2有效,在此從略
(11)、功能80H
功能描述:設置聲音源信息
入口參數:AH=80H
AL=聲音源
=00H——8253可編程計時器,通道2
=01H——盒式磁帶輸入
=02H——I/O通道上的"Audio In"
=03H——聲音產生芯片
出口參數:無
八、直接系統服務(Direct System Service)
INT 00H —「0」做除數
INT 01H —單步中斷
INT 02H —非屏蔽中斷(NMI)
INT 03H —斷點中斷
INT 04H —算術溢出錯誤
INT 05H —打印屏幕和BOUND越界
INT 06H —非法指令錯誤
INT 07H —處理器擴展無效
INT 08H —時鐘中斷
INT 09H —鍵盤輸入
INT 0BH —通訊口(COM2:)
INT 0CH —通訊口(COM1:)
INT 0EH —磁盤驅動器輸入/輸出
INT 11H —讀取設備配置
INT 12H —讀取常規內存大小(返回值AX爲內存容量,以K爲單位)
INT 18H —ROM BASIC
INT 19H —重啓動系統
INT 1BH —CTRL+BREAK處理程序
INT 1CH —用戶時鐘服務
INT 1DH —指向顯示器參數表指針
INT 1EH —指向磁盤驅動器參數表指針
INT 1FH —指向圖形字符模式表指針code