BIOS是系统提供的基本输入输出例行程序,利用BIOS功能编写的程序简洁,可读性好,而且易于移植。
DOS是PC机上最重要的操作系统,它和BIOS一样包括有近百个设备管理、目录管理和文件管理程序,是一个功能齐全、使用方便的中断例行程序的集合。使用DOS操作比使用相应功能的BIOS操作更简易,而且对硬件的依赖性更少些。
BIOS功能与DOS功能都是通过软件中断调用的。在中断调用前需要把功能号装入AH寄存器,把子功能号装入AL寄存器,除此而外,通常还需在CPU寄存器中提供专门的调用参数。一般地说,调用DOS或BIOS功能时,有以下几个基本步骤:
1、 将调用参数装入指定的寄存器中;
2、 如需功能号,把它装入AH;
3、 如需子功能号,把它装入AL;
4、 按中断号调用DOS或BIOS中断;
5、 检查返回参数是否正确。
BIOS中断和DOS中断的关系如图9.1所示。
在存储器系统中,从地址0FE000H开始的8K ROM(只读存储器)中装有BIOS(Basic
Iuput /output System)例行程序。驻留在ROM中的BIOS给PC系列的不同微处理器提供了兼容的系统加电自检,引导装入,主要I/O设备的处理程序以及接口控制等功能模块来处理所有的系统中断。使用BIOS功能调用,给程序员编程带来很大方便,程序员不必了解硬件操作的具体细节,直接用指令设置参数,然后中断调用BIOS中的子功能,所以利用BIOS功能编写的程序简洁,可读性好,而且易于移植。
DOS(Disk Operating System)是PC机上最重要的操作系统,它是由软盘或硬盘提供的。它的两个DOS模块IBMBIO.COM和IBMDOS.COM使BIOS用起来更方便,因为DOS模块提供了更多更必要的测试,使DOS操作比使用相应功能的BIOS操作更简易,而且DOS对硬件的依赖性更少些。
IBMBIO.COM是一个输入/输出设备处理程序,它提供了DOS到ROM BIOS的低级接口,它完成将数据从外设读入内存,或把数据从内存写到外设去的工作。
IBMDOS.COM包括一个文件管理程序和一些处理程序,在DOS下运行的程序可以调用这些处理程序。为了完成DOS功能调用,IBMDOS.COM把信息传送给IBMBIO.COM,形成一个或多个BIOS调用。
在一些情况下,既能选择DOS中断也能选择BIOS中断来执行同样的功能。例如,打印机输出一个字符的功能,可用DOS中断21H的功能5,也可用BIOS中断17H的功能0。因为BIOS比DOS更靠近硬件,因此建议尽可能地使用DOS功能,但在少数情况下必须使用BIOS功能,例如,BIOS中断17H的功能2为读打印机状态,它就没有等效的DOS功能。
DOS中断能处理大多数的I/O,但有一些功能还没有提供,如声音控制等,这就要考虑用I/O指令在端口级上编程,或使用高级语言编程。
|
|