DOS系统功能调用详解:INT 21H

5星 · 超过95%的资源 需积分: 10 6 下载量 196 浏览量 更新于2024-10-24 收藏 78KB PDF 举报
"DOS软中断功能调用对照表提供了DOS系统功能调用的详细信息,包括功能号、入口参数、出口参数等,便于理解并使用DOS系统调用进行程序开发。" 在DOS操作系统中,软中断是通过INT指令调用特定中断向量来实现系统功能调用的一种方式。INT 21H是最常用的一个DOS系统调用,包含了多种与输入输出、文件操作、系统管理等相关的功能。以下是部分主要功能的详细说明: 1. 功能号00H:程序终止。这个功能用于结束当前程序的执行,其入口参数为程序段前缀PSP。 2. 功能号01H:键盘输入并回显。该功能从键盘读取一个字符并将其回显到屏幕上,读取的字符存储在AL寄存器中。 3. 功能号02H:单字符显示输出。将DL寄存器中的字符输出到屏幕。 4. 功能号03H:COM1输入。从COM1端口读取数据,读取的字符存储在AL寄存器中。 5. 功能号04H:COM1输出。向COM1端口发送数据,数据来源于DL寄存器。 6. 功能号05H:打印单字符。类似于功能号02H,但不涉及段寄存器,直接将DL中的字符输出。 7. 功能号06H:直接控制台I/O。允许更复杂的控制,如读写控制台,DL为FF时表示输入,其他值表示输出。 8. 功能号07H:键盘输入无回显。从键盘获取字符,不回显,结果存入AL。 9. 功能号08H:处理Ctrl-Break或Ctrl-C。当检测到这些特殊键时,读取它们而不会导致程序终止,结果存入AL。 10. 功能号09H:显示字符串。从DS:DX指定的内存地址开始,显示直到遇到'$'为止的字符串。 11. 功能号0AH:字符串输入到缓冲区。从键盘接收用户输入的字符串,存储到DS:DX指定的缓冲区中。 12. 功能号0BH:检查键盘状态。如果键盘有按键被按下,AL返回0,否则返回FF。 13. 功能号0CH:清除键盘缓冲区并执行AL指定的子功能。AL可以是子功能号,例如清空缓冲区、读取键盘状态等。 14. 功能号0DH:磁盘复位,清除文件缓冲区。 15. 功能号0EH:指定当前默认的磁盘驱动器。DL寄存器中的值代表驱动器号,如0代表A驱,1代表B驱。 此外,还有更多高级功能,如设置中断向量(功能号25H)、建立程序段前缀PSP(功能号26H)、获取和设置系统日期与时间(功能号2AH和2BH)、设置磁盘检验标志(功能号2EH)以及获取DOS版本号(功能号30H)等。 通过这些功能调用,程序员可以与DOS系统进行交互,实现诸如读写文件、控制硬件设备、处理用户输入等操作。理解并熟练掌握INT 21H调用对于编写DOS时代的程序至关重要。