Intel 8086 CPU采用的是16位实模式,没有内存保护的概念。之后随着CPU的发展,为了兼容16位机器和系统,所有的系统都是从16位模式开始引导,采用32/64位的CPU的机器需要从16位切换到32/64位模式。
想要在屏幕上输出信息,必须知道屏幕的接口,为此可以调用BIOS函数帮助我们完成这一任务。不过不同机器的BIOS例程的差异可能会导致错误。所以可以借助中断方式。
(不太理解,在30天自制操作系统里使用的是显卡的BIOS调用。)
每个中断是以中断向量表的一个索引值中断向量号来体现的。中断向量表是保存在内存地址的起始部分0x00,里面保存着中断服务程序的地址。BIOS针对计算机的某些方面也加入了自己的部分中断服务程序。但是为每一个BIOS例程设置中断很浪费,所以BIOS采用了多路复用的方式或者说是一个切换装置,根据CPU AX寄存器的值设置来决定优先发出的中断。