第三节BIOS和DOS中断功能调用 (教材旧P238、新P239) 一、概述 1.BIOS和DOS中断子程层次特点 2.中断类型分类 3.调用方法 二、BIOS功能调用 1.设置显示方式(10H类型,00H功能) 2.置光标位置(10H类型,02H功能) 3.清屏、清窗口(10H类型,06H或07H功能) 三、DOS系统功能调用(2IH类型中断调用) 1.显示单字符(02H功能) 2.显示字符串(09H功能) 3.单字符输入(01H、07H、08H功能) 4.字符串输入(0AH功能) 5.检测键盘状态(0BH功能) 6.保存中断向量(35H功能)(第六章介绍) 7.设置中断向量(25H功能)
第三节 BIOS和DOS中断功能调用 (教材旧P238、新P239) 一、概述 1. BIOS和DOS中断子程层次特点 2. 中断类型分类 3. 调用方法 二、BIOS功能调用 1.设置显示方式 ( 10H类型,00H功能 ) 2.置光标位置 ( 10H类型,02H功能 ) 3.清屏、清窗口 ( 10H类型,06H或07H功能 ) 三、 DOS系统功能调用( 21H类型中断调用) 1.显示单字符 ( 02H功能 ) 2.显示字符串 ( 09H功能 ) 3.单字符输入 ( 01H、07H、08H功能 ) 4.字符串输入 ( 0AH功能 ) 5.检测键盘状态( 0BH功能 ) 6.保存中断向量 ( 35H功能 ) (第六章介绍) 7.设置中断向量 ( 25H功能 )
第三节BIOS和DOS中断功能调用 (教材旧P238、新P239) 、概述 二、BIOS功能调用 DOS系统功能调用 (21H类型中断调用)
第三节 BIOS和DOS中断功能调用 (教材旧P238、新P239) 一、概述 二、BIOS功能调用 三、 DOS系统功能调用 ( 21H类型中断调用 )
、概述 1.BOS和DOS中断子程层次特点 2.中断类型分类 3.调用方法
一、概述 1.BIOS 和 DOS 中断子程层次特点 2. 中断类型分类 3. 调用方法
1.BIOS和DOS中断子程层次特点 匚用户命令」 命令处理模块 装入 用户程序 COMMAN D. COM 磁盘管理模块(DOS内核) MSDOS.SYS系统功能 基本输入输出BIOS模块 IO.SYS设备驱动 匚 ROM BIOS基本JO 系统硬件 DOS系统层次结构
1.BIOS和DOS中断子程层次特点 用户程序 磁盘管理模块(DOS内核) MSDOS.SYS 系统功能 基本输入/输出 BIOS 模 块 IO.SYS 设备驱动 ROM BIOS 基本I/O 系 统 硬 件 命令处理模块 装入 COMMAN D.COM 用户命令 DOS系统层次结构
层次特点: 用户命令 ● ROM BIOS中的中断子程 使用ⅣNOUT指令直接控制外设, 命令处理模块装「用户程序 COMMAN D. COM 入 实现与外设之间的输入输出操作, 以软件形式向其上层提供服务。 磁盘管理模块DOS内核) MSDOSSYS系统功能 ●IO.SYS中的中断子程 基本输入输出BIOS模块 (称基本输入输岀BIOS模块) IO. SYS设备驱动 调用 ROM BIOS的基本ⅣO功能 向 MSDOS. SYS提供设备驱动服务 ROM BIOS基本O 系统碩性
层次特点: ⚫ ROM BIOS中的中断子程 使用IN/OUT指令直接控制外设, 实现与外设之间的输入/输出操作, 以软件形式向其上层提供服务。 ⚫ IO.SYS中的中断子程 ( 称基本输入/输出BIOS模块) 调用ROM BIOS的基本I/O功能, 向 MSDOS.SYS提供设备驱动服务。 用户程序 磁盘管理模块(DOS内核) MSDOS.SYS 系统功能 基本输入/输出BIOS 模 块 IO.SYS 设备驱动 ROM BIOS 基本I/O 系 统 硬 件 装 入 命令处理模块 COMMAN D.COM 用户命令
用户命令 ● MSDOS.SYSI中的中断子程 (称DOS内核模块) 命令处理模块装「用户程序 COMMAN D. COM 调用 IO. SYS,实现对外设的控制。 入 与标准外设有两层隔离: 磁盘管理模块DOS内核) IO.SYS和 ROM BIOS。 MSDOSSYS系统功能 基本输入输出BIOS模块 其中21类型的中断子程 IO. SYS设备驱动 提供了丰富的系统服务, 称21类型的中断调用 ROM BIOS基本ⅣO 为DOS系统(功能)调用。 系统碩性
⚫ MSDOS.SYS中的中断子程 ( 称DOS内核模块 ) 调用IO.SYS,实现对外设的控制。 与标准外设有两层隔离 : IO.SYS和ROM BIOS。 其中21H类型的中断子程 提供了丰富的系统服务, 称21类型的中断调用 为DOS系统(功能)调用。 用户程序 磁盘管理模块(DOS内核) MSDOS.SYS 系统功能 基本输入/输出BIOS 模 块 IO.SYS 设备驱动 ROM BIOS 基本I/O 系 统 硬 件 装 入 命令处理模块 COMMAN D.COM 用户命令
用户命令 ●用户编程原则 尽可能使用DOS的系统功能调用.命令处理模块装「用户程序 I COMMAN D. COM 入 提高程序可移植性。 ②在DOS功能不能实现情况下, 磁盘管理模块DOS内核) MSDOSSYS系统功能 考虑用BIOS功能调用。 自在DOS和BIOS的中断子程 基本输入输出BIOS模块 IO. SYS设备驱动 不能解决问题时, 使用NOU指令直接控制硬件。〖 OMBIOS基本1O 系统碩性
⚫ 用户编程原则 ①尽可能使用DOS的系统功能调用, 提高程序可移植性。 ②在DOS功能不能实现情况下, 考虑用BIOS功能调用。 ③在DOS和BIOS的中断子程 不能解决问题时, 使用IN/OUT指令直接控制硬件。 用户程序 磁盘管理模块(DOS内核) MSDOS.SYS 系统功能 基本输入/输出BIOS 模 块 IO.SYS 设备驱动 ROM BIOS 基本I/O 系 统 硬 件 装 入 命令处理模块 COMMAN D.COM 用户命令
2中断类型分类 ●向量表中的中断类型分为七类: ①处理CPU特殊操作(除0、溢出)的00H、04H类型。 ②为 DEBUG调试程序设置的单步(0IH)、断点(03H)类型。 ③处理CPU的NM引脚信号的02H类型 →→非屏蔽硬中断子程 NMI ④处理CPU的ⅠNTR引脚信号的080FH类型 可屏蔽类型硬中断子程 8088 ⑤用ⅠNI指令调用的中断子程 BIOS功能调用(如10-1AH) NTR DOS功能调用(如21H)
2. 中断类型分类 ⚫ 向量表中的中断类型分为七类: ① 处理CPU特殊操作( 除0、溢出 )的00H、04H类型。 ② 为DEBUG调试程序设置的单步( 01H )、断点( 03H )类型。 ③ 处理CPU的NMI引脚信号的02H类型。 非屏蔽硬中断子程 ④ 处理CPU的INTR引脚信号的08~0FH类型。 可屏蔽类型硬中断子程 ⑤ 用INT指令调用的中断子程 BIOS功能调用(如10~1AH) DOS功能调用 (如 21H) NMI INTR 8088
⑥保留类型 为DOS系统保留 ∫1指现在未用到,以后系统可能会用到 2)已用到,但不向用户公开。 为用户保留 1)被系统子程嵌套调用了的类型(如1BH、1CH) 使用户在系统功能基础上扩充功能。 2)系统末占用类型(如60H-67H) ⑦非中断向量类型 对应向量表中的4个单元存放的不是中断向量。 (如1DH、1EH、1FH、41H、46H22H) 通常是一些参数表的地址信息
⑥ 保留类型 为DOS系统保留 1)指现在未用到,以后系统可能会用到。 2)已用到,但不向用户公开。 为用户保留 1)被系统子程嵌套调用了的类型 ( 如1BH、1CH )。 使用户在系统功能基础上扩充功能。 2)系统未占用类型 ( 如 60H~67H )。 ⑦ 非中断向量类型 对应向量表中的4个单元存放的不是中断向量。 (如1DH、1EH、1FH、41H、46H、22H) 通常是一些参数表的地址信息
●中断向量分配表 类型号中断功能名称 模块 中断源 00H 除零错误 BIOS CPU内部操作 01H 单步执行 BIOS DEBUG程序 非屏蔽中断 BIOS 非屏蔽硬中断 03H 断点设置 BIOS DEBUG程序 04H 溢出错误 BIOS CPU内部操作 05H 屏幕打印 BIOS INT指令 06-07H 保留 08H 定时器中断 BIOS 可屏蔽硬中断 09H 键盘中断 BIOS 可屏蔽硬中断 OAH 保留 BIOS 可屏蔽硬中断 OBH 串行通信中断 BIOS 可屏蔽硬中断 OCH 保留 BIOS 可屏蔽硬中断 ODH 硬盘中断 BIOS 可屏蔽硬中断 OEH 软盘中断 BIOS 可屏蔽硬中断 OFH 打印机中断 BIOS 可屏蔽硬中断
类型号 中断功能名称 模 块 中 断 源 00H 除零错误 BIOS CPU 内部操作 01H 单步执行 BIOS DEBUG 程序 02H 非屏蔽中断 BIOS 非屏蔽硬中断 03H 断点设置 BIOS DEBUG 程序 04H 溢出错误 BIOS CPU 内部操作 05H 屏幕打印 BIOS INT 指令 06-07H 保留 08H 定时器中断 BIOS 可屏蔽硬中断 09H 键盘中断 BIOS 可屏蔽硬中断 0AH 保留 BIOS 可屏蔽硬中断 0BH 串行通信中断 BIOS 可屏蔽硬中断 0CH 保留 BIOS 可屏蔽硬中断 0DH 硬盘中断 BIOS 可屏蔽硬中断 0EH 软盘中断 BIOS 可屏蔽硬中断 0FH 打印机中断 BIOS 可屏蔽硬中断 ⚫ 中断向量分配表