中断号 | 功能 | 参数 |
---|---|---|
1、显示服务(Video Service——INT 10H) | 00H —设置显示器模式 | (1)、功能00H 功能描述:设置显示器模式 |
01H —设置光标形状 | (2)、功能01H 功能描述:设置光标形状 | |
02H —设置光标位置 | (3)、功能02H 功能描述:用文本坐标下设置光标位置 | |
03H —读取光标信息 | (4)、功能03H 功能描述:在文本坐标下,读取光标各种信息 | |
04H —读取光笔位置 | (5)、功能04H 功能描述:获取当前状态和光笔位置 入口参数:AH=04H 出口参数:AH=00h——光笔未按下/未触发,01h——光笔已按下/已触发 BX=象素列(图形X坐标) CH=象素行(图形Y坐标,显示模式:04H~06H) CX=象素行(图形Y坐标,显示模式:0DH~10H) DH=字符行(文本Y坐标) DL=字符列(文本X坐标) | |
05H —设置显示页 | (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页寄存器 | |
06H、07H —初始化或滚屏 | (7)、功能06H和07H 功能描述:初始化屏幕或滚屏 入口参数:AH=06H——向上滚屏,07H——向下滚屏 AL=滚动行数(0——清窗口) BH=空白区域的缺省属性 (CH、CL)=窗口的左上角位置(Y坐标,X坐标) (DH、DL)=窗口的右下角位置(Y坐标,X坐标) 出口参数:无 | |
08H —读光标处的字符及其属性 | (8)、功能08H 功能描述:读光标处的字符及其属性 入口参数:AH=08H BH=显示页码 出口参数:AH=属性 AL=字符 | |
09H —在光标处按指定属性显示字符 | (9)、功能09H 功能描述:在当前光标处按指定属性显示字符 入口参数:AH=09H AL=字符 BH=显示页码 BL=属性(文本模式)或颜色(图形模式) CX=重复输出字符的次数 出口参数:无 | |
0AH —在当前光标处显示字符 | (10)、功能0AH 功能描述:在当前光标处按原有属性显示字符 入口参数:AH=0AH AL=字符 BH=显示页码 BL=颜色(图形模式,仅适用于PCjr) CX=重复输出字符的次数 出口参数:无 | |
0BH —设置调色板、背景色或边框 | (11)、功能0BH 功能描述:设置调色板、背景色或边框 入口参数:AH=0BH 设置颜色:BH=00H,BL=颜色 选择调色板:BH=01H,BL=调色板(320×200、4种颜色的图形模式) 出口参数:无 | |
0CH —写图形象素 | (12)、功能0CH 功能描述:写图形象素 入口参数:AH=0CH AL=象素值 BH=页码 (CX、DX)=图形坐标列(X)、行(Y) 出口参数:无 | |
0DH —读图形象素 | (13)、功能0DH 功能描述:读图形象素 入口参数:AH=0DH BH=页码 (CX、DX)=图形坐标列(X)、行(Y) 出口参数:AL=象素值 | |
0EH —在Teletype模式下显示字符 | (14)、功能0EH 功能描述:在Teletype模式下显示字符 入口参数:AH=0EH AL=字符 BH=页码 BL=前景色(图形模式) 出口参数:无 | |
0FH —读取显示器模式 | (15)、功能0FH 功能描述:读取显示器模式 入口参数:AH=0FH 出口参数:AH=屏幕字符的列数 AL=显示模式(参见功能00H中的说明) BH=页码 | |
10H —颜色 | (16)、功能10H 功能描述:颜色中断。其子功能说明如下: 功能号 子功能名称功能号 子功能名称 00H — 设置调色板寄存器01H — 设置边框颜色 02H — 设置调色板和边框03H — 触发闪烁/亮显位 07H — 读取调色板寄存器08H — 读取边框颜色 09H — 读取调色板和边框10H — 设置颜色寄存器 12H — 设置颜色寄存器块13H — 设置颜色页状态 15H — 读取颜色寄存器17H — 读取颜色寄存器块 1AH — 读取颜色页状态1BH — 设置灰度值 | |
11H —字体 | (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读取字体信息 | |
12H —显示器的配置 | (18)、功能12H 功能描述:显示器的配置中断。其子功能说明如下: 功能号 功能名称 功能号 功能名称 10H — 读取配置信息20H — 选择屏幕打印 30H — 设置扫描行31H — 允许/禁止装入缺省调色板 32H — 允许/禁止显示33H — 允许/禁止灰度求和 34H — 允许/禁止光标模拟35H — 切换活动显示 36H — 允许/禁止屏幕刷新 | |
13H —在Teletype模式下显示字符串 | (19)、功能13H 功能描述:在Teletype模式下显示字符串 入口参数:AH=13H BH=页码 BL=属性(若AL=00H或01H) CX=显示字符串长度 (DH、DL)=坐标(行、列) ES:BP=显示字符串的地址 AL=显示输出方式 0——字符串中只含显示字符,其显示属性在BL中。显示后,光标位置不变 1——字符串中只含显示字符,其显示属性在BL中。显示后,光标位置改变 2——字符串中含显示字符和显示属性。显示后,光标位置不变 3——字符串中含显示字符和显示属性。显示后,光标位置改变 出口参数:无 | |
1AH —读取/设置显示组合编码 | (20)、功能1AH 功能描述:读取/设置显示组合编码,仅PS/2有效,在此从略 | |
1BH —读取功能/状态信息 | (21)、功能1BH 功能描述:读取功能/状态信息,仅PS/2有效,在此从略 | |
1CH —保存/恢复显示器状态 | (22)、功能1CH 功能描述:保存/恢复显示器状态,仅PS/2有效,在此从略 | |
2、直接磁盘服务(Direct Disk Service——INT 13H) | 00H —磁盘系统复位 | (1)、功能00H |
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 — 检测操作失败(硬盘) | |
02H —读扇区 | (3)、功能02H 功能描述:读扇区 入口参数:AH=02H AL=扇区数 CH=柱面 CL=扇区 DH=磁头 DL=驱动器,00H~7FH:软盘;80H~0FFH:硬盘 ES:BX=缓冲区的地址 出口参数:CF=0——操作成功,AH=00H,AL=传输的扇区数,否则,AH=状态代码,参见功能号01H中的说明 | |
03H —写扇区 | (4)、功能03H 功能描述:写扇区 入口参数:AH=03H AL=扇区数 CH=柱面 CL=扇区 DH=磁头 DL=驱动器,00H~7FH:软盘;80H~0FFH:硬盘 ES:BX=缓冲区的地址 出口参数:CF=0——操作成功,AH=00H,AL=传输的扇区数,否则,AH=状态代码,参见功能号01H中的说明 | |
04H —检验扇区 | (5)、功能04H 功能描述:检验扇区 入口参数:AH=04H AL=扇区数 CH=柱面 CL=扇区 DH=磁头 DL=驱动器,00H~7FH:软盘;80H~0FFH:硬盘 ES:BX=缓冲区的地址 出口参数:CF=0——操作成功,AH=00H,AL=被检验的扇区数,否则,AH=状态代码,参见功能号01H中的说明 | |
05H —格式化磁道 | (6)、功能05H ES:BX=地址域列表的地址 | |
06H —格式化坏磁道 | (7)、功能06H 功能描述:格式化坏磁道 入口参数:AH=06H AL=交替 CH=柱面 DH=磁头 DL=80H~0FFH:硬盘 ES:BX=地址域列表的地址 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态代码,参见功能号01H中的说明 | |
07H —格式化驱动器 | (8)、功能07H 功能描述:格式化驱动器 入口参数:AH=07H AL=交替 CH=柱面 DL=80H~0FFH:硬盘 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态代码,参见功能号01H中的说明 | |
08H —读取驱动器参数 | (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=磁盘驱动器参数表地址 | |
09H —初始化硬盘参数 | (10)、功能09H 功能描述:初始化硬盘参数 入口参数:AH=09H DL=80H~0FFH:硬盘(还有有关参数表问题,在此从略) 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态代码,参见功能号01H中的说明 | |
0AH —读长扇区 | (11)、功能0AH 功能描述:读长扇区,每个扇区随带四个字节的ECC编码 入口参数:AH=0AH AL=扇区数 CH=柱面 CL=扇区 DH=磁头 DL=80H~0FFH:硬盘 ES:BX=缓冲区的地址 出口参数:CF=0——操作成功,AH=00H,AL=传输的扇区数,否则,AH=状态代码,参见功能号01H中的说明 | |
0BH —写长扇区 | (12)、功能0BH 功能描述:写长扇区,每个扇区随带四个字节的ECC编码 入口参数:AH=0BH AL=扇区数 CH=柱面 CL=扇区 DH=磁头 DL=80H~0FFH:硬盘 ES:BX=缓冲区的地址 出口参数:CF=0——操作成功,AH=00H,AL=传输的扇区数,否则,AH=状态代码,参见功能号01H中的说明 | |
0CH —查寻 | (13)、功能0CH 功能描述:查寻 入口参数:AH=0CH CH=柱面的低8位 CL(7-6位)=柱面的高2位 DH=磁头 DL=80H~0FFH:硬盘 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态代码,参见功能号01H中的说明 | |
0DH —硬盘系统复位 | (14)、功能0DH 功能描述:硬盘系统复位 入口参数:AH=0DH DL=80H~0FFH:硬盘 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态代码,参见功能号01H中的说明 | |
0EH —读扇区缓冲区 | (15)、功能0EH 功能描述:读扇区缓冲区 入口参数:AH=0EH ES:BX=缓冲区的地址 出口参数:CF=0——操作成功,否则,AH=状态代码,参见功能号01H中的说明 | |
0FH —写扇区缓冲区 | (16)、功能0FH 功能描述:写扇区缓冲区 入口参数:AH=0FH ES:BX=缓冲区的地址 出口参数:CF=0——操作成功,否则,AH=状态代码,参见功能号01H中的说明 | |
10H —读取驱动器状态 | (17)、功能10H 功能描述:读取驱动器状态 入口参数:AH=10H DL=80H~0FFH:硬盘 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态代码,参见功能号01H中的说明 | |
11H —校准驱动器 | (18)、功能11H 入口参数:AH=11H | |
12H —控制器RAM诊断 | (19)、功能12H 功能描述:控制器RAM诊断 入口参数:AH=12H 出口参数:CF=0——操作成功,否则,AH=状态代码,参见功能号01H中的说明 | |
13H —控制器驱动诊断 | (20)、功能13H 功能描述:控制器驱动诊断 入口参数:AH=13H 出口参数:CF=0——操作成功,否则,AH=状态代码,参见功能号01H中的说明 | |
14H —控制器内部诊断 | (21)、功能14H 功能描述:控制器内部诊断 入口参数:AH=14H 出口参数:CF=0——操作成功,否则,AH=状态代码,参见功能号01H中的说明 | |
15H —读取磁盘类型 | (22)、功能15H 功能描述:读取磁盘类型 入口参数:AH=15H DL=驱动器,00H~7FH:软盘;80H~0FFH:硬盘 出口参数:CF=1——操作失败,AH=状态代码,参见功能号01H中的说明, 否则,AH=00H — 未安装驱动器 =01H — 无改变线支持的软盘驱动器 =02H — 带有改变线支持的软盘驱动器 =03H — 硬盘,CX:DX=512字节的扇区数 | |
16H —读取磁盘变化状态 | (23)、功能16H 功能描述:读取磁盘变化状态 入口参数:AH=16H DL=00H~7FH:软盘 出口参数:CF=0——磁盘未改变,AH=00H,否则,AH=06H,参见功能号01H中的说明 | |
17H —设置磁盘类型 | (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中的说明 | |
18H —设置格式化媒体类型 | (25)、功能18H 功能描述:设置格式化媒体类型 入口参数:AH=18H CH=柱面数 CL=每磁道的扇区数 DL=00H~7FH:软盘 出口参数:CF=0——操作成功,AH=00H,ES:DI=介质类型参数表地址,否则,AH=状态编码,参见功能号01H中的说明 | |
19H —磁头保护 | (26)、功能19H 功能描述:磁头保护,仅在PS/2中有效,在此从略 | |
1AH —格式化ESDI驱动器 | (27)、功能1AH 功能描述:格式化ESDI驱动器,仅在PS/2中有效,在此从略 | |
3、串行口服务(Serial Port Service——INT 14H) | 00H —初始化通信口 | (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—改变“清除—发送”状态 |
01H —向通信口输出字符 | (2)、功能01H 功能描述:向通信口输出字符 入口参数:AH=01H AL=字符 DX=初始化通信口号(0=COM1,1=COM2,……) 出口参数:AL的值不变 AH的位7=0——操作成功,通信口状态,AH的位6~0是其状态位 | |
02H —从通信口读入字符 | (3)、功能02H 功能描述:从通信口读入字符 入口参数:AH=02H DX=初始化通信口号(0=COM1,1=COM2,……) 出口参数:AL=接受的字符 AH的位7=0——操作成功,通信口状态,AH的位6~0是其状态位 | |
03H —读取通信口状态 | (4)、功能03H 功能描述:读取通信口状态 入口参数:AH=03H DX=初始化通信口号(0=COM1,1=COM2,……) 出口参数:AH=通信口状态,AL=Modem状态,参见功能号00H中的说明 | |
04H —扩充初始化通信口 | (5)、功能04H 功能描述:扩充初始化通信口,仅在PS/2中有效,在此从略 | |
4、杂项系统服务(Miscellaneous System Service——INT 15H) | 00H —开盒式磁带机马达 | (1)、功能00H 功能描述:开盒式磁带机马达 入口参数:AH=00H 出口参数:CF=0——操作成功,否则,AH=状态(86H,若未安装盒式磁带机) |
01H —关盒式磁带机马达 | (2)、功能01H 功能描述:关盒式磁带机马达 入口参数:AH=01H 出口参数:CF=0——操作成功,否则,AH=状态(86H,若未安装盒式磁带机) | |
02H —读盒式磁带机 | (3)、功能02H 04H —— 无发现数据 | |
03H —写盒式磁带机 | (4)、功能03H 功能描述:写盒式磁带机 入口参数:AH=03H CX=要写入的字节数 ES:BX=已存数据的缓冲区地址 出口参数:CF=0——操作成功,CX=00H,ES:BX指向最后一个字节的后面地址,否则,AH=状态码,其值含义如下: 80H —— 非法命令86H —— 未安装盒式磁带机 | |
0FH —格式化ESDI驱动器定期中断 | (5)、功能0FH 功能描述:格式化ESDI驱动器定期中断,仅在PS/2中有效,在此从略 | |
21H —读/写自检(POST)错误记录 | (6)、功能21H 功能描述:读/写自检(POST)错误记录,仅在PS/2中有效,在此从略 | |
4FH —键盘截听 | (7)、功能4FH 功能描述:键盘截听,仅在PS/2中有效,在此从略 | |
80H —设备打开 | (8)、功能80H 功能描述:打开设备 入口参数:AH=80H BX=设备号 CX=进程号 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码 | |
81H —设备关闭 | (9)、功能81H 功能描述:关闭设备 入口参数:AH=81H BX=设备号 CX=进程号 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码 | |
82H —进程终止 | (10)、功能82H 功能描述:进程终止 入口参数:AH=81H BX=进程号 出口参数:CF=0——操作成功,AH=00H,否则,AH=状态码 | |
83H —事件等待 | (11)、功能83H 功能描述:事件等待 入口参数:AH=83H 若需要事件等待,则:AL=00H CX:DX=千分秒 ES:BX=信号量字节的地址 否则,调用参数为AL=01H 出口参数:若调用时,AL=00H,操作成功——CF=0,否则,CF=1 | |
84H —读游戏杆 | (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)的值 | |
85H —系统请求(SysReq)键 | (13)、功能85H AL=00H——键按下 | |
86H —延迟 | (14)、功能86H 功能描述:延迟 入口参数:AH=86H CX:DX=千分秒 出口参数:CF=0——操作成功,AH=00H | |
87H —移动扩展内存块 | (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号线门地址失败 | |
88H —读取扩展内存大小 | (16)、功能88H 功能描述:读取扩展内存大小 入口参数:AH=88H 出口参数:AX=扩展内存字节数(以K为单位) | |
89H —进入保护模式 | (17)、功能89H 功能描述:进入保护模式,CPU从实模式进入保护模式 入口参数:AH=89H BH=IRQ0的中断号 BL=IRQ8的中断号 ES:SI=GDT的地址(参见功能号87H) 出口参数:CF=1——操作失败,AH=0FFH,否则,AH=00H,CS、DS、ES和SS都是用户定义的选择器 | |
90H —设备等待 | (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 | |
91H —设备加电自检 | (19)、功能91H 功能描述:设备加电自检 入口参数:AH=91H AL=00H~7FH——串行再重用设备 =80H~0BFH——可重入式设备 出口参数:AH=00H | |
C0H —读取系统环境 | (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保留 | |
C1H —读取扩展BIOS数据区地址 | (21)、功能C1H 功能描述:读取扩展BIOS数据区地址,仅在PS/2中有效,在此从略 | |
C2H —鼠标图形 | (22)、功能C2H 功能描述:鼠标图形,仅在PS/2中有效,在此从略 | |
C3H —设置WatcHdog超时 | (23)、功能C3H 功能描述:设置WatcHdog超时,仅在PS/2中有效,在此从略 | |
C4H —可编程选项选择 | (24)、功能C4H 功能描述:可编程选项选择,仅在PS/2中有效,在此从略 | |
5、键盘服务(Keyboard Service——INT 16H) | 00H、10H —从键盘读入字符 | (1)、功能00H和10H 功能描述:从键盘读入字符 入口参数:AH=00H——读键盘 =10H——读扩展键盘,可根据0000:0496H单元的内容判断:扩展键盘是否有效 出口参数:AH=键盘的扫描码 AL=字符的ASCII码 |
03H —设置重复率 | (2)、功能01H和11H 功能描述:读取键盘状态 入口参数:AH=01H——检查普通键盘 =11H——检查扩展键盘 出口参数:ZF=1——无字符输入,否则,AH=键盘的扫描码,AL=ASCII码。 | |
01H、11H —读取键盘状态 | (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键按下 | |
02H, 12H —读取键盘标志 | (4)、功能03H 功能描述:设置重复率 入口参数:AH=03H 对于PC/AT和PS/2:AL=05H BH=重复延迟 BL=重复率 对于PCjr:AL=00H——装入缺省的速率和延迟 =01H——增加初始延迟 =02H——重复频率降低一半 =03H——增加延迟和降低一半重复频率 =04H——关闭键盘重复功能 出口参数:无 | |
04H —设置键盘点击 | (5)、功能04H 功能描述:设置键盘点击 入口参数:AH=04H AL=00H——关闭键盘点击功能 =01H——打开键盘点击功能 出口参数:无 | |
05H —字符及其扫描码进栈 | (6)、功能05H 功能描述:字符及其扫描码进栈 入口参数:AH=05H CH=字符的描述码 CL=字符的ASCII码 出口参数:CF=1——操作成功,AL=00H,否则,AL=01H | |
6、并行口服务(Parallel Port Service——INT 17H) | 00H —向打印机输出字符 | (1)、功能00H 功能描述:向打印机输出字符 入口参数:AH=00H AL=输出的字符 DX=打印机号(0—LPT1,1—LPT2,2—LPT3,……) 出口参数:AH=打印机状态。其各位为1时的含义如下: 位7—打印机空闲 位3—I/O错误 位6—打印机响应位2—保留 位5—无纸位1—保留 位4—打印机被选位0—打印机超时 |
01H —初始化打印机端口 | (2)、功能01H 功能描述:初始化打印机端口 入口参数:AH=01H DX=打印机号(0—LPT1,1—LPT2,2—LPT3,……) 出口参数:AH=打印机状态。各位定义如下功能00H所示 | |
02H —读取打印机状态 | (3)、功能02H 功能描述:读取打印机状态 入口参数:AH=02H DX=打印机号(0—LPT1,1—LPT2,2—LPT3,……) 出口参数:AH=打印机状态。各位定义如下功能00H所示 | |
7、时钟服务(Clock Service——INT 1AH) | 00H —读取时钟“滴答”计数 | (1)、功能00H 功能描述:读取时钟“滴答”计数 入口参数:AH=00H 出口参数:AL=00H——未过午夜,否则,表示已过午夜 CX:DX=时钟“滴答”计数 |
01H —设置时钟“滴答”计数 | (2)、功能01H 功能描述:设置时钟“滴答”计数 入口参数:AH=01H CX:DX=时钟“滴答”计数 出口参数:无 | |
02H —读取时间 | (3)、功能02H 功能描述:读取时间 入口参数:AH=02H 出口参数:CH=BCD码格式的小时 CL=BCD码格式的分钟 DH=BCD码格式的秒 DL=00H——标准时间,否则,夏令时 CF=0——时钟在走,否则,时钟停止 | |
03H —设置时间 | (4)、功能03H 功能描述:设置时间 入口参数:AH=03H CH=BCD码格式的小时 CL=BCD码格式的分钟 DH=BCD码格式的秒 DL=00H——标准时间,否则,夏令时 出口参数:无 | |
04H —读取日期 | (5)、功能04H 功能描述:读取日期 入口参数:AH=04H 出口参数:CH=BCD码格式的世纪 CL=BCD码格式的年 DH=BCD码格式的月 DL=BCD码格式的日 CF=0——时钟在走,否则,时钟停止 | |
05H —设置日期 | (6)、功能05H 功能描述:设置日期 入口参数:AH=05H CH=BCD码格式的世纪 CL=BCD码格式的年 DH=BCD码格式的月 DL=BCD码格式的日 出口参数:无 | |
06H —设置闹钟 | (7)、功能06H 功能描述:设置闹钟 入口参数:AH=06H CH=BCD码格式的小时 CL=BCD码格式的分钟 DH=BCD码格式的秒 出口参数:CF=0——操作成功,否则,闹钟已设置或时钟已停止 | |
07H —闹钟复位 | (8)、功能07H 功能描述:闹钟复位 入口参数:AH=07H 出口参数:无 | |
0AH —读取天数计数 | (9)、功能0AH 功能描述:读取天数计数,仅在PS/2有效,在此从略 | |
0BH —设置天数计数 | (10)、功能0BH 功能描述:设置天数计数,仅在PS/2有效,在此从略 | |
80H —设置声音源信息 | (11)、功能80H 功能描述:设置声音源信息 入口参数:AH=80H AL=声音源 =00H——8253可编程计时器,通道2 =01H——盒式磁带输入 =02H——I/O通道上的"Audio In" =03H——声音产生芯片 出口参数:无 | |
8、直接系统服务(Direct System Service) | INT 00H —“0”作除数 |
06-20