zoukankan      html  css  js  c++  java
  • 汇编指令-CMP、TEQ(5)

     cmp:(compare)指令进行比较两个操作数的大小 

    格式: cmp oprd1,oprd2

    比较oprd1和oprd2操作数,然后通过助记符来实现想要的判断。

    teq: (test equal)测试相等,该指令通常用于比较操作数1和操作数2是否相等。

    格式: teq oprd1,oprd2
    TEQ指令用于把一个寄存器的内容和另一个寄存器的内容或立即数进行按位的异或运算,并根据运算结果更新CPSR中条件标志位的值。该指令通常用于比较操作数1和操作数2是否相等。(EOR指令也是实现异或运算,只是不更新CPSR)

     cmp和teq助记符如下

     

    助记符

    含    义

    EQ

    相等equal

    NE

    不相等not equal

    CS

    无符号数大于或等于Carry Set

    CC

    无符号数小于

    MI

    负数minus

    PL

    正数或零plus

    VS

    溢出

    VC

    没有溢出

    HI

    无符号数大于high

    LS

    无符号数小于或等于less

    GE

    带符号数大于或等于

    LT

    带符号数小于less than

    GT

    带符号数大于great than

    LE

    带符号数小于或等于

    AL

    无条件执行all

     

    cmp使用实例实例1:

    CMP  R0, R1  ;                                        R0与R1比较,做R0-R1的操作

    ADDHI  R0, R0, #1  ;                               若R0 > R1, HI为真,则R0 = R0 + 1

    ADDLS  R1, R1, #1  ;                              若R0 <= R1, LS为真,则R1 = R1 + 1

    cmp使用实例实例2:

    adr r0, _start  
    ldr r1, _TEXT_BASE 
    cmp r0, r1                                                           r0与r1比较,做r0-r1的操作
    blne cpu_init_crit                                                若ne(r0地址与r1地址不相等)为真,执行bl cpu_init_crit  跳转    

         

    teq使用实例实例1:

    teq r0, r1                                                               R0与R1是否相等               
    ADDeq  R0, R0, #1  ;                                          若R0 == R1, eq为真,则R1 = R1 + 1

                    

  • 相关阅读:
    python——scrapy的三种登录方式,下载中间件(Downloademiddleware),settings文件
    PHPExcel探索之旅---阶段四 导入文件
    PHPExcel探索之旅---阶段三 绘制图表
    PHPExcel探索之旅---阶段二 设置表格样式
    PHPExcel探索之旅---阶段一
    PDO中构建事务处理的应用程序
    对图片进行翻转
    用给定的角度旋转图像
    为背景图像添加图像水印(位置随机)
    对图片进行缩放
  • 原文地址:https://www.cnblogs.com/lifexy/p/7183676.html
Copyright © 2011-2022 走看看