【笔记】【汇编语言】第13章 int指令

13.1 int指令
  指令格式: int n
  指令功能: n 是中断类型码,该指令用于引发中断过程.执行过程如下,
  (1) 取得中断类型码 n
  (2) 标志寄存器入栈,IF=0,TF=0
  (3) CS,IP入栈
  (4) (IP)=(n*4),(CS)=(n*4+2)
 
  注:一般情况下,系统将一些具有一定功能的子程序,以中断处理程序的方式提供给应用程序调用.
 
13.2 编写供应用程序调用的中断例程
  注:中断例程,要添加iret做返回.即
    pop IP
    pop CS
    popf
    
  注2:中断例程中用到寄存器要注意保存和恢复
 
13.3 对int,iret和栈的深入理解
  问题:用7ch中断例程完成loop s指令的功能
  要点:利用CPU处理中断时会将CS,IP等信息入栈,利用栈上的地址来计算
 
13.4 BIOS和DOS提供的中断例程
  BIOS主要包含以下几部分内容:
  (1) 硬件系统的检测和初始化程序
  (2) 外部中断和内部中断的中断例程
  (3) 用于对硬件设备进行IO操作的中断例程
  (4) 其他和硬件系统相关的中断例程
  操作系统DOS也提供了中断例程,从操作系统的角度看,DOS的中断例程就是操作系统向程序员提供的编程资源.
  和硬件操作相关的DOS中断例程,一般都调用BIOS的中断例程.
  这些中断例程都可以直接通过int指令来调用.
 
13.5 BIOS和DOS中断例程的安装过程
 
13.6 BIOS中断例程的应用
  一般来说,一个供程序调用的中断例程往往包括多个子程序,中断例程内部用传递进来的参数来决定执行哪一个子程序.
  BIOS和DOS提供的中断例程,都用ah来传递内部子程序的编号.
  如: int 10h
 
13.7 DOS中断例程应用
  例: int 21h
  其中:4ch 号功能,程序返回,可以提供返回值作为参数;
 
实验13 编写,应用中断例程
  略

 
 

posted @ 2012-07-07 18:41  Azik  阅读(425)  评论(0编辑  收藏  举报