段寄存器cs:ip的问题
在windows下,debug -r可以显示寄存器的状态,问题是我每次执行-r后cs:ip都不变,为什么?cs:ip存的不是cpu当前要读取指令的地址吗,为什么cs:ip不变呢 windows,虚拟地址。 DEBUG好像只是用来调试16位的DOS程序的。现在一般用WINDBG了。
另外,楼主用DEBUG调试的什么程序?在2次-R 之间有没有让程序跑几步?你的CS:IP的值是多少? 用t命令跟踪的时候, CS:IP的地址才会发生变化 原帖由 suntoltti 于 2009-10-6 11:37 发表 http://linux.chinaunix.net/bbs/images/common/back.gif
在windows下,debug -r可以显示寄存器的状态,问题是我每次执行-r后cs:ip都不变,为什么?
cs:ip存的不是cpu当前要读取指令的地址吗,为什么cs:ip不变呢
你没了解DEBUG。
DEBUG启动完毕后,就处于等待你键入命令的状态。你输入一个命令,它执行完后,又回到那个等待状态。都是这个等待命令状态,当然在DEBUG代码里是同一点,CS:IP还是那个值。
在跟踪状态,CS:IP显示的,不是DEBUG代码的某个点,而是被你调试的代码的某个断点。你一步一步的跟踪,它自然一步一步地变。
页:
[1]