中断不是很好理解的!中断分“软”和“硬”两种,你可以把它理解成一个特别的子程序。这个子程序是在一些特定的条件下执行的。硬中断,是由于键盘鼠标这样的外设通过向一些特定的CPU引脚发送脉冲或持续的特定电平触发的。
通常中断程序的入口“程序的入口地址”是CPU设定好的。这些地址一般叫做“中断向量”。比如你给8051的MCU的12脚加一个低电平(接地),CPU就执行“中断向量”指定的地址执行程序了。软中断时你在你的程序中写一个int xx(“8086汇编”) 的代码,CPU就去执行“中断程序”。为什么要给CPU找这个“麻烦”呢?这主要是想使用操作系统的一些功能时使用的。例如你想printf一些字符你就的调用操作系统的功能,使用驱动程序完成你的任务。x86的unix中的系统调用通常是int 80汇编指令。就是所说的“系统调用” !