首页 > 其他分享 >函数【返回值】

函数【返回值】

时间:2023-03-18 20:47:54浏览次数:44  
标签:函数 8B 存入 EAX 寄存器 返回值 4B

0. 本文结构概述

  1. 若函数无返回值,默认为int类型
  2. 返回值小于4B,存入寄存器EAX中
  3. 返回值大于4B小于8B,存入寄存器EAX和EDX中
  4. 返回值大于8B放入栈区的临时空间

1. 若函数无返回值,默认为int类型

image

2. 返回值小于4B,存入寄存器EAX中

image

3. 返回值大于4B小于8B,存入寄存器EAX和EDX中

image

4. 返回值大于8B放入栈区的临时空间

将所有参数入栈后,最后将一个临时空间地址入栈,当被调函数返回前,会将返回值存入临时空间,将临时空间的地址存入寄存器EAX中返回给主调函数。

image

标签:函数,8B,存入,EAX,寄存器,返回值,4B
From: https://www.cnblogs.com/qinghuan190319/p/17231690.html

相关文章

  • 如何理解strcpy函数中的赋值语句?
    关于strcpy函数的赋值语句如何理解while(*s++=*t++)?voidstrcpy(char*s,char*t){while(*s++=*t++);}该语句等价于while(*(s++)=*(t++))。赋值......
  • webpack原理(3):Tapable源码分析及钩子函数作用分析
    webpack本质上是一种事件流的机制,它的工作流程就是将各个插件串联起来,而实现这一切的核心就是Tapable,webpack中最核心的负责编译的Compiler和负责创建bundles的Compilation......
  • 再谈编程范式(3):理解面向过程/面向对象/函数式编程的精髓
    面向过程(PO)面向过程是随着VB一起来到我的世界,那个时候会的非常有限,感觉能把程序写出来自己就非常棒了,VB是做那种可视化界面,在工具栏拖个框框放到面板上,然后就在各个事件上写......
  • 再谈编程范式(3):理解面向过程/面向对象/函数式编程的精髓
    面向过程(PO)面向过程是随着VB一起来到我的世界,那个时候会的非常有限,感觉能把程序写出来自己就非常棒了,VB是做那种可视化界面,在工具栏拖个框框放到面板上,然后就在各个事件上......
  • 反汇编strlen函数
    0.本文结构概述strlen库函数实现原理公式分析(变换形式)计算步骤分析(有些繁琐,后续会修改优化)C语言实现该函数汇编语言实现该函数1.strlen库函数实现原理使用VS2......
  • webpack原理(3):Tapable源码分析及钩子函数作用分析
    webpack本质上是一种事件流的机制,它的工作流程就是将各个插件串联起来,而实现这一切的核心就是Tapable,webpack中最核心的负责编译的Compiler和负责创建bundles的Compilation......
  • VBA函数
    space(8)加空格vbcrlf换行trim()去掉两侧空格lrim()去掉左侧空格rtrim()去掉右侧空格left()right()mid()int()整除mod()取余row()column()setsh=nothingForm......
  • 使用chatgt(GPT-4)将过程式(的java代码)改成函数式(的elixir代码)
    天啦噜太可怕了,之前我还嘲笑chatgpt不会小众语言来着。chatgt(GPT-4)在接收2次prompt后,把过程式(的java代码)改成了函数式(的elixir代码),给出的Elixir代码可以不经修改直......
  • c++常用STL库及常用函数
    临近各种算法比赛,相信很多人想笔者一样还总是记不住很多函数的用法,特此总结一下常用的STL标准库以及标准函数,希望能够有所帮助。1.输入输出输入输出一般用两个标准库:#i......
  • 多元函数驻点与极值点关系
    驻点与极值点(一元)链接多元极值点f(\(x_0\),\(y_0\))>f(x,y)就为极大值,小于为极小值多元驻点也不一定是极值点xy极值点也不一定是驻点|x|+|y|在(0,0)点因为|x|+|y|......