【问题标题】:Why would x86 not let me run this instruction mov [r8], [rax] [duplicate]为什么 x86 不允许我运行这条指令 mov [r8], [rax] [重复]
【发布时间】:2022-01-18 21:12:00
【问题描述】:

汇编命令 mov [r8], [rax]

另外,在计算机系统中,中断会给您带来什么?如果您没有打扰,您的其他选择是什么?

【问题讨论】:

  • 请不要在一篇文章中问两个不相关的问题。

标签: x86


【解决方案1】:

mov 不能用于将数据内存移动到内存:请参阅this 以了解与mov 操作码的所有可能组合。

你可以这样做:

mov rax, [rax]
mov [r8], rax

您的代码还包含第二个缺陷: mov [r8], [rax]不注明操作大小。

【讨论】:

  • 另一种将 1、2、4 或 8 个字节从r8 寻址的内存复制到rax 寻址的内存的另一种方法是mov rsi,r8 mov rdi,rax,然后是movsb,@ 987654331@、movsdmovsq..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-05
  • 2012-08-27
  • 1970-01-01
  • 2012-08-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多