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

我的博客

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

[2010-09-20 08:56] 习题5.11

中断返回指令IRET和下面两组指令有何不同
(1)RETF 2
(2)RETF
     POPF

答:IRET的作用是从中断返回,它的操作过程:
①从栈中弹出IP,SP=SP+2
②从栈中弹出CS,SP=SP+2
③从栈中弹出FLAGS,SP+2

RETF 2 只是返回调用程序,它的操作过程:
①从栈中弹出IP,SP=SP+2
②从栈中弹出CS,SP=SP+2
③平衡堆栈,SP=SP+2

RETF和POPF返回调用程序并恢复标志寄存器、他的操作过程:
①从栈中弹出IP,SP=SP+2
②从栈中弹出CS,SP=SP+2
③从栈中弹出FLAGS,SP=SP+2

其中,RETF 2,属于远程调用,并不对FLAGS进行保护和恢复。而RETF/POPF,类似中断作用。
评论次数(0)  |  浏览次数(317)  |  类型(汇编习题集) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码