20

我是学习汇编语言的新手,我想知道命令的int 21h含义。例如:

 mov ah,01h
 int 21h

应该从用户那里读取一个密钥。

4

3 回答 3

36

int 21h意思是,调用中断处理程序 0x21,它是 DOS 函数调度程序。“mov ah,01h”将 AH 设置为 0x01,这是中断中带有 Echo 处理程序的键盘输入。看:

http://spike.scu.edu.au/~barry/interrupts.html

于 2011-06-09T13:42:52.517 回答
7

INT 21H 会产生软件中断 0x21(十进制的 33),导致中断表中第 34 个向量指向的函数被执行,这通常是一个 MS-DOS API 调用。

于 2014-04-28T12:21:52.243 回答
0

这仅仅意味着您正在使用中断类型 21 的函数 01h ... 其中 01h 正如您所说的从标准输入读取字符,使用回显,结果存储在 AL 中。如果键盘缓冲区中没有字符,该函数将一直等待,直到按下任何键。它属于各种中断表的 21h 类型,因此代码行就像您提到的那样。

于 2017-04-24T02:03:36.910 回答