h18755 发表于 2011-10-22 23:01:43

大家帮我回忆下ret指令的作用,下面是我的记忆,有错的望指出!

本帖最后由 h18755 于 2011-10-23 07:39 编辑

1: call near ptr s 其ret这时相当于pop ip?2: call far ptr s 其retf指令相当于pop ip pop cs?3:执行中断程序 int n其iret指令相当于pop ip pop cs?以上是我记忆模糊的,有错的请指出!望菜鸟别装高手来答,谢谢

老头子学汇编 发表于 2011-10-23 00:58:24

让我这只老菜鸟来回答吧!
第3个有点错了!!!!!!!
-------------------------
cpu收到中断信息后,
(1)取中断类型码n
(2)pushf   ←标志寄存器入栈
(3)TF设置0,IF设置0
(4)push cs
(5)push ip
(6)IP=(N*4),CS=(N*4+2)←跳cs:ip位置执行中断处理程序
------------------------------------------
而 iret 指令相当于:
pop ip
pop cs
popf←标志寄存器出栈
--------------------------------------------------------
希望对你有帮助?

h18755 发表于 2011-10-23 07:37:51

老头子学汇编 发表于 2011-10-23 00:58
让我这只老菜鸟来回答吧!
第3个有点错了!!!!!!!
-------------------------


其实我知道,就是对每个pop ip pop cs 模糊典thanks
页: [1]
查看完整版本: 大家帮我回忆下ret指令的作用,下面是我的记忆,有错的望指出!