bios中断表(转)

http://blog.csdn.net/regionyu/article/details/1708084

INT(hex) AH 功能 调用参数 返回参数
10

0

设置显示方式

 

 

 

 

 

 

 

AL=00 40×25黑白方式
AL=01 40×25彩色方式
AL=02 80×25黑白方式
AL=03 80×25彩色方式
AL=04 320×200彩色图形方式
AL=05 320×200黑白图形方式
AL=06 320×200黑白图形方式
AL=07 80×25单色文本方式
AL=08 160×200 16色图形 (PCjr)
AL=09 320×200 16色图形 (PCjr)
AL=0A 640×200 16色图形 (PCjr)
AL=0B 保留(EGA)
AL=0C 保留(EGA)
AL=0D 320×200 彩色图形 (EGA)
AL=0E 640×200 彩色图形 (EGA)
AL=0F 640×350 黑白图形 (EGA)
AL=10 640×350 彩色图形 (EGA)
AL=11 640×480 单色图形 (EGA)
AL=12 640×480 16色图形 (EGA)
AL=13 320×200 256色图形 (EGA)
AL=40 80×30 彩色文本(CGE400)
AL=41 80×50 彩色文本(CGE400)
AL=42 640×400 彩色图形(CGE400)
 
10 1 置光标类型 (CH)0-3=光标起始行
(CL)0-3=光标结束行
 
10 2 置光标位置 BH=页号
DH,DL=行,列
 
10 3 读光标位置 BH=页号 CH=光标起始行
DH,DL=行,列
10

4

读光笔位置

  AH=0 光笔未触发
  =1 光笔触发
CH=象素行
BX=象素列
DH=字符行
DL=字符列
10 5 置显示页 AL=页号  
10

6

屏幕初始化或上卷

AL=上卷行数
AL=0 整个窗口空白
BH=卷入行属性
CH=左上角行号
CL=左上角列号
DH=右下角行号
DL=右下角列号
 
10

7

屏幕初始化或下卷

AL=下卷行数
AL=0 整个窗口空白
BH=卷入行属性
CH=左上角行号
CL=左上角列号
DH=右下角行号
DL=右下角列号
 
10 8 读光标位置的字符和属性 BH=显示页 AH=属性
AL=字符
10

9

在光标位置显示字符及属性

BH=显示页
AL=字符
BL=属性
CX=字符重复次数
 
10

A

在光标位置显示字符

BH=显示页
AL=字符
CX=字符重复次数
 
10 B 置彩色调板(320×200图形) BH=彩色调板ID
BL=和ID配套使用的颜色
 
10

C

写象素

DX=行(0-199)
CX=列(0-639)
AL=象素值
 
10 D 读象素 DX=行(0-199)
CX=列(0-639)
AL=象素值
10 E 显示字符
(光标前移)
AL=字符
BL=前景色
 
10 F 取当前显示方式   AH=字符列数
AL=显示方式
10

13

显示字符串(适用AT)

ES:BP=串地址
CX=串长度
DH,DL=起始行,列
BH=页号
AL=0,BL=属性
串:char,char,...
AL=1,BL=属性
串:char,char,...
AL=2
串:char,attr,char,attr,...
AL=3
串:char,attr,char,attr,...

光标返回起始位置

光标跟随移动

光标返回起始位置

光标跟随移动

11

  设备检验

  AX=返回值
bit0=1,配有磁盘
bit1=1,80287协处理器
bit4,5=01,40×25BW(彩色板)
      =10,80×25BW(彩色板)
      =11,80×25BW(黑白板)
bit6,7=罗盘驱动器
bit9,10,11=RS-232板号
bit12=游戏适配器
bit13=串行打印机
bit14,15=打印机号
12   测定存储器容量   AX=字节数(KB)
13 0 软盘系统复位    
13 1 读软盘状态   AL=状态字节
13

2

读磁盘

AL=扇区数
CH,CL=磁盘号,扇区号
DH,DL=磁头号,驱动器号
ES:BX=数据缓冲区地址
读成功:AH=0
       AL=读取的扇区数
读失败:AH=出错代码
13

3

写磁盘

同上

写成功:AH=0
       AL=写入的扇区数
写失败:AH=出错代码
13

4

检验磁盘扇区

同上(ES:BX不设置)

成功:AH=0
     AL=检验的扇区数
失败:AH=出错代码
13 5 格式化盘磁道 ES:BX=磁道地址 成功:AH=0
失败:AH=出错代码
14 0 初始化串行通讯口 AL=初始化参数
DX=通讯口号(0,1)
AH=通读口状态
AL=调制解调器状态
14

1

向串行通讯口写字符

AL=字符
DX=通讯口号(0,1)

写成功:(AH)7=0
写失败:(AH)7=1
(AH)0-6=通讯口状态
14

2

从串行通讯口读字符

DX=通讯口号(0,1)

读成功:(AH)7=0
       (AL)=字符
写失败:(AH)7=1
(AH)0-6=通讯口状态
14 3 取通讯口状态 DX=通讯口号(0,1) AH=通讯口状态
AL=调制解调器状态
15 0 启动盒式磁带马达    
15 1 停止盒式磁带马达    
15

2

磁带分块读

ES:BX=数据传输区地址
CX=字节数

AH=状态字节
AH=00 读成功
  =01 冗余检验错
  =02 无数据传输
  =04 无引导
15 3 磁带分块写 DS:BX=数据传输区地址
CX=字节数
同上
16 0 从键盘读字符   AL=字符码
AH=扫描码
16

1

读键盘缓冲区字符

  ZF=0 AL=字符码
     AH=扫描码
ZF=1 缓冲区空
16 2 读键盘状态字节   AL=键盘状态字节
17 0 打印字符
回送状态字节
AL=字符
DX=打印机号
AH=打印机状态字节
17 1 初始化打印机
回送状态字节
DX=打印机号 AH=打印机状态字节
17 2 取状态字节 DX=打印机号 AH=打印机状态字节
1A 0 读时钟   CH:CL=时:分
DH:DL=秒:1/100秒
1A 1 置时钟 CH:CL=时:分
DH:DL=秒:1/100秒
 
1A 2 读实时钟   CH:CL=时:分(BCD)
DH:DL=秒:1/100秒(BCD)
1A 6 置报警时间 CH:CL=时:分(BCD)
DH:DL=秒:1/100秒(BCD)
 
1A 7 清除报警  
时间: 2024-10-12 18:00:26

bios中断表(转)的相关文章

x01.os.1: BIOS 中断

这只是一点准备工作.为了显示字符串,需要调用中断:int  0x10 (AH=0x13).具体参数设置,参考我的归纳整理如下: INT 10 (AH = 0) -----------------功能:设置显示方式调用参数:    AL = 00:40 * 25 黑白方式         01:40 * 25 彩色方式         02:80 * 25 黑白方式         03:80 * 25 彩色方式         04:320 * 200 彩色图形方式         05:320

第七天、调用 BIOS 中断读软盘

保护模式内容太多,一时半会消化不完,慢慢体会清楚了再继续写吧.今天先把读软盘搞清楚--当然是调用 BIOS 中断直接读了.就是 int 013h 中断,即"直接磁盘服务"(Direct Disk Service).这个中断功能丰富,今天只学 02 号功能,就是"读软盘". 首先讲清楚软盘的物理结构:软盘,顾名思义就是存储信息的软式磁盘片(Floppy Disk)--因为是塑料做的,当然软.一般一块软盘有一张磁片,磁片两面都涂有磁性材料,这层磁性材料就叫磁层.磁层就是

软盘相关知识和通过BIOS中断访问

一. 软盘基础知识介绍 (1) 3.5英寸软盘 3.5英寸软盘分为上下两面,每面有80个磁道,每个磁道又分为18个扇区,每个扇区大小为512个字节. 软盘大小计算: 2面 * 80磁道 * 18扇区 * 512 字节 = 1440KB ≈ 1.44MB (2) 5.25英寸软盘 5.25英寸软盘每个磁道只有15个扇区,其它的与3.5英寸软盘一样.因此,5.25英寸软盘大小为 1.2MB 磁盘的实际访问由磁盘控制器进行.我们可以通过控制磁盘控制器来访问磁盘.只能以扇区为单位对磁盘进行读写.在读写扇

BIOS中断

BIOS中断 BIOS中断 实模式下,调用中断采用的是BIOS中断方式. BIOS中断就不介绍了:BIOS中断 BIOS中断大全 查询相应的中断API可以根据BIOS中断大全:BIOS中断大全 BIOS的中断向量表 中断向量表位置 中断向量表位于BIOS的 0x0000 - 0x03FF 地方,大小为 1k. 中断号 说明: int 中断号 0x00 DIVIDE ERROR 0x01 SINGLE STEP 0x02 NON-MASKABLE INTERRUPT 0x03 BREAKPOINT

[转]BIOS中断汇编函数---留用

汇编中的10H中断int 10h详细说明 本文由arthinking发表于4年前 | 汇编语言 | 评论数 8 |  被围观 18,813 views+ 汇编中的10H中断是由BIOS对显示器和屏幕所提供的服务程序.使用int 10h服务程序时,必须先指定ah寄存器为以下显示服务编号之一,以指定需要调用的功用. 显示服务 (Video Service:int 10h) 00H:设置显示器模式 01H:设置光标形状 02H:设置光标位置 03H:读取光标信息 04H:读取光笔位置 05H:设置显示

使用BIOS中断显示字符串笔记(int 10h 13号中断)

BIOS的10H中断的13号中断用于显示字符串,参数为: 1.AH=13H 2.AL=显示方式 如果AL=0,表示目标字符串仅仅包含字符,属性在BL中包含,不移动光标 如果AL=1,表示目标字符串仅仅包含字符,属性在BL中包含,移动光标 如果AL=2,表示目标字符串包含字符和属性,不移动光标 如果AL=3,表示目标字符串包含字符和属性,移动光标 总之,可以归纳为: |BIT7|BIT6|BIT5|BIT4|BIT3|BIT2|BIT1|BIT0| AL BIT0为0表示不移动光标,为1表示移动光

王爽 <<汇编 语言>> 13.6 BIOS中断例程应用

1 ;名称:ILOVEU程序 2 ;使用BIOS提供的中断例程 3 assume cs:code 4 code segment 5 main: 6 mov cx,880 ;显示背景22*80 7 mov dh,0 ;dh中放行号 8 mov dl,0 ;dl中放列号 9 bibi: 10 push cx 11 mov ah,2 ;显示光标 12 mov bh,0 ;第0页 13 int 10h 14 15 ;在光标处显示个数自定的字符 16 mov ah,9 ;9为在"在光标处显示字符的功能&q

汇编-BIOS中断

INT 10H AH 功 能 调用参数 返回参数 / 注释 1 置光标类型 (CH)0―3 = 光标开始行 (CL)0―3 = 光标结束行 2 置光标位置 BH = 页号 DH = 行 DL = 列 3 读光标位置 BH = 页号 CH = 光标开始行 CL = 光标结束行 DH = 行 DL = 列 4 读光笔位置 AH=0 光笔未触发 =1 光笔触发 CH=象素行 BX=象素列 DH=字符行 DL=字符列 5 显示页 AL = 显示页号 6 屏幕初始化或上卷 AL = 上卷行数 AL =0全

操作系统内核Hack:(三)BootLoader制作

操作系统内核Hack:(三)BootLoader制作 关于本文涉及到的完整源码请参考MiniOS的v1_bootloader分支. 1.制作方法 现在我们已经了解了关于BootLoader的一切知识,让我们开始动手做一个BootLoader吧!但真正开始之前,我们还要做出一个选择,在之前的讨论中我们曾说过,有两种学习和制作引导程序和操作系统内核的路线:1)<Orange's:一个操作系统的实现>书中的路线:2)Linux 0.11的路线. 1.1 两种实现思路 具体来说,第一种路线就是将Boo