汇编指令-CMP、TEQ
cmp:(compare)指令进行比较两个操作数的大小
格式: cmp oprd1,oprd2
比较oprd1和oprd2操作数,然后通过助记符来实现想要的判断。
teq: (test equal)测试相等,该指令通常用于比较操作数1和操作数2是否相等。
格式: teq oprd1,oprd2
TEQ指令用于把一个寄存器的内容和另一个寄存器的内容或立即数进行按位的异或运算,并根据运算结果更新CPSR中条件标志位的值。该指令通常用于比较操作数1和操作数2是否相等。(EOR指令也是实现异或运算,只是不更新CPSR)
cmp和teq助记符如下
cmp使用实例实例1:
CMP R0, R1 ; R0与R1比较,做R0-R1的操作ADDHI R0, R0, #1 ; 若R0 > R1, HI为真,则R0 = R0 + 1ADDLS 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
汇编指令-CMP、TEQ相关推荐
- ARM汇编指令CMP/CMN/TST/TEQ
译注: CMP 和 CMP 是算术指令, TEQ 和 TST 是逻辑指令.把它们归入一类的原因是它们的 S 位总是设置的,就是说,它们总是影响标志位. CMN : 比较取负的值 (Compar ...
- 学习笔记-----浅谈汇编指令CMP运行机制
在汇编中,CMP和JMP指令常常用于比较操作,而且查看反汇编源码时也发现不管是.IF伪指令还是其他的底层都是用CMP实现的. 指令格式: CMP 目的操作数,源操作数 计算机在遇到CMP指令的时候,C ...
- 汇编语言的C状态寄存器,汇编指令-状态寄存器、cmp、test、jz等指令详细说明
一.状态寄存器 首先看看:状态寄存器(即标志寄存器) PSW(Program Status Word)程序状态字(即标志)寄存器,是一个16位寄存器,由条件码标志(flag)和控制标志构成, 如下所示 ...
- 汇编指令 - 状态寄存器、cmp、test、jz等指令
一.状态寄存器 首先看看:状态寄存器(即标志寄存器) PSW(Program Status Word)程序状态字(即标志)寄存器,是一个16位寄存器,由条件码标志(flag)和控制标志构成, 如下所示 ...
- cmp 字节 汇编_汇编 常用指令 cmp jmp call ret
cmp 指令 功能相当于减法指令 只是不保存结果 不过cmp执行后会影响标志位 其它指令 通过识别标志位 来得知比较的结果 CPU在执行cmp指令时 像add sub指令一样 也包含两种含义 (有符号 ...
- 汇编基础--cmp汇编指令
cmp是比较指令,cmp的功能相当于减法指令.它不保存结果,只是影响相应的标志位.其他的指令通过识别这些被影响的标志位来得知比较结果. cmp指令格式: cmp 操作对象1, 操作对象2 计算 ...
- Android逆向基础笔记—Android中的常用ARM汇编指令
一 ARM寄存器 1.通用寄存器 1).未分组寄存器:R0~R7 2).分组寄存器:R8~812 R13:SP,常用作堆栈指针,始终指向堆栈的顶部,当一个数据(32位)推入堆栈时,SP(R13的值减 ...
- ARM汇编指令以及伪指令
文章目录 ARM寄存器 ARM指令的一般编码格式 ARM指令的条件域 ARM寻址方式 数据处理指令的操作数寻址方式 立即数寻址方式 寄存器寻址方式 寄存器移位寻址方式 字或无符号字节的Load/Sto ...
- arm汇编指令详细整理及实例详解
目录 一.简介 二.ARM 汇编指令说明 2.1 32位数据操作指令 2.2 32位存储器数据传送指令 2.3 32位转移指令 2.4 其它32位指令 三.实例讲解 3.1 MRS 3.2 MSR 3 ...
最新文章
- firefox html5 canvas,html5 Canvas
- socket 编程入门教程(三)TCP原理:7、TCP连接的关闭
- mysql获取多层嵌套json_使用两个mySQL查询来创建嵌套的JSON数组
- 信息检索导论的课件——http://home.ustc.edu.cn/~zhufengx/ir/pdf/
- 使用Silverlight for Embedded开发绚丽的界面(3)
- AtCoder Beginner Contest 204 F Hanjo 2
- 诺基亚首款Windows Phone智能手机将在年内推出
- 这个可能打败Python的编程语言,正在征服科学界
- php中提示Undefined index的解决方法
- python统计各分数段人数并可根据选择绘制不同的图形_python习题整理
- 阿里云智能语音交互服务导览
- 51单片机led灯依次点亮
- 单AP对多终端无线上行带宽下降问题
- 什么是机器学习里的优化?
- Windows系统下的IE浏览器降级
- windows 查看/清除DNS解析记录
- 【pion】ice-single-port解析
- php判断数组的值是否为空,PHP判断数组(多维数组)值是否为空
- 为什么说C++太复杂?复杂的必要性是为什么?
- 浙江省计算机三级网络安全技术机考,2017年浙江省计算机三级考试题