美文网首页
Arm64 学习笔记

Arm64 学习笔记

作者: 派大星的博客 | 来源:发表于2018-04-23 21:55 被阅读8次

是课堂笔记,仅供自己复习使用

bl 指令 跳转 ,将下一条指令放入lr(X30)寄存器
ret 返回到lr 寄存器 保存的地址,执行代码

lr 寄存器
pc 寄存器 指向马上要执行的代码地址
sp 寄存器 指向我们的栈
栈平衡 (每个函数调用完毕后,将拉伸的占栈空间平衡回去 (将sp加回去))
栈 : 函数调用会开辟栈空间 (内存空间),
作用:存放函数局部变量、参数、寄存器的保护。

参数 :X0 - X7 (个数有关系、数据类型也有关(float有特殊的寄存器、向量寄存器))放得下才行,多余的会入栈

嵌套调用: 回去的路保护
|— A(开辟) —> B (开辟) —>A (开辟)
|— A <- -> 递归 ,内存溢出
不停的开辟空间没有平栈

=========================================================
内存分区

代码区: 特点:可读可写可执行
栈区域: 存放参数和局部变量
堆区域: 动态申请 可读可写
全局:可读可写
常量区:只读!(逆向可读可写)

相关文章

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

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

  • Arm64 学习笔记

    是课堂笔记,仅供自己复习使用 bl 指令 跳转 ,将下一条指令放入lr(X30)寄存器ret 返回到lr 寄存器...

  • ARM64 学习

    iOS汇编 真机 arm64汇编,GNU 模拟器 x86, AT&T 汇编 寄存器 指令 堆栈 通用寄存器 64b...

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

    汇编语言的种类 目前讨论比较多的汇编语言有:8086 汇编(8086处理器是16bit 的 CPU)Win32 汇...

  • ARM64学习1

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

  • ARM64学习2

    ARM64 计算机中常见的数据宽度 位(Bit):1个二进制位 字节(Byte):一个字节有8个Bit组成,内存中...

  • ARM64汇编入门 - 汇编基础

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

  • ARM64汇编学习笔记四(IF、循环和 Switch)

    cmp(Compare)比较指令 cmp:把一个寄存器的内容和另一个寄存器的内容或立即数进行比较。但不存储结果,只...

  • ARM64汇编入门

    现在iOS设备几乎已经都是ARM64架构,此外,Mac M1芯片的电脑也是基于ARM64架构,本文对ARM64汇...

  • sdk 打包错误汇总 2021-09-15

    1.提示 relase 和simulator arm64 重复 方法:release 模式去除模拟器arm64

网友评论

      本文标题:Arm64 学习笔记

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