永发信息网

请教一个ARM芯片下CMP汇编语言的含义

答案:1  悬赏:60  手机版
解决时间 2021-03-26 11:53
  • 提问者网友:低吟詩仙的傷
  • 2021-03-25 15:15
请教一个ARM芯片下CMP汇编语言的含义
最佳答案
  • 五星知识达人网友:老鼠爱大米
  • 2021-03-25 16:01
cmp(compare)指令进行比较两个操作数的大小
例:cmp oprd1,oprd2
为第一个操作减去第二个操作数,
但不影响两个操作数的值
它影响flag的CF,ZF,OF,AF,PF
若执行指令后
ZF=1 则说明两个数相等,因为zero为1说明结果为0
当无符号时:
CF=1 则说明了有进位或借位,cmp是进行的减操作,故可以看出为借位,所以,此时oprd1
CF=0 则说明了无借位,但此时要注意ZF是否为0,若为0,则说明结果不为0,故此时oprd1>oprd2
当有符号时:
若SF=0,OF=0 则说明了此时的值为正数,没有溢出,可以直观的看出,oprd1>oprd2
若SF=1,OF=0 则说明了此时的值为负数,没有溢出,则为oprd1若SF=0,OF=1 则说明了此时的值为正数,有溢出,可以看出oprd1若SF=1,OF=1则说明了此时的值为负数,有溢出,可以看出oprd1>oprd2
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯