美文网首页
程序的机器级表示之过程调用

程序的机器级表示之过程调用

作者: 我就是我啊 | 来源:发表于2018-11-11 22:05 被阅读0次

过程调用的执行步骤(p为调用者,q为被调用者)

(1)p将入口参数(实参)放到q能访问到的地方

(2)p保存返回地址,然后将控制转移到q;使用call指令 ---p过程

(3)q保存p的现场,并为自己的非静态局部变量分配空间; ---q过程准备阶段

(4)执行q的过程体(函数体); --q过程处理阶段

(5)q回复p的现场,释放局部变量空间;

(6)q取出返回地址,将控制转移到p。 使用ret指令 -- q过程结束阶段

现场:通用寄存器的内容

为何要保存现场:因为所有的过程共享一套通用寄存器

相关文章

  • 程序的机器级表示之过程调用

    过程调用的执行步骤(p为调用者,q为被调用者) (1)p将入口参数(实参)放到q能访问到的地方 (2)p保存返回地...

  • 程序的机器级表示之过程调用2

    一个c过程的大致过程如下: --准备阶段 1.形成帧底:push指令和mov指令 2.形成栈帧(如果需要的...

  • 程序的机器级表示

    在计算机系统中,程序的运行离不开CPU、内存等之间的协作。而在CPU中, 其内部的寄存器起到了十分重要的作用,有...

  • 程序的机器级表示

    计算机系统使用了多种不同的抽象,利用简单的抽象模型来隐藏实现的细节。对于机器级编程来说,其中两种抽象尤为重要。第一...

  • 程序的机器级表示

    本文是对《深入理解计算机系统》第3章的一些总结。 什么是机器级程序机器级程序只是一系列的字节序列,由多条指令组成,...

  • 程序的机器级表示

    计算机执行机器代码,用字节序列编码低级的操作,包括处理数据、管理存储器、读写存储设备上的数据,以及利用网络通信。编...

  • 第三章:程序的机器级表示

    程序的机器级表示 程序编码 机器级代码 数据格式 字word表示16位数据类型,32位数为双字double wor...

  • 笔记 | 计算机系统基础:05-按值传递和按地址传递为什么不同?

    上一篇《笔记 | 袁春风《计算机系统基础》:04-函数调用时发生了什么?》详细介绍了函数调用过程对应的机器级表示。...

  • 2,程序的机器级表示

    一, 编译使用命令 1, 汇编命令 2, intel 汇编指令 3, 反编译 命令 二, 汇编指令 1, mov...

  • 程序的机器级表示-跳转

    条件码 除了整数寄存器,cpu还维护着一组单个条件码的寄存器,他们用来描述最近算术和逻辑操作的属性。可以检测这些寄...

网友评论

      本文标题:程序的机器级表示之过程调用

      本文链接:https://www.haomeiwen.com/subject/oxpffqtx.html