常用ARM汇编指令积累

原创 2012年03月29日 00:03:00

MOV,LDR:
ldr r0, 0x12345678
就是把0x12345678这个地址中的值存放到r0中。
而mov不能干这个活,mov只能在寄存器之间移动数据,或者把立即数移动到寄存器中,这个和x86这种CISC架构的芯片区别最大的地方。
x86中没有ldr这种指令,因为x86的mov指令可以将数据从内存中移动到寄存器中。

BIC―――――位清除指令
指令格式:
BIC{cond}{S} Rd,Rn,operand2
BIC指令将Rn 的值与操作数operand2 的反码按位逻辑”与”,结果存放到目的寄存器Rd 中。指令示例:BIC R0,R0,#0x0F ;将R0最低4位清零,其余位不变。

arm逻辑运算指令ORR
ORR R0,R0,#3
这个是把R0与3或并把结果赋给R0
orr 是逻辑或指令。
这句的意思是设置R0的0,1位为1其他位保留

adr ------  获取地址指令
adr r0, _start  //获取_start的地址,并赋给r0寄存器.

mrs ------  读寄存器状态
mrs r0,cpsr
@将cpsr的状态值读到r0中


msr ------  写寄存器
msr cpsr,r0
@写cpsr寄存器

MRS {<cond>} Rd,CPSR|SPSR 将使用这两条指令将状态寄存器传
MSR {<cond>} CPSR_<field>|SPMRS与MSR配合使用,作为更新PS


 

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

常用ARM汇编指令集

  • 2010-05-08 11:11
  • 1.73MB
  • 下载

常用ARM汇编指令

常用ARM汇编指令

Android逆向基础笔记—Android中的常用ARM汇编指令

Android中的反编译是,我们常常会用到一些ARM汇编指令。这里我收集一些,供大家参考。

常用的ARM汇编指令

在嵌入式开发中,汇编程序往往应用在非常关键的地方,比如系统启动时的初始化,进出中断时的环境保存、恢复,对性能要求非常苛刻的函数等。1. 相对跳转指令:b、bl       这两条指令的不同之处在于bl...

常用ARM汇编指令及ATPCS规则

常用ARM汇编指令及ATPCS规则   2010-02-16 00:15:08|  分类: 嵌入式|举报|字号 订阅 在嵌入式开发中,汇编程序常常用于非常关键的地方...

常用ARM汇编指令

相对跳转指令 b bl Bl除了跳转之外,还将返回地址(bl的下一条指令的地址)保存在lr寄存器中; 这两条指令可跳转范围是当前指令的前后32MB;  数据传送指令mov 地址读取伪指令 l...

Android逆向中常用的ARM汇编指令基础知识

一 ARM寄存器 1.通用寄存器 1).未分组寄存器:R0~R7 2).分组寄存器:R8~812 R13:SP,常用作堆栈指针,始终指向堆栈的顶部,当一个数据(32位)推入堆栈时,SP(R13的值...

ARM常用汇编指令

LDR 和STR——用于字和无符号字节指令格式: LDR/STR{cond}{T} Rd, LDR/STR{cond}B{T} Rd, LDR{cond}{T} Rd, 加载指定地址的字数据到Rd中;...
  • glorin
  • glorin
  • 2011-04-25 10:07
  • 1003

ARM常用汇编指令学习

以前用ARM的IDE工具,使用的是ARM标准的汇编语言。现在要使用GNU的工具,当然要了解一点GNU ARM汇编的不同之处。其实非常的简单,浏览一下文档然后再看看程序就完全可以搞定了,或者你硬着头皮看...
  • glorin
  • glorin
  • 2011-04-10 18:04
  • 1129
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)