是否可以使用leal指令捕获C / C ++数组指针?

时间:2018-10-25 23:47:36

标签: assembly gas

我遇到了GAS的麻烦。 使用Visual C++编译器,我可以在我的汇编块中直接使用C / C ++值。 例如:

int A[2] = {0, 0};

_asm
{
  mov ecx, 2
  lea edi, A
  label1:
  mov [edi], ecx
  add edi, 4
  loop label1
}

此代码将使用Microsoft Visual C ++工具毫无问题地编译,并且数组值将为A[0] == 2A[1] == 1。 所以我的问题是:我可以leal汇编中GCC's GAS的C / C ++数组的起始地址吗?要获得某种效果:

leal %edi, A

0 个答案:

没有答案