|
发表于 2017-11-24 23:59:27
|
显示全部楼层
本帖最后由 兰陵月 于 2017-11-25 12:27 编辑
1、你运行了3.EXE文件后,出现了这些没有意义的ASCII码。表明,这是程序运行时发生了错误,这并不是DosBox出现了问题。
2、你只贴了那么个图片,源程序3.asm没贴出来,所以源程序到底是什么错误,我们也无从得知,建议贴出来。
3、如果你源程序有显示ASCII码的代码,比如向段地址0xB800开始的地方(代表屏幕输出的显存位置)输入ASCII码,那出现这种乱码的情况很有可能是读取的字符串源地址或者输入的目标地址不正确导致的。
4、如果你源程序中,没有显示ASCII码的指令,那有可能是因为你编写错误,导致编译器编译出了一条或者多条向段地址0xB800处的内存区域输入ASCII码的指令,因而产生如此多乱码。
总之,你运行之后出现了这些玩意,那肯定是向显存区域输出了一些什么东西,不管这个输出是否出于你的本意。
另外,你运行3.exe之后,最终是否返回到命令提示符下?如果返回到了命令提示符下,那对于处理器来说,这个程序是正常运行的,因为它执行了,结束了,并没有陷入无休止的死循环或者超级巨量运算导致死机的情况。发生错误的根源是源程序编写上的逻辑错误。
|
|