(1) 中断控制器汇集各类外设发出的中断信号,然后告诉CPU;
(2) CPU保存当前程序的运行环境(各个寄存器等),调用中断服务程序(ISR, Interrupt Service Routine)来处理这些中断;
(3) 在ISR中通过读取中断控制器、外设的相关寄存器来识别这是哪个中断,并进行相应的处理;
(4) 通过读写中断控制器和外设的相关寄存器清除中断,如果不清楚,CPU会误认为该中断又一次发生了;
(5) 恢复被中断的运行环境(即上面保存的各个寄存器等),继续执行。(1) 中断控制器汇集各类外设发出的中断信号,然后告诉CPU;
(2) CPU保存当前程序的运行环境(各个寄存器等),调用中断服务程序(ISR, Interrupt Service Routine)来处理这些中断;
(3) 在ISR中通过读取中断控制器、外设的相关寄存器来识别这是哪个中断,并进行相应的处理;
(4) 通过读写中断控制器和外设的相关寄存器清除中断,如果不清楚,CPU会误认为该中断又一次发生了;
(5) 恢复被中断的运行环境(即上面保存的各个寄存器等),继续执行。