#include
using namespace std;
int myfunction(int a,int b)
{
return a+b;
}
int main()
{
int a=3,b=4;
cout<<"a+b="<<myfunction(a,b);
}
我用codeBlocks写了简单的程序然后disassembly结果成这样了
00401318 push %ebp
00401319 mov
%esp,%ebp
0040131B mov
0xc(%ebp),%eax
0040131E mov
0x8(%ebp),%edx
00401321 lea
(%edx,%eax,1),%eax
00401324 leave
00401325 ret
这里的这3行不明白
0040131B mov
0xc(%ebp),%eax
0040131E mov
0x8(%ebp),%edx
00401321 lea
(%edx,%eax,1),%eax
那位大侠解释解释啊
具体 0xc(%ebp),
0x8(%ebp),
(%edx,%eax,1),这3个意思是什么?
|