main()函数使用该语句设置返回值0


****核心原理学习笔记(二十三):栈帧10:设置返回值,删除栈帧&main()函数终止


XOR a,a  即计算两个相同的值,结果为0


因为计算速度比MOV EAX,0  速度快,所以通常永XOR对寄存器进行初始化操作



****核心原理学习笔记(二十三):栈帧10:设置返回值,删除栈帧&main()函数终止



最终主函数终止运行,同add()函数一样,返回前要先从栈中删除与其对应的栈帧



****核心原理学习笔记(二十三):栈帧10:设置返回值,删除栈帧&main()函数终止


执行上图所示的命令后,main函数的栈帧就会被删除


****核心原理学习笔记(二十三):栈帧10:设置返回值,删除栈帧&main()函数终止


执行完后,栈内情形如图所示。


随后函数执行到了401057这个地址,这是VC++的启动函数的地方



一直执行,便到了程序终止的地方,程序结束****核心原理学习笔记(二十三):栈帧10:设置返回值,删除栈帧&main()函数终止






相关文章:

  • 2021-11-15
  • 2021-05-04
  • 2021-08-18
  • 2021-10-23
  • 2021-12-01
  • 2022-03-08
  • 2021-07-23
猜你喜欢
  • 2021-04-26
  • 2021-09-19
  • 2022-01-19
  • 2021-05-04
  • 2022-01-02
  • 2022-01-05
  • 2022-12-23
相关资源
相似解决方案