1.push参数(64位cpu 任性使用寄存器)
2.call指令调用(将下一条指令地址入栈)
3.保护bp寄存器,将sp赋值给bp
4.提升sp指针,作为局部变量空间(sp 减去值)
5.保护寄存器
6.业务逻辑
7.恢复寄存器
8.恢复sp(sp->bp/sp 加上值)
9.恢复bp(pop bp)
10.返回(ret)//看情况
1.push参数(64位cpu 任性使用寄存器)
2.call指令调用(将下一条指令地址入栈)
3.保护bp寄存器,将sp赋值给bp
4.提升sp指针,作为局部变量空间(sp 减去值)
5.保护寄存器
6.业务逻辑
7.恢复寄存器
8.恢复sp(sp->bp/sp 加上值)
9.恢复bp(pop bp)
10.返回(ret)//看情况
本文标题:函数的调用流程
本文链接:https://www.haomeiwen.com/subject/lneakftx.html
网友评论