第7章中断调用程序设计 第7章中断调用程序设计 7.1概述 7.2键盘输入中断调用 ·73显示器输出中断调用 74磁盘文件管理
第7章 中断调用程序设计 第7章 中断调用程序设计 • 7.1 概述 • 7.2 键盘输入中断调用 • 7.3 显示器输出中断调用 • 7.4 磁盘文件管理 开 始
第7章中断调用程序设计 7.1概述 71.1DOS中断和BOS中断 7.1.2DOS中断和BIOS中断使用方法
第7章 中断调用程序设计 7.1 概述 • 7.1.1 DOS中断和BIOS中断 • 7.1.2 DOS中断和BIOS中断使用方法
第7章中断调用程序设计 7.1.1DOS中断和BOS中断 在存储器系统中,内存器高端8K的ROM中存放有 基本输入输出系统( Basic Input/Output System,BIOS) 例行程序。BIOS给PC系列的不同微处理器提供了兼容 的系统加电自检、引导装入、主要I/O设备的处理程序 以及接口控制等功能模块来处理所有的系统中断。使用 BIOS功能调用,给程序员编程带来极大方便。程序员 不必了解硬件的具体细节,可直接使用指令设置参数, 并中断调用BIOS例行程序,所以利用BIOS功能调用编 写的程序简洁,可读性好,而且易于移植
第7章 中断调用程序设计 7.1.1 DOS中断和BIOS中断 在存储器系统中,内存器高端8K的ROM中存放有 基本输入输出系统(Basic Input/Output System,BIOS) 例行程序。BIOS给PC系列的不同微处理器提供了兼容 的系统加电自检、引导装入、主要I/O设备的处理程序 以及接口控制等功能模块来处理所有的系统中断。使用 BIOS功能调用,给程序员编程带来极大方便。程序员 不必了解硬件的具体细节,可直接使用指令设置参数, 并中断调用BIOS例行程序,所以利用BIOS功能调用编 写的程序简洁,可读性好,而且易于移植
第7章中断调用程序设计 磁盘操作系统( Disk Operating System)是PC机上 最重要的操作系统,它是由软盘或硬盘提供的。它的两 个DOS模块 IBMBIO. COM和 IBMDOS COM使BIOS使用起 来更方便。因为DOS模块提供了更多更必要的测试,使 DOS操作比使用相应功能的BⅠOS操作更简易,而且DOS 对硬件的依赖性更少些。DOS模块和 ROM BIOS的关系 如下图所示。 用户 局纲 低 ROM 对I0的 DOS DOS 程序要求 IBMDOS. COM IBMBIO COM BIOS 外设
第7章 中断调用程序设计 磁盘操作系统(Disk Operating System)是PC机上 最重要的操作系统,它是由软盘或硬盘提供的。它的两 个DOS模块IBMBIO.COM和IBMDOS.COM使BIOS使用起 来更方便。因为DOS模块提供了更多更必要的测试,使 DOS操作比使用相应功能的BIOS操作更简易,而且DOS 对硬件的依赖性更少些。DOS模块和ROM BIOS的关系 如下图所示
第7章中断调用程序设计 7.1.2DOS中断和BIOS中断使用方法 DOS功能调用与BIOS功能都通过软件中断调用 在中断调用前需要把功能号装入AH寄存器, 把子功能号装入AL寄存器,除此之外,还需要 在CPU的寄存器中提供专门的调用参数。一般 来说,调用DOS或BIOS功能时,有以下几个步 骤 (1)将调用参数装入指定的寄存器。 (2)如需功能调用号,把它装入AH。 (3)如需子功能调用号,把它装入AL。 (4)按中断号调用DOS或BIOS。 (5)检查返回参数是否正确
第7章 中断调用程序设计 7.1.2 DOS中断和BIOS中断使用方法 DOS功能调用与BIOS功能都通过软件中断调用。 在中断调用前需要把功能号装入AH寄存器, 把子功能号装入AL寄存器,除此之外,还需要 在CPU的寄存器中提供专门的调用参数。一般 来说,调用DOS或BIOS功能时,有以下几个步 骤: (1)将调用参数装入指定的寄存器。 (2)如需功能调用号,把它装入AH。 (3)如需子功能调用号,把它装入AL。 (4)按中断号调用DOS或BIOS。 (5)检查返回参数是否正确
第7章中断调用程序设计 7.2键盘输入中断调用 72.1ASCI与扫描码 72.2BIOS键盘中断 72.3DOS中断调用
第7章 中断调用程序设计 7.2 键盘输入中断调用 7.2.1 ASCII与扫描码 7.2.2 BIOS键盘中断 7.2.3 DOS中断调用
第7章中断调用程序设计 7.2.1ASCI与扫描码 键盘是计算机最基本的一种输入设备 用来输入信息,以达到人机对话的目的。键 盘主要由3种基本类型的键组成: (1)字符数字键: (2)扩展功能键:如Home、End、 Backspace、 Delete、 Insert、PgUp、PgD以及功能键F1l F10 (3)和其他键组合使用的控制键:如Alt,Crl, Shift等
第7章 中断调用程序设计 7.2.1 ASCII与扫描码 键盘是计算机最基本的一种输入设备, 用来输入信息,以达到人机对话的目的。键 盘主要由3种基本类型的键组成: (1)字符数字键: (2)扩展功能键:如Home、End、Backspace、 Delete、Insert、PgUp、PgD以及功能键F1~ F10 (3)和其他键组合使用的控制键:如Alt,Ctrl, Shift等
第7章中断调用程序设计 键盘和主机通过5芯电缆相连,这5根线 分别是电源线、地线、复位线以及键盘数据 线和键盘时钟线。PC机系列的键盘触点电路 按16行×8列的矩阵来排列,用单片机 Intel8048来控制对键盘的扫描。按键的识别 采用行列扫描法,即根据对行线和列线的扫 描结果来确定闭合键的位置,这个位置值称 为按键的扫描码,通过数据线将8位扫描码送 往主机。当在键盘上“按下”或“放开” 个键时,如果键盘中断是允许的(21H端口 的第一位等于0),就会产生一个类型9的中 断,并转入到BIOS的键盘中断处理程序
第7章 中断调用程序设计 键盘和主机通过5芯电缆相连,这5根线 分别是电源线、地线、复位线以及键盘数据 线和键盘时钟线。PC机系列的键盘触点电路 按16行×8列的矩阵来排列,用单片机 Intel8048来控制对键盘的扫描。按键的识别 采用行列扫描法,即根据对行线和列线的扫 描结果来确定闭合键的位置,这个位置值称 为按键的扫描码,通过数据线将8位扫描码送 往主机。当在键盘上“按下”或“放开”一 个键时,如果键盘中断是允许的(21H端口 的第一位等于0),就会产生一个类型9的中 断,并转入到BIOS的键盘中断处理程序
第7章中断调用程序设计 该处理程序从8255可编程外围接口芯片的输 入端口读取一个字节,这个字节的低7位是按键 的扫描码。最高位为0或者为1,分别表示键是 “按下”状态还是“放开”状态。按下时,取得 的字节称为通码,放开时取得的字节称为断码。 如ESC键按下取得的通码为01H(00001B), 放开ESC键时会产生一个断码81H (1000000B)。BIOS键盘处理程序将取得的扫 描码转换成相应的字符码,大部分的字符码是 个标准的ASCⅢ码;没有相应ASCⅡ的键,如At 和功能键(F1~F10),字符码为0;还有一些非 ASCI码键产生一个指定的操作
第7章 中断调用程序设计 该处理程序从8255可编程外围接口芯片的输 入端口读取一个字节,这个字节的低7位是按键 的扫描码。最高位为0或者为1,分别表示键是 “按下”状态还是“放开”状态。按下时,取得 的字节称为通码,放开时取得的字节称为断码。 如ESC键按下取得的通码为01H(00000001B), 放开ESC键时会产生一个断码81H (10000001B)。BIOS键盘处理程序将取得的扫 描码转换成相应的字符码,大部分的字符码是一 个标准的ASCII码;没有相应ASCII的键,如Alt 和功能键(F1~F10),字符码为0;还有一些非 ASCII码键产生一个指定的操作
第7章中断调用程序设计 7.2.2BIOS键盘中断 类型16H的中断提供了基本的键盘操作,它的 中断处理程序包括3个不同的功能,分别根据AH寄 存器中的子功能号来确定 (1)AH=0本功能为从键盘读字符到AL寄存器中 (2)AH=1本功能为读键盘缓冲区字符到AL寄存器 中,并置ZF标志位。 (3)AH=2本功能为读取特殊功能键的状态
第7章 中断调用程序设计 7.2.2 BIOS键盘中断 类型16H的中断提供了基本的键盘操作,它的 中断处理程序包括3个不同的功能,分别根据AH寄 存器中的子功能号来确定。 (1)AH=0 本功能为从键盘读字符到AL寄存器中。 (2)AH=1 本功能为读键盘缓冲区字符到AL寄存器 中,并置ZF标志位。 (3)AH=2 本功能为读取特殊功能键的状态