美文网首页
Swift 汇编常见指令

Swift 汇编常见指令

作者: 常在士心 | 来源:发表于2022-01-02 22:48 被阅读0次
  • mov: 将某一寄存器的值复制到另一寄存器(只能用于寄存器与寄存器或者寄存器与常量之间传值,不能用于内存地址),如:
 mov x1,  x0   将寄存器 x0 的值复制到 x1 中
  • add: 将某一寄存器的值和另一寄存器的值 相加 并将结果保存在另一寄存器中,如:
add x0,  x1,  x2      将寄存器x1 和 x2 的值相加后保存到寄存器 x0 中
  • sub: 将某一寄存器的值和另一寄存器的值 相减 并将结果保存在另一寄存器中,如:
sub x0,  x1,  x2      将寄存器x1 和 x2 的值相减后保存到寄存器 x0 中
  • and: 将某一寄存器的值和另一寄存器的值 按位与 并将结果保存到另一寄存器中,如:
and x0, x0, #0x1         将寄存器 x0 的值和常量 1 按位与后保存到寄存器 x0 中
  • orr: 将某一寄存器的值和另一寄存器的值 按位或 并将结果保存到另一寄存器中, 如:
orr x0, x0, #0x1       将寄存器 x0的值和常量 1 按位或后保存到寄存器 x0 中
  • str:将寄存器中的值写入到内存中,如:
str x0, [x0, x8]    将寄存器 x0 中的值保存到栈内存 [x0 + x8]处
  • ldr: 将内存中的值读取到寄存器中,如:
ldr x0, [x1, x2]     将寄存器 x1 和寄存器x2的值相加作为地址,取该内存地址的值放入寄存器 x0 中
  • cbz: 和 0 比较,如果结果为零就转移(只能跳到后面的指令)
  • cbnz: 和非 0 比较,如果结果非零就转移(只能跳到后面的指令)
  • cmp: 比较指令
  • blr: (branch)跳转到某地址(无返回)
  • bl: 跳转到某地址(有返回)
  • ret: 子程序(函数调用)返回指令,返回地址已默认保存在寄存器 lr (x30) 中

相关文章

  • Swift 汇编常见指令

    mov: 将某一寄存器的值复制到另一寄存器(只能用于寄存器与寄存器或者寄存器与常量之间传值,不能用于内存地址)...

  • 常见汇编指令

    随时更新 leave: leave是汇编语言中的一条指令名 在32位汇编下相当于mov esp,ebppop eb...

  • 《汇编》 常见指令

    因为最近都是用cmd markdown进行写文章了,但是文章链接还是会挂在这里。汇编常见指令

  • 常见汇编指令

    指令基本格式操作码 操作数1 (操作数2 ……)对于双操作数指令,一般来说第一个是目标操作数 简单指令...

  • lab1 二进制炸弹

    汇编与反汇编 汇编与反汇编的区别 phase_1 比较字符串是否相同 二进制炸弹 常见汇编指令详解 AT&T 格式...

  • 常见的汇编指令

  • 逆向笔记(三)-汇编指令

    汇编指令 针对汇编来说,汇编指令是必须了解的,而且汇编中汇编指令比较多,但是每一个汇编指令对应的机器码是固定不变的...

  • 16位汇编简记

    汇编: 汇编即是机器指令助记符,机器指令让cpu工作。像是mov、jmp、jcxz等汇编指令都有对应的机器指令。有...

  • 学习汇编--写一个完整的汇编(一)

    汇编指令 汇编有两类指令组成汇编指令如move,add,sub等,有对应的机器指令,可以被编译为机器指令最终被CP...

  • 逆向学习 持续更新中

    什么是汇编 机器指令能被计算机直接识别 汇编指令需要通过编译器转为机器指令 汇编指令和机器指令的差别在于指令的表示...

网友评论

      本文标题:Swift 汇编常见指令

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