为什么Evan的调试器说我要使用eax而不是rax? [英] Why does Evan's Debugger say that I'm moving to eax instead of rax?

查看:150
本文介绍了为什么Evan的调试器说我要使用eax而不是rax?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在将一些值移到rax,但是调试器显示它正在移到eax.怎么了是用调试器,nasm还是我的知识?无论如何,当然,代码运行良好.我正在使用的调试器是Evan的调试器.

I'm moving some values to rax but debugger is displaying that it's moving to eax. What's the matter with it? Is it with the debugger, nasm or with my knowledge? Anyway of course code is working perfectly. The debugger I'm using is Evan's Debugger.

推荐答案

简而言之,您和调试器都是正确的.

In a nutshell, both you and the debugger are correct.

将某些内容移到RAX时,这会影响RAXEAXAXALAH,因为它们指的是相同64位的各个子集:

When you move something to RAX, this affects RAX, EAX, AX, AL and AH as they refer to various subsets of the same 64 bits:

  • ALAX的低8位(AH是高8位).
  • AXEAX的低16位.
  • EAXRAX的低32位.
  • AL is the lower 8 bits of AX (AH is the upper 8 bits).
  • AX is the lower 16 bits of EAX.
  • EAX is the lower 32 bits of RAX.

这篇关于为什么Evan的调试器说我要使用eax而不是rax?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆