arm汇编简介.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
arm汇编简介

arm汇编简介.txt老子忽悠孩子叫教育,孩子忽悠老子叫欺骗,互相忽悠叫代沟。▲ 男人 这花花世界,我要用什么颜色来吸引你。 1 状态寄存器传送至通用寄存器类指令 功能:将状态寄存器的内容传送至通用寄存器。 格式: MRS{条件码}Rd,CPSR}SPSR 其中: Rd 目标寄存器,Rd不允许R15。 R=0 将CPSR中的内容传送目的寄存器。 R=1 将SPSR中的内容传送至目的寄存器。 注释: MRS与MSR配合使用,作为更新PSR的读-修改-写序列的一部分。例如:改变处理器或清除标志Q。注意:当处理器在用户模式或系统模式下,一定不能试图访问SPSR 这条指令不影响条件码标志。 例: MRS R0,CRSR ;将CPSR中的内容传送至R0 MRS R3,SPSR ;将SPSR中的内容传送至R3 2 通用寄存器传送至状态寄存器传送指令 功能:将通用寄存器的内容传送至状态寄存器。 格式: MSR{条件码CPSR_f|SPSR_f,#ommed_8r MSR{条件码CPSR_field|SPSR_field,Rm 其中: field字段可以是以下之一或多种:(位从右到左) C:控制域屏蔽字段(PSR中的第0位到第7位); X:扩展域屏蔽字段(PSR中的第8位到第15位); S:状态域屏蔽字段(PSR中的第16位到第32位); F:标志域屏蔽字段(PSR中的第24位到第31位)。 immed_8r 值数字常量的表达式。常量必须对应8位位图。该位图在32位字中循环移位偶数数位。 Rm 源寄存器。 注释: 同前一条指令(MRS)。 例1:设置N、Z、C、V标志。 MSR CPSR_f,#f0000000 ;仅高位有效,其他必须为0 例2: 仅置位C标志,保留N、Z、V标志。 MRS R0,CPSR ;将CPSR中的内容传送至R0 ORR R0,R0,#1f ;置位R0的第29位 MSR CPSR_c,R0 ;再将R0中的内容传送至CPSR 例子:设置cpu工作在超级保护模式(SVC32) @set the cpu to SVC32 mode mrs r0,cpsr @把CPSR内容存入r0.使用了mrs指令:专用寄存器到通过寄存器的存取. @CPSR当前程序状态寄存器格式如下: @ 31 30 29 28 27 26 25 24 ~ ~ ~ 8 7 6 5 4 3 2 1 0 @ ___ ___ ___ ___ ___ ___ ___ ___ _ _ _ _ ___ ___ ___ ____ ____ ____ ____ ____ @| N | Z | C | V | * | * | * | * | * * * | I | F | T | M4 | M3 | M2 | M1 | M0 | @ bic r0,r0,#0x1f @bic指令(bit clear): r0:= r0 and (not op2).上边的指令目的是把bit0~bit4清零. orr r0,r0,#0xd3 @r0:= r0 or 0xd3 . 以上三条指令执行后r0值为:**** **** **** **** **** ***** 11*1 0011 msr cpsr,r0 @把r0存于cpsr.注意:msr指令是专用的通用寄存器到特殊功能寄存器的指令与mrs对应 说明:通过上边的指令可以看到,实现了两个功能.1,disable 外部中断(IRQ)与快速中断(FIR).2,把系统设为SVC32状态(超级保护)即M4~M1=10011 LDR 和STR——用于字和无符号字节 指令格式: LDR/STR{cond}{T} Rd,地址 LDR/STR{cond}B{T} Rd,地址 LDR{cond}{T} Rd,地址 加载指定地址的字数据到Rd中; STR{cond}{T} Rd,地址 存储Rd中的字数据到指定的地址单元中; LDR{cond}B{T} Rd,地址 指令加载指定地址的字节数据到Rd的的最低字节中(Rd的高24位清零); STR{cond}B{T} Rd, 地址 指令存储Rd中的最低字节数据到指定的地址单元中。 T为可选后缀,若有T,那么即使处理器是在特权模式下,存储系统也将访问看成处理器是在用户模式下,T 在用户模式下无效,不能与前索引偏移一起使用T。 地

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档