汇编网首页登录博客注册
masmaster的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
文章收藏

[2010-09-21 11:16] 习题5.17

设计中断处理程序时应该遵循哪些原则? PC系统中的中断处理程序通常应该还有哪些步骤?

答:
设计外中断步骤如下:
①必须保护现场。就是保护中断发生时CPU内部各寄存器的内容,CPU在响应中断时,把标志寄存器和返回地址入栈保存。要保护的现场主要指通用寄存器的内容和除了CS以外的其他三个段寄存器的内容。
②尽快完成中断处理。因为在进行外设处理时,往往不在响应其他外设的中断请求。
③恢复现场。 在中断处理程序完成后,依次恢复被保护寄存器的原有内容。
④通知中断控制器中断已经结束。
⑤利用IRET指令实现中断返回。

设计软中断步骤如下:
①考虑切换堆栈。由于软中断处理程序往往在开中断状态下执行,所以应该考虑切换堆栈,切换堆栈对实现中断嵌套等有利
②及时开中断。开中断后,CPU就可以响应可屏蔽中断的外设中断请求,或者说使外设中断请求可及时得到处理。
③应该保护现场。应该保护中断处理程序要重新赋值的寄存器原有内容。
④完成中断处理。
⑤恢复现场。一次恢复被保护寄存器的内容
⑥堆栈切换。如果开始的时候切换了堆栈, 那么将必须重新切换换回原堆栈。
最后,通外设中断程序一样,利用IRET指令实现中断返回。

基本原则就是要保护现场。
评论次数(0)  |  浏览次数(285)  |  类型(汇编习题集) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码