美文网首页
arm64汇编篇-04堆与栈的关系

arm64汇编篇-04堆与栈的关系

作者: ClementGu | 来源:发表于2018-05-24 17:09 被阅读20次

栈:

栈是一种具有特殊的访问方式的存储空间(后进先出, Last In Out Firt,LIFO)。

堆:

堆用于动态分配和释放程序所使用的对象.(这边不详细介绍堆,汇编中主要是看栈的运用)。

地址读取:

内存中内存地址的读取是从低地址向高地址读取的。

栈与堆的关系:


上面简单的画了一下堆栈的关系,Stack Overflow大家应该不是很陌生,在开发中遇到的很多刁钻的问题都可以在Stack Overflow中找到答案而其意义却是堆栈溢出。

栈的内存开辟是从高地址往低地址段开辟,但是读取内存都是从低地址往高地址读取的,所以栈里面涉及到栈平衡和叶子函数调用的问题,在后续文章里会介绍。

同时栈的开辟是通过移动sp来实现的,上一章介绍了sp寄存器是始终指向栈顶的,所以在叶子函数中可以不开辟栈来实现寄存器数据操作。

相关文章

  • arm64汇编篇-04堆与栈的关系

    栈: 栈是一种具有特殊的访问方式的存储空间(后进先出, Last In Out Firt,LIFO)。 堆: 堆用...

  • ARM64汇编入门 - 汇编基础

    ARM64汇编入门 - 汇编基础ARM64汇编入门 - 汇编基础

  • 入门二

    [转]ARM64 汇编 寄存器 汇编指令栈栗子 逆向工程绕不过的一部分就是汇编指令的分析。我们iPhone里面用到...

  • ARM64汇编学习笔记一(初始汇编)

    ARM64汇编学习笔记一(初始汇编)

  • IOS arm64常用的汇编

    导论 生成汇编文件 寄存器 arm64 汇编条件域 arm64 汇编指令 总结 1. 生成汇编文件 2. 寄存器 ...

  • ARM64学习1

    ARM64学习--assembly language 语言之间的关系 汇编语言与机器语言一一对应,每一条机器指令都...

  • ARM 64 常见汇编指令

    ARM64常用的汇编指令 运算指令 程序跳转指令

  • C语言10- C语言与汇编

    20:C语言与汇编 20.1:调用约定之汇编 x86调用约定: cdecl:参数从右往左依次入栈,调用者栈平衡(C...

  • arm64汇编基础

    iOS汇编 真机:arm64汇编 模拟器:x86汇编 将c语言的代码转化成汇编: 1. 寄存器 lldb查看当前a...

  • iOS汇编基础(二)寄存器

    以arm64为例 xcode调试汇编 1. xcode 查看运行时的汇编代码 debug -> debug wor...

网友评论

      本文标题:arm64汇编篇-04堆与栈的关系

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