MS-DOS函数调用:全面解析与实践
1. MS-DOS函数调用概述
MS-DOS为在控制台显示文本提供了许多易于使用的函数,这些函数都属于通常所说的INT 21h MS-DOS函数调用组。该中断支持约200种不同的函数,通过放置在AH寄存器中的函数编号来识别。
部分函数要求将输入参数的32位地址存储在DS:DX寄存器中。DS是数据段寄存器,通常设置为程序的数据区域。若因某些原因不是这种情况,可使用SEG运算符将DS设置为包含传递给INT 21h的数据的段。示例代码如下:
.data
inBuffer BYTE 80 DUP(?)
.code
mov ax, SEG inBuffer
mov ds, ax
mov dx, OFFSET inBuffer
2. INT 21h Function 4Ch:终止进程
INT 21h Function 4Ch用于终止当前程序(即进程)。在实地址模式程序中,可使用Irvinel6库中名为exit的宏定义,其定义为:
exit TEXTEQU <.EXIT>
在16位程序中,.EXIT生成的代码如下:
mov ah, 4Ch ; 终止进程
int 21h
若为.EXIT宏提供可选的返回码参数,汇编器会生成一条额外的指令将返回码移动到AL:
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



