中断 描述
INT 00h CPU:除零错,或商不合法时触发
INT 01h CPU:单步陷阱,TF标记为打开状态时,每条指令执行后触发
INT 02h CPU:非可屏蔽中断,如引导自我测试时发生内存错误。
INT 03h CPU:第一个未定义的中断向量,约定俗成仅用于调试程序
INT 04h CPU:算数溢出。通常由INTO指令在置溢出位时触发。
INT 05h 在按下Shift-Print Screen或BOUND指令检测到范围异常时触发。
INT 06h CPU:非法指令。
INT 07h CPU:没有数学协处理器时尝试执行浮点指令触发。
INT 08h IRQ0:可编程中断控制器每 55 毫秒触发一次,即每秒 18.2 次。
INT 09h IRQ1:每次键盘按下、按住、释放。
INT 0Ah IRQ2:
INT 0Bh IRQ3:COM2/COM4
INT 0Ch IRQ4:COM1/COM3
INT 0Dh IRQ5:硬盘控制器(PC/XT 下)或 LPT2
INT 0Eh IRQ6:需要时由软盘控制器调用。
INT 0Fh IRQ7:LPT1
INT 10h 显示服务 - 由BIOS或操作系统设定以供软件调用。

AH=00h 设定显示模式
AH=01h 设定游标形态
AH=02h 设置光标位置
AH=03h 获取光标位置与形态
AH=04h 获取光标位置
AH=05h 设置显示页
AH=06h 清除或滚动栏画面(上)
AH=07h 清除或滚动栏画面(下)
AH=08h 读取游标处字符与属性
AH=09h 更改游标处字符与属性
AH=0Ah 更改游标处字符
AH=0Bh 设定边界颜色
AH=0Eh 在TTY模式下写字符
AH=0Fh 获取当前显示模式
AH=13h 写字符串
INT 11h 返回设备列表。
INT 12h 获取常规内存容量。
INT 13h 低级磁盘服务。

AH=00h 复位磁盘驱动器。
AH=01h 检查磁盘驱动器状态。
AH=02h 读扇区。
AH=03h 写扇区。
AH=04h 校验扇区。
AH=05h 格式化磁道。
AH=08h 获取驱动器参数。
AH=09h 初始化硬盘驱动器参数。
AH=0Ch 寻道。
AH=0Dh 复位硬盘控制器。
AH=15h 获取驱动器类型。
AH=16h 获取软驱中盘片的状态。
INT 14h 串口通信例程。

AH=00h 初始化串口。
AH=01h 写出字符。
AH=02h 读入字符。
AH=03h 状态。
INT 15h 其它(系统支持例程)。

AH=4FH 键盘拦截。
AH=83H 事件等待。
AH=84H 读游戏杆。
AH=85H SysRq 键。
AH=86H 等待。
AH=87H 块移动。
AH=88H 获取扩展内存容量。
AH=C0H 获取系统参数。
AH=C1H 获取扩展 BIOS 数据区块。
AH=C2H 指针设备功能。
AH=E8h, AL=01h (AX = E801h) 获取扩展内存容量(自从 1994 年引入的新功能),可获取到 64MB 以上的内存容量。
AH=E8h, AL=20h (AX = E820h) 查询系统地址映射。该功能取代了 AX=E801h 和 AH=88h。
INT 16h 键盘通信例程。

AH=00h 读字符。
AH=01h 读输入状态。
AH=02h 读 Shift 键(修改键)状态。
AH=10h 读字符(增强版)。
AH=11h 读输入状态(增强版)。
AH=12h 读 Shift 键(修改键)状态(增强版)。
INT 17h 打印服务。

AH=00h 打印字符。
AH=01h 初始化打印机。
AH=02h 检查打印机状态。
INT 18h 执行磁带上的 BASIC 程序:“真正的”IBM 兼容机在 ROM 里内置 BASIC 程序,当引导失败时由 BIOS 调用此例程解释执行。(例:打印“Boot disk error. Replace disk and press any key to continue...”这类提示信息)
INT 19h 加电自检之后加载操作系统。
INT 1Ah 实时钟服务。

AH=00h 读取实时钟。
AH=01h 设置实时钟。
AH=02h 读取实时钟时间。
AH=03h 设置实时钟时间。
AH=04h 读取实时钟日期。
AH=05h 设置实时钟日期。
AH=06h 设置实时钟闹铃。
AH=07h 重置实时钟闹铃。
INT 1Bh Ctrl+Break,由 IRQ 9 自动调用。
INT 1Ch 预留,由 IRQ 8 自动调用。
INT 1Dh 不可调用:指向视频参数表(包含视频模式的数据)的指针。
INT 1Eh 不可调用:指向软盘模式表(包含关于软驱的大量信息)的指针。
INT 1Fh 不可调用:指向视频图形字符表(包含从 80h 到 FFh 的 ASCII 字符的数据)的信息。
INT 41h 地址指针:硬盘参数表(第一硬盘)。
INT 46h 地址指针:硬盘参数表(第二硬盘)。
INT 4Ah 实时钟在闹铃时调用。
INT 70h IRQ8:由实时钟调用。
INT 74h IRQ12:由鼠标调用
INT 75h IRQ13:由数学协处理器调用。
INT 76h IRQ14:由第一个 IDE 控制器所调用
INT 77h IRQ15:由第二个 IDE 控制器所调用

BIOS 中断向量表的更多相关文章

  1. bios中断向量表

  2. 自制操作系统Antz(3)——进入保护模式 (中) 直接操作显存

    Antz系统更新地址: https://www.cnblogs.com/LexMoon/category/1262287.html Linux内核源码分析地址:https://www.cnblogs. ...

  3. 0.00-050613_zc

    1. ROM bios --> 启动盘第一个扇区(此处内容为boot) 加载到 内存位置0x7C00(31KB) --> 执行权转移(也就相当于跳转) boot程序主要功能:把 软盘/映像 ...

  4. 《30天自制操作系统》笔记4 --- (Day2 下节)了解如何用汇编写操作系统中的HelloWorld

    关于上一节,我测试了发现3e.4c.4e都OK ,4b 4d 4f都进不去系统还把qemu卡死了. 50不会输出HelloWorld,可能需要hex偶数且在0x3e~4f区间吧.上节复制并运行命令如下 ...

  5. Linux Kernel 0.12 启动简介,调试记录(Ubuntu1804, Bochs, gdb)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  6. linux系统引导过程

    linux系统引导过程 linux-0.11引导时,将依次运行BIOS程序.bootsect.s.setup.s和head.s,完成引导过程后进入到main函数运行.BIOS完成硬件的检查与初始化等工 ...

  7. bios和dos中断

    1.字符功能调用类(Character-Oriented Function)01H.07H和08H —从标准输入设备输入字符02H —字符输出03H —辅助设备的输入04H —辅助设备的输出05H — ...

  8. Linux 下不经过BIOS重启(i386)

    前段时间有个项目,要求在Linux下不经过BIOS重启,i386平台. 一.可行性分析 众所周知,BIOS中包含了CPU及其他各种设备的初始化代码,Linux系统运行之后是否能够将各种用到的设备返回到 ...

  9. 2.2 BIOS中断

    BIOS中断 BIOS中断简介 计算机刚启动时,进入实模式下,此时操作系统跟硬件(例如键盘鼠标显卡等)交互通过BIOS进行的.通过调用中BIOS中断的方式来访问硬件设备. BIOS中断就不详细介绍了. ...

随机推荐

  1. 小甲鱼Python第十八讲课后习题

    笔记: 1.函数与过程:过程(procedure)是简单的,特殊且没有返回值的:函数(Function)有返回值 Python严格来说只有函数没有过程 2.局部变量:在局部生效如在函数中定义的变量 3 ...

  2. vue_条件渲染_v-if_v-else_v-show

    data: { ok: true flag: false } 1. 成对出现的 v-if 和 v-else 原理是: 标签的删除与重新创建 ,有些情况必须用 v-if <p v-if=" ...

  3. centos7-- sbt的安装使用

    sbt是一款类似于maven的构建工具 安装sbt curl https://bintray.com/sbt/rpm/rpm > bintray-sbt-rpm.repo mv bintray- ...

  4. 3.2station

    题意火车进入,然后要求以最大字典序输出 解题思路:先用一个数组储存当前位置之后最大的数字是什么,然后把已经进站的最后一节火车和还没进站的车的最大值,哪个更大,如果已经进站的更大,那么就先出站,否则就先 ...

  5. 2018-2019-1 20189210 《LInux内核原理与分析》第四周作业

    第三章 这一章接触内核源代码,对内核源码进行编译和调试跟踪 一.预备知识: 内核:整个操作系统的最底层,它负责了整个硬件的驱动以及提供各种系统所需的内核功能.内核实质上是系统上面的一个文件而已,这个文 ...

  6. springmvc 学习资料

    https://github.com/brianway/springmvc-mybatis-learninghttps://www.bilibili.com/video/av18288362?from ...

  7. 输入二进制数转换成十进制数(在cin>>和cin.get()上掉的坑)

    题目:输入一个二进制数转换成十进制. 题目分析:书上说,在一般情况下,c++的键盘输入可以识别是十进制数.八进制数和十六进制数,因此输入的二进制数据要作为字符处理.(其实我觉得数字也没问题吧). 正确 ...

  8. Dev_GridView获取所选行的句柄

    这是官方帮助文档上的一句话: 此示例演示如何获取所选行,然后更改其字段值. GetSelectedRows方法检索所选行的句柄. 由于行句柄反映了在View中显示行的顺序,因此修改单行可 能会影响其他 ...

  9. kettle获取系统时间

    Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + ...

  10. CRT乱码问题

    本人在使用CRT过程中遇到乱码问题,经调试发现要把字体调整为"新宋体",编码格式用"UTF-8". 调整字体: Options à Session option ...