中断处理程序基本上是系统程序员编写好的,是为操作系统或用户程序服务的。为了在应用程序中使用中断服务程序,程序员必须能够在程序中有目的地安排中断的发生。为此,指令系统提供了各种引起中断的指令。 1、中断指令INT 中断指令INT的一般格式如下: INTImm 其中:立即数Imm是一个0~0FFH范围内的整数。 指令执行的步骤: ◆、把标志寄存器压栈,清除标志位IF和TF; ◆、把代码段寄存器CS的内容压栈,并把中断服务程序入口地址的高字部分送CS; ◆、32位段,压32位IP。 在该指令执行完后,CPU将转去执行中断服务程序。由于有了指令INT,程序员就能为满足某 [阅读全文] [PDF]
当一个中断服务程序执行完毕时,CPU将恢复被中断的现场,返回到引起中断的程序中。为了实现此项功能,指令系统提供了一条专用的中断返回指令。该指令的格式如下: IRET/IRETD 该指令执行的过程基本上是INT指令的逆过程,具体如下: ◆、从栈顶弹出内容送入IP; ◆、再从新栈顶弹出内容送入CS; ◆、再从新栈顶弹出内容送入标志寄存器; 对80386及其以后的CPU,指令IRETD从栈顶弹出32位内容送入EIP。 8.2.4中断和子程序的比较 中断和子程序调用之间有其相似和不同之处。它们的工作过程非常相似,即:暂停当前程序的执行,转而执行另一程序段,当该程序段执行 [阅读全文] [PDF]
1 共2条 分1页
- mysql数据库:MySQL数据库使用有高招
- oracle数据库:Oracle数据库出现的奇怪表名及其清除思路方法
- 在存储过程中拥有"role"权限的特殊性
- oracle四舍五入:ORACLE问题 每天10问( 5)
- oracleexp用法:属性类、对象组、对象库使用方法(Oracle Form6i
- 数据文件导入数据库:数据库运行在非归档模式下 数据文件被误删的
- slackwarelinux:如何选择 Slackware Linux 的 bootdisk/root
- oracle数据库:DB2和Oracle数据库的间的远程复制
- oracle数据库:保持Oracle数据库优良性能的若干诀窍
- linux系统:Linux系统的防病毒方案
- 名词解释:sga中的名词解释
- linqtosql:用日志记录LINQ中的所有增删改的SQL语句的思路方法
- asp.net缓存:ASP.NET缓存Cache策略经验谈
- sql2005连接字符串:SQL2005下字符串字段内的字符排序
- sqlserver数据库:SQLSERVER如何link oracle数据库
- SQL语句:Group By整理总结
- ASP.NET中大文件下载的跟踪和恢复
- javawebservice:将Java程序转换为Webservice
- 运行activex控件:C#实现运行期Control控件设计
- 成员函数指针:类成员函数指针是什么?