当前位置:   article > 正文

解析ARM64汇编指令内存寻址方式_arm64 寻址方式

arm64 寻址方式

内存操作指令​

ARM所有的运算指令只能基于寄存器,所以,要先从内存Load要运算的数据到寄存器,运算完成后,再将寄存器的结果Store到内存,这两个操作相应的指令如下:

 还有Mov指令,但是并不能从内存读写数据,只能是直接的一个数(立即数),或者寄存器:

指令不难理解,麻烦的是[addr],各种姿势,婉转百变,今天抽时间解锁一下

寻址方式

首先[addr]里面一定有一个寄存器,这个寄存器的值是一个内存地址,称之为Base Register,可以理解为c语言里面的一个ptr。Base Register在寻址之前或者之后都可以进行一些运算操作,操作结果可以更新到这个Base Register,也可以不更新到Base Register。具体来说,有下面几种:

  • 最简形式:Base Register模式

    可类比于:*(ptr) <-> value

    下面的x1不会变

ldr  x0,  [x1]   /* [x1] ->
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/煮酒与君饮/article/detail/1022189
推荐阅读
相关标签
  

闽ICP备14008679号