此程序属于中断响衡斗兄应阶段,其内容有,1、先完成当前正在执咐袭行的指令,并保存下一条指令的地址。2、暂停主程序的执行后,将程序执行的地址接入到中断入口地址。3、一般此时会在找中断入口地址的单元内写一条无条件转移指令(因为该地址仅8字节),使得程序跳转到中断服销做务程序中执行。
1.中断源如何向cpu表达中断请求一般是设置中断请求触发器,在需要cpu服务时,将中断请求触发器置位,其1端或0端输出的跳变作为中断请求信号。显然中断源可以随时提出中断请求。
2.中断请求何种情况下才可能得到cpu响应
一个中断请求在同时具备下列两个条件时,才有可能得到cpu响应:
①该中断源未被屏蔽;
②该中断请求在当前所有锋渣中断请求中级别最高。
3.cpu何时响应中断
cpu在同时满足下列两个条件时,响应中断:
①if=1(对非屏蔽中断,没有此项要求);
②现行指令执行完。
cpu在每一个指令周期的最后一个总线周期的最后一个时钟周期的开始采样中断请求输入吵基桐线,若有中断请求,则下一步不进入取指令周期,而进入中断响应周期,如图5.1所示。对于8086系列cpu,中断响应周期为两个。
之所以把一条指升坦令执行完作为响应中断的条件,是因为中断响应周期以及中断服务程序要占用cpu资源。如果在执行一条指令的中间响应中断,则指令的当前状态既不能保存也无法加以恢复。与此相对比,dma *** 作是在dma控制器的作用下进行的,不占用cpu资源,所以在一条指令执行中间、当前总线周期结束即可进入dma周期。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)