debug的u指令为什么看到的范围是0-ffff只有一个64k,不应该是16个64k大小吗?

llkjkk 2011-01-03 08:47:45
>debug
-u ffff
可以看到一行内容(似乎已经到了最后)

如果我
-d 10001或者
-u 10001就会出现

-d 10001
^Error

这样的提示。 我的问题是,dos程序的段,难道就只有一个吗? debug分明是debug.exe而不是一个debug.com啊?
这是为什么?
...全文
133 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
masmaster 2011-01-03
  • 打赏
  • 举报
回复
debug只能显示16位地址。
debug.exe并不意味着他是32位程序。
leetow2003 2011-01-03
  • 打赏
  • 举报
回复
因为debug是调式16位代码的,而16位代码的地址是用段:偏移地址来表示的,段和偏移地址都是用16位(4个16机制的数),即0000到FFFFh,也就是说16位地址可以是0:0到FFFF:FFFF,所以-d 10001与-u 10001都是错误的;

dos程序的段可以用数据段、堆栈段和代码段,有时还有附加段;

21,459

社区成员

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

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