当前位置: 代码迷 >> 汇编语言 >> 怎么调试DOS下的.com文件
  详细解决方案

怎么调试DOS下的.com文件

热度:3203   发布时间:2013-02-26 00:00:00.0
如何调试DOS下的.com文件
我用NASM写了个.COM文件,想调试下,看它的执行过程,开始想用softice调试下看看,发现softice不支持.com文件,
怎么调试这种格式的文件啊,哪位知道,谢了!

------解决方案--------------------------------------------------------
softice 支持的吧? dos 下的 softice 不别说了, Windows 下的是先进入到 dos 命令行窗口下, 再进入到 softice 目录下有个类似 utl16 的目录, 具体名字记不清了, 看下就知道的, 其中有个 dldr 的程序, 通过它来对 dos 类的程序进行调试
------解决方案--------------------------------------------------------
汇编的话, 即便是没有源程序级的, 关系也不大吧. 其实, 即使是高级语言的, 看过几个, 熟悉了程序的大致结构, 没有源程序也是可以对付的
------解决方案--------------------------------------------------------
上面的那段代码计算的是视频缓冲区中的位置吧, 80字符/行文本模式的.
edi 就是这个位置. 先除以 160, 就是返回当前行号在 AL 中 (由 0 行起); 增 1 就是指向下一行了; 接着再乘以 160 就是这个下一行的 0 列字符在视频缓冲区中的位置了. 这样, 就是获得了下一行行首, 实现了回车换行的功能.
------解决方案--------------------------------------------------------
楼主看的是《自己动手写操作系统》那本书吧,书上很多东西都没写明白。调试.com程序用TD啦,挺方便的。另外实模式切换到保护模式在DOS用TD是不能调试的。但是可以用Bochs调试。

  我也在看那本书,有空多交流交流哦。
  相关解决方案