版块
论坛
喜欢
话题
应用
搜索
登录
注册
ysy的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=16494
To pjf 增加我自己的中断的问题
我修改了,中断描述符表的第36号,使他指向我的中断处理例程,DPL为3,我的中断例程里面就只有一条指令 iret。我的应用程序如下int main(){_asm int 36ret 0;}softice观察,进到了我的中断例程,可是执行iret的时候,protection fau...
全文
回复
(
6
)
2002-06-27 10:36
来自版块 -
内核编程
◆
◆
表情
告诉我的粉丝
提 交
yanghui
:
pjf兄说的不错,很多汇编器将iret和iretd统一用iret表示,具体是16位操作数还是32位操作数,看当时的运行环境,诸如是实模式还是保护模式,是从v86模式返回还是返回到v86模式,有无进行任务的切换等等,详细说明可以看看intel的软件开发手册第二卷,对于你这种情况,应...
(2002-06-27 16:03)
回复
pjf
:
很多编译/汇编器在32为环境将IRET译码成16的兼容形式(即加上了操作数前缀),因而要写为对应的IRETD(就是32环境的IRET)
(2002-06-27 12:59)
回复
Nouk
:
你的IRET生成的机器码是什么?不会是66 CF吧?呵呵 IRETD 改了再说,还不对的话就要看看你前面是不是把stack搞乱了。 What is IRETD?? Thx
(2002-06-27 12:55)
回复
ysy
:
好了,果真如此!
(2002-06-27 11:16)
回复
ysy
:
我看看!
(2002-06-27 11:03)
回复
pjf
:
你的IRET生成的机器码是什么?不会是66 CF吧?呵呵 IRETD 改了再说,还不对的话就要看看你前面是不是把stack搞乱了。
(2002-06-27 10:42)
回复
ysy
加关注
写私信
0
关注
0
粉丝
379
帖子
返回顶部