ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

44、MS-DOS INT 21h 功能调用详解

44、MS-DOS INT 21h 功能调用详解

MS-DOS INT 21h 功能调用详解

1. 引言

在早期的计算机编程中,MS - DOS 提供了一系列方便的功能调用接口,通过 INT 21h 中断来实现。这些功能涵盖了输入输出、日期时间获取与设置等多个方面,极大地简化了程序员的开发工作。下面我们来详细了解这些功能。

2. INT 21h 基础

INT 21h 中断支持大约 90 种不同的功能,通过将功能号存入 AH 寄存器来选择具体的功能。例如,最早用 Intel 汇编语言写的一个程序,仅用三条指令就在屏幕上显示了一个“*”:

mov ah, 2 mov dl, '*' int 21h

对于一些需要传递 32 位输入参数地址的功能,要将其存储在 DS:DX 寄存器中。若 DS 未指向程序的数据区,可使用 SEG 运算符来设置,示例代码如下:

.data inBuffer BYTE 80 DUP(?) .code mov ax, SEG inBuffer mov ds, ax mov dx, OFFSET inBuffer
3. 进程终止功能(INT 21h Function 4Ch)

INT 21h Function 4Ch 用于终止当前程序(进程)。在实地址模式程序中,常使用 Irvine16 库中的 exit 宏,其定义如下:

exit TEXTEQU <.EXIT>
返回列表