arm64汇编中的感叹号

202天前 · 分享 · 340次阅读

用frida hook的时候,发现有个寄存器的值始终和预期不符,总是差那么点偏移

后来发现汇编最后有一个感叹号,查了下这个好像arm64才有的

总之意思就是在一条指令执行之后,会回写用于计算的寄存器

比如指令是这样的:

LDRH W23, [X20,#2]!

那么首先会取X20偏移0x2的位置作为地址,读取16位(半字,一个字是32位,也就是4字节),结果给W23

然后把X23高16位清零;到这里指令就“等于是”执行完成了

然后X20的值就会被修改为X20 + 2

也就是说X20所指向的位置在命令执行后进行了偏移

具体参考:

👍 0

汇编

还没有修改过

评论

贴吧 狗头 原神 小黄脸
收起

贴吧

狗头

原神

小黄脸

目录

avatar

未末

迷失

126

文章数

275

评论数

7

分类