int86

int86是一個函式名,功 能是通用8086軟中斷接口。

函式簡介

函式名: int86

功 能: 通用8086軟中斷接口

用 法: int int86(int intr_num, union REGS *inregs, union REGS *outregs);

程式例:

#include

#include

#include

#define VIDEO 0x10

void movetoxy(int x, int y)

{

union REGS regs;

regs.h.ah = 2; /* set cursor postion */

regs.h.dh = y;

regs.h.dl = x;

regs.h. bh = 0; /* video page 0 */

int86(VIDEO, ®s, ®s);

}

int main(void)

{

clrscr();

movetoxy(35, 10);

printf("Hello\n");

return 0;

}

struct WORDREGS

{

unsigned int ax,bx,cx,dx,si,di,cflag,flags;

};

struct BYTEREGS

{

unsigned char al,ah,bl,bh,cl,ch,dl,dh;

};

union REGS

{

struct WORDREGS x;

struct BYTEREGS h;

};

中斷號

x86中斷直接系統服務(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 0DH - 並行通信口(LPT2:)

INT 0EH - 磁碟驅動器輸入/輸出

INT 0FH - 並行通信口(LPT1:)

INT 10H - 顯示服務(Video Service)

INT 11H - 讀取設備配置

INT 12H - 讀取常規記憶體大小(返回值AX為記憶體容量,以K為單位)

INT 13H - 直接磁碟服務(Direct Disk Service)

INT 14H - 串列口服務(Serial Port Service)

INT 15H - 雜項系統服務(Miscellaneous System Service)

INT 16H - 鍵盤服務(Keyboard Service)

INT 17H - 並行口服務(Parallel Port Service)

INT 18H - ROM BASIC

INT 19H - 重啟動系統

INT 1AH - 時鐘服務(Clock Service)

INT 1BH - CTRL+BREAK處理程式

INT 1CH - 用戶時鐘服務

INT 1DH - 指向顯示器參數表指針

INT 1EH - 指向磁碟驅動器參數表指針

INT 1FH - 指向圖形字元模式表指針

DOS中斷

INT 20H - 終止程式運行

INT 21H - 字元功能調用、目錄控制、檔案操作、系統功能、進程控制、時間和日期功能

INT 22H - 終止處理程式的地址

INT 23H - Ctrl+C處理程式

INT 24H - 致命錯誤處理程式

INT 25H - 讀磁碟扇區(忽略邏輯結構)

INT 26H - 寫磁碟扇區(忽略邏輯結構)

INT 27H - 終止,並駐留在記憶體

INT 28H - DOS空閒

INT 2FH - 多重中斷服務

INT 33H - 滑鼠功能中斷

相關詞條

相關搜尋

熱門詞條

聯絡我們