|
一、几个简单的调用例子 一般调用的中断例程中包含多个子程序,中断例程内部用传递进来的参数决定执行哪一个子程序。BIOS 和 DOS 提供的中断例程,都用 ah 来传递内部子程序的编号。
int 10h 号中断例程 2 号子程序,功能为设置光标位置。可以提供光标所在的行号、列号,页号作为参数。如
mov ah,2
mov bh,0 ;第 0 页
mov dh,5 ;放行号
mov dl,12 ;放列号
int 10h int 10h 号中断例程 9 号子程序,功能为在光标位置显示字符,可以提供要显示的字符,颜色属性,页号,字符重复个数作为参数。如:mov ah, 9 ;置光标 mov al, 'a' ;字符
mov bl, 7 ;颜色属性
mov bh, 0 ;第 0 页
mov cx, 3 ;字符重复个数
int 10h int 21h 号中断例程 9 号子程序,在光标位置显示字符串:
ds:dx ;指向字符串,要显示的字符串用'$'作为结束符
mov ah,9 ;功能号 9 ,表示在光标位置显示字符串 二、int 指令在执行的时候,CPU进行了哪些工作? (1) 取中断类型玛 n ;
(2) 标志寄存器入栈;
(3) IF = 0, TF = 0;
(4) CS,IP 入栈
(5) (IP) = (n*4),(CS)=(n*4+2)
|
|