待释放的内存和待维持的内存什么意思??

来源:百度知道 编辑:UC知道 时间:2024/06/06 14:53:18
待释放的内存和待维持的内存什么意思??

参 数:AH=4AH
BX=新申请内存的"节"数
ES=被修改的内存块的段地址
调 用:INT 21H
返 回:如果成功,则进位标志CF清零
如果失败,则进位标志CF置1,AX=错误代码
AX=07H 内存控制块被破坏
AX=08H 没有足够内存
AX=09H ES内的段地址无效
这个功能有两个用途,一是在申请内存之前重新划分内存,二是如果第一次申请的内存块大小需要调整也使用这个功能。将"GETMEM.ASM"的"第一个插入点"与"第三个插入点"分别改写成这两小段程序,然后编译生成的可执行文件就能正常运行了。
;***

;***
zseg
zseg 第一个插
mov
mov
sub
mov
int
jc

第三个插
segment
ends 入点:******
bx,zseg
ax,es
bx,ax
ah,4ah
21h
error

入点******

;BX寄存器指向程序结尾的段地址
;AX寄存器送入PSP的段地址
;计算程序占用的内存"节"数据
;重新划分内存

;若出现错误,转ERROR显示错误信息

;定义一个"空"段,以便于计算
;程序的长度(以"节"为单位)
内存是很重要的一种系统资源,可以想象如果一个程序对于内存比较"贪心",只借不还,那将会有什么样的结果。所以当一个程序向DOS申请了内存之后,在结束之前还要把"借"来的内存"还"回去,所谓"好借好还,再借不难"。
释放申请到的内存块可以使用DOS