灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2336回复:0

内存分配功能(Memory-Allocation Function)

楼主#
更多 发布于:2012-09-10 18:55

48H ―分配内存

49H ―释放内存块

4AH ―重定义内存块的大小

58H ―读取/设置内存分配策略

(1)、功能48H

功能描述:分配一块内存单元,并返回该块内存单元的首地址

入口参数:AH=48H

BX=需要申请的内存单元字节数

出口参数:CF=0――分配成功,AX=存储单元的首地址,否则,AX=错误号(07H或08H),其含义见错误代码表,BX=还可用的最大块数

(2)、功能49H

功能描述:释放内存单元块以便为其它程序使用

入口参数:AH=49H

ES=被申请块的段地址

出口参数:CF=0――释放成功,否则,AX=错误号(07H或09H),其含义见错误代码表

(3)、功能4AH

功能描述:根据程序的需要,动态地改变一个内存块

入口参数:AH=4AH

BX=需要一个新存储块的大小

ES=被修改块的段地址

出口参数:CF=0――修改成功,否则,AX=错误号(07H、08H或09H),其含义见错误代码表,BX=可用最大块的大小

(4)、功能58H

功能描述:读取/设置内存分配策略

入口参数:AH=58H 读取内存分配策略AL=00H

设置内存分配策略AL=01H

BX=内存分配策略代码:

   00H―第一满足

   01H―最好满足

   02H―最后满足

出口参数:CF=0――操作成功,AX=已选用的内存分配策略代码(含义如上说明),否则,AX=错误号(01H),其含义见错误代码表

喜欢0 评分0
游客

返回顶部