版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gaoyi221119/article/details/78006535
软中断:
1、编程异常通常叫做软中断;
2、软中断是通讯进程之间用来模拟硬中断的 一种信号通讯方式;
3、 中断源发中断请求或软中断信号后,CPU或接收进程在适当的时机自动进行中断处理或完成软中断信号对应的功能;
4、软中断是软件实现的中断,也就是程序运行时其他程序对它的中断;而硬中断是硬件实现的中断,是程序运行时设备对它的中断。
硬中断:
1、 硬中断是由外部事件引起的因此具有随机性和突发性;软中断是执行中断指令产生的,无面外部施加中断请求信号,因此中断的发生不是随机的而是由程序安排好的;
2、硬中断的中断响应周期,CPU需要发中断回合信号(NMI不需要),而软中断的中断响应周期,CPU不需发中断回合信号;
3、硬中断的中断号是由中断控制器提供的(NMI硬中断中断号系统指定为02H);软中断的中断号由指令直接给出,无需使用中断控制器;
4、硬中断是可屏蔽的(NMI硬中断不可屏蔽),软中断不可屏蔽。
区别:
1、软中断发生的时间是由程序控制的,而硬中断发生的时间是随机的;
2、软中断是由程序调用发生的,而硬中断是由外设引发的;
3、硬件中断处理程序要确保它能快速地完成它的任务,这样程序执行时才不会等待较长时间。