如何通过x86程序集访问整数数组中的元素? 我当前的代码显示了我要做的事情:
int arr[3]{0,6,8};
__asm
{
mov eax, [arr+1*4] // access value "6" in the array and put it in eax
}
eax显示" 0F5CA9A1"根据需要而不是6
答案 0 :(得分:0)
以下代码适用于VS 2013:
int array[] = { 10, 20, 30 };
int idx0, idx1, idx2;
__asm {
mov eax, [array + 0 * 4]
mov idx0, eax
mov eax, [array + 1 * 4]
mov idx1, eax
mov eax, [array + 2 * 4]
mov idx2, eax
}
printf("%d %d %d\n", idx0, idx1, idx2);
<强>输出:强>
10 20 30