嵌入式系统4+(ARM指令详细介绍)试卷.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 西安电子科技大学计算机学院 * 2.2 字节数据加载指令 LDRB指令 LDRB指令的格式为: LDR{条件}B 目的寄存器,存储器地址 LDRB指令用于从存储器中将一个8位的字节数据传送到目的寄存器中,同时将寄存器的高24位清零。该指令通常用于从存储器中读取8位的字节数据到通用寄存器,然后对数据进行处理。 LDRB R0,[R1] ;将内存单元[R1]中的字节读取到R0 寄存器中,R0中高24位设置为0 LDRB R0,[R1,#8] ;将内存单元[R1+8]中的字节 读取到R0寄存器中,R0中高24位设置为0 西安电子科技大学计算机学院 * 2.3 半字数据加载指令 LDRH指令 LDRH指令的格式为: LDR{条件}H 目的寄存器,存储器地址 LDRH指令用于从存储器中将一个16位的半字数据传送到目的寄存器中,同时将寄存器的高16位清零。该指令通常用于从存储器中读取16位的半字数据到通用寄存器,然后对数据进行处理。 LDRH R0,[R1];将内存单元[R1]中的半字(16位)数据读 取到R0寄存器中,R0中高16位设置为0 LDRH R0,[R1,#8];将内存单元[R1+8]中的半字(16位) 数据读取到R0寄存器中,R0中高16位设置为0 LDRH R0,[R1,R2];将内存单元[R1+R2]中的半字(16位) 数据读取到R0寄存器中,R0中高16位设置为0 西安电子科技大学计算机学院 * 2.4 字数据存储指令 STR指令 STR指令的格式为: STR{条件} 源寄存器,存储器地址 STR指令用于从源寄存器中将一个32位的字数据传送到存储器中。该指令在程序设计中比较常用,且寻址方式灵活多样,使用方式可参考指令LDR。 STR R0,[R1],#8 ;将R0的字数据保存到内存单元 [R1]中,同时R1←R1+8(后变) STR R0,[R1,#8] ;将R0的字数据保存到内存单元 [R1+8]中(前变) 西安电子科技大学计算机学院 * 2.5 字节数据存储指令 STRB指令 STRB指令的格式为: STR{条件}B 源寄存器,存储器地址 STRB指令用于从源寄存器中将一个8位的字节数据传送到存储器中。该字节数据为源寄存器中的低8位。 STRB R0,[R1] ;将R0的低8位数据保存到 内存单元[R1]中 STRB R0,[R1,#8] ;将R0的低8位数据保存到 内存单元[R1]中 西安电子科技大学计算机学院 * 2.6 半字数据存储指令 STRH指令 STRH指令的格式为: STR{条件}H 源寄存器,存储器地址 STRH指令用于从源寄存器中将一个16位的半字数据传送到存储器中。该半字数据为源寄存器中的低16位。 STRH R0,[R1] ;将R0中的16位的半字数据 保存到内存单元[R1]中 STRH R0,[R1,#8] ;将R0中的16位的半字数据 保存到内存单元[R1+8]中 西安电子科技大学计算机学院 * LDR/STR指令的寻址方式 基址寻址 变址寻址 变址寻址灵活多变,需要认真掌握 西安电子科技大学计算机学院 * 批量数据加载(LDM)/存储(STM)内存访问指令 ARM微处理器所支持批量数据加载/存储指令可以一次在一片连续的存储器单元和多个寄存器之间传送数据。批量数据加载指令(LDM)用于将一片连续的存储器中的数据传送到多个寄存器,批量数据存储指令(STR) 则完成相反的操作。 IA、IB、DA、DB FD、ED、FA、EA 西安电子科技大学计算机学院 * 2.7 批量数据存储指令 STM指令 STM指令的格式为: STM{条件}{类型} 基址寄存器{!},寄存器列表{^} STM指令用于将寄存器列表所指示的多个寄存器数据送到由基址寄存器所指示的一片连续存储器,该指令的常见用途是将多个寄存器的内容入栈。例如: STMFD R0!, {r0-r4};将寄存器列表中的寄存器 (R1~R4)内容按照满递减的方式 存入到[R0]指示的4个连续存储器单元中 西安电子科技大学计算机学院 * 2.8 批量数据加载指令 LDM指令 LDM指令的格式为: LDM{条件}{类型} 基址寄存器{!},寄存器列表{^} LDM指令用于

文档评论(0)

502992 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档