这个问题已经在这里有一个答案:
- 什么是MOV(%R11,%r12,1),EDX%的含义是什么? 2个回答
一直致力于在组装任务,并在大多数情况下我明白了装配得很好。 或者也至少不够好这项任务。 但这个MOV语句绊倒了我。 我真的很感激,如果有人可以只解释这MOV语句是如何操作的寄存器值。
MOV(%EBX,%eax中,4),%eax中
PS我不是能够通过基本搜索找到这个特定类型的MOV声明,所以我appologize如果我只是错过了它,我再提出问题。
这个问题已经在这里有一个答案:
一直致力于在组装任务,并在大多数情况下我明白了装配得很好。 或者也至少不够好这项任务。 但这个MOV语句绊倒了我。 我真的很感激,如果有人可以只解释这MOV语句是如何操作的寄存器值。
MOV(%EBX,%eax中,4),%eax中
PS我不是能够通过基本搜索找到这个特定类型的MOV声明,所以我appologize如果我只是错过了它,我再提出问题。
在AT&T组件的完整存储器寻址模式的格式是:
offset(base, index, width)
因此,对于您的情况:
offset = 0
base = ebx
index = eax
width = 4
这意味着该指令是这样的:
eax = *(uint32_t *)((uint8_t *)ebx + eax * 4 + 0)
在C状伪代码。