我想通过debug来调试使用nasm(不是masm)编译的程序,但是debug默认的将我的程序装载进了073f:0100中,我的数据访问代码就全乱了。
只要知道你是哪个段地址开始的未程序段,然后修改到cs这里,然后在单不运行的程序看看,要查一下debug基本命令表追问
cs能改,但是ip不能改,这就很麻烦。当然最主要的其实是我的程序已经被加载进ip=0100的地址中去了,而我的数据和代码是写在一起的,因为我在写代码的时候是采用变量名的方式寻址的,所以我的代码就永远无法正确寻址。例如我编译过之后的一条汇编指令是mov ax,[02h](原指令是mov ax,),在执行该指令是我的ds和cs指向相同的位置,由于ip不为0,所以我的寻址就出错了。
温馨提示:答案为网友推荐,仅供参考