Java教程

汇编语言程序设计(十三)int指令

本文主要是介绍汇编语言程序设计(十三)int指令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录
  • 由int指令引发的内中断
  • BIOS和DOS中断例程的安装过程
  • BIOS中断例程应用
  • DOS中断例程应用

由int指令引发的内中断

  • 格式: int n, n为中断类型码,int指令的作用是引发中断过程。cpu执行int n指令的执行过程如下:
    ** 取中断类型码n
    ** 标志寄存器入栈,IF=0, IF=0
    ** CS、IP入栈
    ** (IP) = (n * 4), (CS) = (n*4 + 2)

  • 可以在程序中使用int指令调用任何一个中断的中断处理程序,即int指令和call指令作用相似,都是调用一段程序,只是int指令调用的是中断处理程序。

  • 系统可以将一些具有一定功能的子程序,以中断处理程序的方式提供给应用程序调用,在编程时可以使用int指令来调用这些子程序,也可以自己编写一些中断处理程序供别人使用。

  • 中断处理程序也叫中断例程。

BIOS和DOS中断例程的安装过程

  • 开机后,CPU加电,初始化(CS) = 0FFFFH,(IP) = 0,自动从FFFF:0单元开始执行程序。FFFF:0处有一条跳转指令,CPU执行该指令后,转去执行BIOS中的硬件系统检测和初始化程序。
  • 初始化程序将建立BIOS所支持的中断向量,即将BIOS提供的中断例程的入口地址登记在中断向量表中。
  • 硬件系统检测和初始化完成后,调用int 19h进行操作系统的引导,从此将计算机交给操作系统控制。
  • 这里的操作系统是DOS,DOS启动后,除了完成其它工作外,也建立它的中断向量,将其所提供的中断例程装入内存。

BIOS中断例程应用

  • int 10h中断例程是BIOS提供的中断例程,其中包含了多个和屏幕输出相关的子程序。
  • 一般来说,一个供程序员调用的中断例程通常包括多个子程序,使用传进来的参数来决定执行哪一个。比如BIOS和DOS提供的中断例程,都是用寄存器ah来传递内粗子程序的编号。

DOS中断例程应用

  • int 21h中断例程是DOS提供的中断例程,其中包含了DOS提供给程序员在编程时调用的子程序。
  • (ah)=4ch表示调用第21h号中断例程的4ch号子程序,功能为程序返回,可以提供返回值作为参数。
这篇关于汇编语言程序设计(十三)int指令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!