DOS下调用INT 21申请内存的问题。。。

Sime507 2007-01-13 12:42:25
我的程序:
sub ax, ax
mov bx, 0ffh
mov ah, 48h
int 21h

debug调试,AX返回0008H,BX返回0007H。
为什么申请失败?
...全文
263 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
alan001 2007-10-15
  • 打赏
  • 举报
回复
了解一下,

单独在DOS下运行看看
Yofoo 2007-10-10
  • 打赏
  • 举报
回复
bx, 0ffh 当BX = 0FFh
int 21 实际返回的是可用内存的最大数目: BX:0007

7*64K = 448K
zara 2007-01-13
  • 打赏
  • 举报
回复
AX=08: 内存不足. 这是由于 debug(dos) 在加载程序后, 会根据一般程序的要求将所有可用的内存块分配给这个程序. 所以, 如果在程序中要进行内存分配操作的话, 必须首先由程序自己根据自己的需要, 释放多余的内存. 然后, 系统才能有可被分配的空闲可用内存供接下来的内存分配申请使用.

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧