汇编基础 汇编指令 您所在的位置:网站首页 BCS汇编语言 汇编基础 汇编指令

汇编基础 汇编指令

2024-06-30 17:36| 来源: 网络整理| 查看: 265

bl 指令 跳转到标号出执行 b.le :判断上面cmp的值是小于等于 执行标号,否则直接往下走 b.ge 大于等于 执行地址 否则往下 b.lt 判断上面camp的值是 小于 执行后面的地址中的方法 否则直接往下走 b.gt 大于 执行地址 否则往下 b.eq 等于 执行地址 否则往下 B.HI 比较结果是无符号大于,执行地址中的方法,否则不跳转 ret 返回 mov x0,#0x10 x0 = 0x10 str w10 ,[sp] 将w10寄存器的值存到 sp栈空间内存 stp x0,x1,[sp.#0x10] x0、x1 的值存入 sp + 0x10 orr x0,wzr,#0x1 x0 = wzr | 0x1 stur w10 ,[sp] 将w10寄存器的值存到 sp栈空间内存 ldr w10 ,[sp] w10 = sp栈内存中的值 ldp x0,x1,[sp] x0、x1 = sp栈内存中的值 adrp 通过基地址 + 偏移 获得一个字符串(全局变量) 将1的值,左移12位 1 0000 0000 0000 == 0x1000 将PC寄存器的低12位清零 将1 和 2 的结果相加 adrp 是计算指定的数据地址 到当前PC值的相对偏移 由于得到的结果是低12bit为0 10 1024 12 == 4KB

总结 adrp找到的是一个目标数据偏移的相对地址,他是一个不准确的地址,偏移的误差有4KB 为什么偏移的误差是4KB呐? 在地址总线上面,10条地址总线的寻址能力是1024,12条地址总线的能力是4*1024 4KB

cmp:

ZF=1则AX=BX ZF=0则AX!=BX CF=1则AX=BX CF=0并ZF=0则AX>BX CF=1或ZF=1则AX



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有