C++内联汇编常见问题.md
约 138 字
预计阅读 1 分钟
次阅读
定位
1
2
3
4
5
6
7
8
9
10
|
{
__asm
{
mov edx,edx
mov edx,edx
mov edx,edx
...
}
}
|
不可直接传值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
{
__asm
{
mov eax,[0x01] //错误,不可直接传值
//方法1
mov eax,0x01 //需要通过寄存器来传值
mov eax,[eax]
//方法2
mov eax,dword ptr ds:[0x01]
}
}
|
传局部变量的地址
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
{
int b =1;
int* a = &b;
DWORD c = (DWORD)a;
__asm
{
pushad
push c
...
popad
}
}
|