???????д???????????????????????????????????βΡ?????????????????????????????£??????????????????????????????????????饗?????????????и?????????
??????????????????????????????????ж??????????ο?http://blog.csdn.net/vurteon/article/details/8939282
??????????????????
????1??????????????????????????????е???????????????????????????С???????????????????????????????????????????????????????????
????2????????????????????????????????????????????????????????????????????????????????????
???????????е??????????е?????Щ????????????????????????????????????????????????в???????????????????????????????????FILO?????????????????????????????????
??????????????????????????????????????????????洢?????в??????????????????????????????????????????????????????????esp???檔??????е??????????????λ???????????????κ???????????а???????κ????????е??β?????Щ????????????????????????ebp?????????????????????Щ???????????????????м?????????κ?????????????????????????????????????????????????????????????????????е??????
??????????????????????????ú?????????????????????У?????????У??????????????????????????????????????????????????????????????????????????ж?????ж????????е????????????????????????????λ?????????????????????????????????????????????????С???????????????????????λ???????????з??????
????????????????????????????????????????????????????????????????????????Щ???С????????????????????????????????????????????---????????????????ebp??????????????????????????????з????
??????????????????????
???????????????
int add(int a?? int b){
int  c = a + b;
return c;
}
??????????????
????Int x = add(5??7);
?????????????GCC??????????????????
8048459: movl $0x7??0x4(%esp) //??????7???esp + 4??????
8048461: movl $0x5??(%esp) //??????5д??esp?????
8048468?? call 8048434 //????8048434????????
804846d: mov %eax??-0x8(%ebp) //??eaxд??ebp-8??????
????????????????????????
8048434: push %ebp //??????????????
8048435: mov %esp??%ebp //??esp????????ebp
8048437: sub $0x4??%esp //????????4
804843a: mov 0xc(%ebp)??%eax //??ebp + 12?????????????eax?????
804843d: add 0x8(%ebp)??%eax //??ebp + 8????????????eax?е?????
8048446: leave //????????????????esp??ebp???
8048447: ret /./?????????