汇编语言中的CS与IP寄存器的值怎么不是变化的?
最近看了王爽的汇编语言,其中说到了CS和IP寄存器,这两个寄存器组合可以找到当前指令的地址。我的理解是这样的,电脑在工作的时候,只要CUP在工作,那么就在执行大量的指令,...
最近看了王爽的 汇编语言,其中说到了CS和IP寄存器,这两个寄存器组合可以找到当前指令的地址。我的理解是这样的,电脑在工作的时候,只要CUP在工作,那么就在执行大量的指令,那么这个cs与ip寄存器的值会不断的变化,为什么我是在debug中使用-r命令查看时,发现CS与IP都是一样的。
有人给我解释下吗? 展开
有人给我解释下吗? 展开
3个回答
展开全部
你这问题还真有点意思,当时我也没去注意过这问题。留个名,看看大牛怎么回答。
但个人的理解是作为WINDOWS这么庞大的一个系统,CS,IP只是作为应用程序的一个指向。其上还有一层SHELL对其进行控制。更深入的微软也不会让你看到。所以你现在并没指向要运行的程序,只是单纯地查看寄存器,CS,IP的值当然不会改变。
但个人的理解是作为WINDOWS这么庞大的一个系统,CS,IP只是作为应用程序的一个指向。其上还有一层SHELL对其进行控制。更深入的微软也不会让你看到。所以你现在并没指向要运行的程序,只是单纯地查看寄存器,CS,IP的值当然不会改变。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,我很理解你的问题,你需要通过t命令执行一下程序之后,你就会发现IP的值发生改变。cs:ip指向下一条要执行的指令地址。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |