编程语言及工具
中断就是使CPU暂停运行原来的程序而应更为急迫事件的需要转向去执行为中断源服务的程序(称为中断服务程序),待该程序处理完后,再返回运行原程序。
所谓中断源,即引起中断的事件或原因,或发出中断申请的来源。
中断源可分为外部中断源和内部中断源两大类。
(1) 外部中断源是指由CPU的外部事件引发的中断。主要包括:①一般中、慢速外设,如键盘、打印机、鼠标等;②数据通道,如磁盘、数据采集装置、网络等;③实时时钟,如定时器定时已到,发中断申请;④故障源,如电源掉电、外设故障、存储器读出出错以及越限报警等事件。
(2) 内部中断源是指由CPU的内部事件(异常)引发的中断,主要包括:①由CPU执行中断指令INT n引起的中断;②由CPU的某些运算错误引起的中断,如除数为0或商数超过了寄存器所能表达的范围、溢出等;③为调试程序设置的中断,如单步中断、断点中断;④由特殊操作引起的异常,如存储器越限、缺页等。
(1)外部设备请求中断。一般的外部设备(如键盘、打印机和A / D转换器等)在完成自身的操作后,向CPU发出中断请求,要求CPU为他服务。
(2)故障强迫中断。计算机在一些关键部位都设有故障自动检测装置。如运算溢出、存储器读出出错、外部设备故障、电源掉电以及其他报警信号等,这些装置的报警信号都能使CPU中断,进行相应的中断处理。由计算机硬件异常或故障引起的中断,也称为内部异常中断。
(3)实时时钟请求中断。在控制中遇到定时检测和控制,为此常采用一个外部时钟电路(可编程)控制其时间间隔。需要定时时,CPU发出命令使时钟电路开始工作,一旦到达规定时间,时钟电路发出中断请求,由CPU转去完成检测和控制工作。
(4)数据通道中断。数据通道中断也称直接存储器存取(DMA)操作中断,如磁盘、磁带机或CRT等直接与存储器交换数据所要求的中断。
(5)程序自愿中断。CPU执行了特殊指令(自陷指令)或由硬件电路引起的中断是程序自愿中断,是指当用户调试程序时,程序自愿中断检查中间结果或寻找错误所在而采用的检查手段,如断点中断和单步中断等。
全部0条评论
快来发表一下你的评论吧 !