首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

x86中断完全版

x86中断完全版

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 0EH - 磁盘驱动器输入/输出
INT 10H - 显示器
INT 11H - 读取设备配置
INT 12H - 读取常规内存大小(返回值AX为内存容量,以K为单位)
INT 16H - 键盘服务(Keyboard Service)
INT 18H - ROM BASIC
INT 19H - 重启动系统
INT 1BH - CTRL+BREAK处理程序
INT 1CH - 用户时钟服务
INT 1DH - 指向显示器参数表指针
INT 1EH - 指向磁盘驱动器参数表指针
INT 1FH - 指向图形字符模式表指针

显示服务(Video Service -- INT 10H)

00H - 设置显示器模式
01H - 设置光标形状
02H - 设置光标位置
03H - 读取光标信息
04H - 读取光笔位置
05H - 设置显示页
06H、07H - 初始化或滚屏
08H - 读光标处的字符及其属性
09H - 在光标处按指定属性显示字符
0AH - 在当前光标处显示字符
0BH - 设置调色板、背景色或边框
0CH - 写图形象素
0DH - 读图形象素
0EH - 在Teletype模式下显示字符
0FH - 读取显示器模式
10H - 颜色
11H - 字体
12H - 显示器的配置
13H - 在Teletype模式下显示字符串
1AH - 读取/设置显示组合编码
1BH - 读取功能/状态信息
1CH - 保存/恢复显示器状态

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

(1)、功能00H

功能描述: 设置显示器模式
入口参数:
AH=00H
AL=显示器模式,见下表所示
出口参数: 无

可用的显示模式如下所列:

显示模式 显示模式属性 显示模式 显示模式属性  
00H 40×25 16色 文本 01H 40×25 16色 文本
02H 80×25 16色 文本 03H 80×25 16色 文本
04H 320×200 4色 05H 320×200 4色
06H 640×200 2色 07H 80×25 2色 文本
08H 160×200 16色 09H 320×200 16色
0AH 640×200 4色 0BH 保留  
0CH 保留  0DH 320×200 16色
0EH 640×200 16色 0FH 640×350 2(单色)
10H 640×350 4色 10H 640×350 16色
11H 640×480 2色 12H 640×480 16色
13H 640×480 256色  

对于超级VGA显示卡,我们可用AX=4F02H和下列BX的值来设置其显示模式。

BX 显示模式属性 BX 显示模式属性  
100H 640×400 256色 101H 640×480 256色
102H 800×600 16色 103H 800×600 256色
104H 1024×768 16色 105H 1024×768 256色
106H 1280×1024 16色 107H 1280×1024 256色
108H 80×60 文本模式 109H 132×25 文本模式
10AH 132×43 文本模式 10BH 132×50 文本模式
10CH 132×60 文本模式  

(2)、功能01H

功能描述: 设置光标形状
入口参数:
AH=01H
CH低四位=光标的起始行
CL低四位=光标的终止行
出口参数: 无

(3)、功能02H

功能描述: 用文本坐标下设置光标位置
入口参数:
AH=02H
BH=显示页码
DH=行(Y坐标)
DL=列(X坐标)
出口参数: 无

(4)、功能03H

功能描述: 在文本坐标下,读取光标各种信息
入口参数:
AH=03H
BH=显示页码
出口参数:
CH=光标的起始行
CL=光标的终止行
DH=行(Y坐标)
DL=列(X坐标)

(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、01H 0~7 CGA、EGA、MCGA、VGA
02H、03H 0~3 CGA
02H、03H 0~7 EGA、MCGA、VGA
07H 0~7 EGA、VGA
0DH 0~7 EGA、VGA
0EH 0~3 EGA、VGA
0FH 0~1 EGA、VGA
10H 0~1 EGA、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坐标)
出口参数: 无

(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=象素值
返回列表