这是啥意思 x86 汇编代码是啥意思? [复制]

Posted

技术标签:

【中文标题】这是啥意思 x86 汇编代码是啥意思? [复制]【英文标题】:what does this mean x86 assembly code mean? [duplicate]这是什么意思 x86 汇编代码是什么意思? [复制] 【发布时间】:2019-05-31 13:28:57 【问题描述】:

我遇到了我不理解的 x86 汇编代码,也找不到任何关于它的信息。我不明白的代码是寄存器 ecx 周围的括号:movb (%ecx),%al。这段代码是什么意思?我熟悉寄存器和指令,但从未接触过。

我试图在视频和指南中找到一些关于它的东西,但没有找到任何东西。

在上下文中看起来像这样

pushl %ebp 
movl %esp,%ebp 
movl 8(%ebp),%ecx 
...
movb (%ecx),%al  #<-- the code i am wondering about

【问题讨论】:

它指的是寄存器中保存的内存地址,就像解引用一样。 【参考方案1】:

语法(%reg) 是AT&T 汇编器语法,用于将寄存器的内容解引用为地址。相当于 Intel 语法[reg]

您所拥有的是将部分寄存器%al 中的值写入%ecx 中的地址所指向的字节中。

【讨论】:

以上是关于这是啥意思 x86 汇编代码是啥意思? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

MSVC 内联汇编中的“拒绝”是啥意思

汇编指令JMP是啥意思?

汇编指令JMP是啥意思?

“?”是啥意思?在 Erlang 中是啥意思? [复制]

asm指令是啥意思

x86 asm中的括号是啥意思?