ARM base instruction -- cbz

CBZ

Compare and Branch on Zero compares the value in a register with zero, and conditionally branches to a label at a PC-relative offset if the comparison is equal. It provides a hint that this is not a subroutine call or return. This instruction does not affect condition flags.

比较(Compare),如果结果为零(Zero)就转移(只能跳到后面的指令)    1MB。

  402c6c:    b90013e0     str    w0, [sp, #16]           // [sp, #16] = len
  402c70:    93407c01     sxtw    x1, w0              // x1=len
  402c74:    f90047e1     str    x1, [sp, #136]          // [sp, #136] = len
  402c78:    aa0103e0     mov    x0, x1                  // x0=len
  402c7c:    97fffbc1     bl    401b80 <malloc@plt>     // malloc(len)
  402c80:    aa0003f5     mov    x21, x0                 // x21=x0=malloc(len)
  402c84:    b4001060     cbz    x0, 402e90 <ferror@plt+0xfb0>   // exit(2)

    char *path = NULL;
    if ((path = malloc(len) == NULL) {
        // cbz 402e90
        exit(2);
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值