重点:
函数有两个概念(压栈顺序和计算顺序)
压栈顺序知识点
1.栈是先进后出的结构
2.ebp:基地址寄存器 (栈底)
esp:栈指针 (栈顶)
3.栈底到栈顶的内存地址是由高到低。就是10->1。
创建一个函数,函数压栈的顺序是从右往左,先压b,然后再a。
原因是两个
1.出栈的时候就可以按顺序获取a、b。
2.针对可变参数函数(这个需要好好研究,目前不确定,等搞汇编后再看看)
计算顺序知识点
1.计算顺序是根据编译器的设定,不同的编译器的计算顺序不同。
vs是根据压栈顺序进行计算的。