我在VS中有一个函数,我将一个指针传递给该函数。然后我想将指针存储在寄存器中以进一步操作。你是怎样做的?内联汇编程序获取指针Visual Studio的地址
我已经试过
float __declspec(align(16)) x[16] =
{
0.125000, 0.125000, 0.125000, 0,
-0.125000, 0.125000, -0.125000, 0,
0.125000, -0.125000, -0.125000, 0,
-0.125000, -0.125000, 0.125000, 0
};
void e()
{
__asm mov eax, x // doesn't work
__asm mov ebx, [eax]
}
void f(float *p)
{
__asm mov eax, p // does work
__asm mov ebx, [eax]
}
int main()
{
f(x);
e();
}
这的确行得通。对不起,我的问题实际上是我无法将指针加载到全局数组指针。你可以试试吗?我不想在栈上传递指针。 – Joe 2010-06-03 15:20:47
不用担心。总之,使用LEA而不是MOV。我加入了答案。 – 2010-06-03 17:17:36