Board logo

标题: x86中断完全版(4) [打印本页]

作者: 苹果也疯狂    时间: 2015-6-30 21:40     标题: x86中断完全版(4)

(10)、功能82H

功能描述: 进程终止
入口参数: AH=81H
BX=进程号
出口参数: CF=0 -- 操作成功,AH=00H,否则,AH=状态码

(11)、功能83H

功能描述: 事件等待
入口参数: AH=83H 若需要事件等待,则: AL=00H
CXX=千分秒
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
CXX=千分秒
出口参数: CF=0 -- 操作成功,AH=00H

(15)、功能87H

功能描述: 从常规内存和扩展内存之间移动扩展内存块
入口参数: AH=87H
CX=移动的字数
ES:SI=GDT(Global Descriptor Table)的地址,其结构定义如下: 偏移量 存储的信息
00h-0Fh 保留,但现全为0
10h-11h 段的长度(2CX-1或更大)
12h-14h 24位源地址
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 系统子模型
04h BIOS版本号
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 - 从键盘读入字符
01H、11H - 读取键盘状态
02H, 12H - 读取键盘标志
03H - 设置重复率
04H - 设置键盘点击
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

####################################################################

6、并行口服务(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 - 读取时钟“滴答”计数
01H - 设置时钟“滴答”计数
02H - 读取时间
03H - 设置时间
04H - 读取日期
05H - 设置日期
06H - 设置闹钟
07H - 闹钟复位
0AH - 读取天数计数
0BH - 设置天数计数
80H - 设置声音源信息

-------------------------------------------------------------------------------------------------

(1)、功能00H

功能描述: 读取时钟“滴答”计数
入口参数: AH=00H
出口参数: AL=00H -- 未过午夜,否则,表示已过午夜
CXX=时钟“滴答”计数

(2)、功能01H

功能描述: 设置时钟“滴答”计数
入口参数: AH=01H
CXX=时钟“滴答”计数
出口参数: 无

(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 -- 标准时间,否则,夏令时
出口参数: 无




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0