汇编语言中中断INT和子程序调用CALL保护现场时分别压入堆栈的是什么

汇编语言中中断INT和子程序调用CALL保护现场时分别压入堆栈的是什么,第1张

中断INT过程:

1取得中断类型码

2把标志位压入栈中

3把CS压入栈中

4把IP压入栈中

5更改CS和IP,转到中断程序

CALL:将当前IP或者CS和IP压入栈中,到底是把IP还是IP和CS压入栈中。就要看CALL后到底是一个字还是2个字的,如果是一个字的,就只把IP压入栈中,例如CALL AX;如果是两个字,就先把CS压入有栈中,再把IP压入栈中,例如CALL dword ptr 内存单元地址

希望对你有帮助!

关闭中断标识,重要数据入栈, 处理中断服务功能, 数据出栈, 恢复中断标识, 开中断。

初始化中断类型码n对应的中断向量表,指向对应的中断服务程序;中断前要开中断,中断标志I置1。当执行完中断服务程序,当执行到中断子程序最后一条指令IRET时,自动地,先后d出IP、CS、PSW。自动开中断了,并返回到断点处继续往下执行。

以上就是关于汇编语言中中断INT和子程序调用CALL保护现场时分别压入堆栈的是什么全部的内容,包括:汇编语言中中断INT和子程序调用CALL保护现场时分别压入堆栈的是什么、中断处理程序在恢复现场时,断点及FLAGS出栈的顺序是什么、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9874378.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存