汇编语言 — 中断

时间:2020-12-06 01:20:03

任何一个CPU,都有处理中断的能力。中断的意思是,CPU不再接着(刚执行完的指令)向下执行,而是转去处理这个特殊信息。

根据中断信息的来源,中断分为内中断和外中断两种。

中断向量表是保存中断处理程序入口地址的列表。

中断过程指的是在找到中断向量后,CPU的硬件自动完成设置CS和IP的过程。

当CPU接收到中断信息后,整个的过程如下:

  1. CPU接收中断信息
  2. 根据中断类型码在中断向量表中找相应的中断向量
  3. 引发中断过程——CS:IP指向中断处理程序的入口
  4. 开始执行中断处理程序

中断处理程序一般需要以下几个步骤:

  1. 保存用到的寄存器
  2. 处理中断
  3. 恢复用到的寄存器
  4. 用iret指令返回

iret指令的功能用汇编语法描述为:

POP IP

POP CS

POPF