当前位置: 代码迷 >> 汇编语言 >> 为什么程序在DEBUG中正常,在window,CMD中无任何显示?该怎么处理
  详细解决方案

为什么程序在DEBUG中正常,在window,CMD中无任何显示?该怎么处理

热度:6743   发布时间:2013-02-26 00:00:00.0
为什么程序在DEBUG中正常,在window,CMD中无任何显示?
请教各位大大:

有一段写显存的程序,是在文本模式的中间输出一段彩色字符串。

在debug中用G命令,执行正常。

但在cmd   窗口,直接运行不正常?

为什么会这样?

------解决方案--------------------------------------------------------
进入debug退出后再运行程序还无法显示结果么?
Windows对于16位程序在CMD下的处理有点怪异。一般需要CMD先从默认936中文页跳到437页才正常起来。
------解决方案--------------------------------------------------------
DEBUG是正宗的纯DOS调试环境,CMD是模拟DOS,CMD下的DEBUG只是DOS下DEBUG环境的一个真子集,有很多功能得不到支持,或者是表明上支持,但执行后却得不到正确的结果。所以在CMD的debug下有很多涉及到设备操作的指令得不到应有的允许结果。我曾经多次在CDM debug下读取物理扇区,结果都不正确,但在DOS debug下却可以读取到正确的数据。因为我读取的是MRB,所以可以很容易的判断读取数据的正确性。我通常把CMD debug看作是一个训练场,使用方便,把DOS debug看作是真实的战场,具有最大的真实性,两者配合使用。
  相关解决方案