网站大量收购闲置独家精品文档,联系QQ:2885784924

第3章 ARM寻址方式与指令系统讲解.ppt

  1. 1、本文档共87页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* STR字数据存储指令 3. STR字数据存储指令: STR{cond} Rd,addr; 功能:把寄存器Rd中的字数据(32位)保存到addr所表示的内存地址中,同时还可以把合成的有效地址写回到基址寄存器。 针对小端模式配置, 字存储(STR)将生成一个字对齐的地址。使用一个非字对齐的地址将有不明显和未规定的结果。实际上不能使用 LDR 从一个非对齐的地址装载一个字。 地址addr可以是一个简单的值、或一个偏移量、或者是一个被移位的偏移量,其寻址方式同LDR指令。 例如: STR R0,[R1,#5]!; 把R0中的字数据保存到以 R1+5为地址的内存中,然后R1=R1+5 * STRB字节数据存储指令 4. STRB字节数据存储指令: STR{cond}B Rd,addr; 功能:把寄存器Rd中的低8位字节数据保存到addr所表示的内存地址中。其他用法同STR指令。 字节存储(STRB)在数据总线上重复源寄存器的的低端 8 位 4 次。由外部的内存系统来激活适当的字节子系统来存储数据。 例如: STRB R0,[R1]; 将寄存器R0中的低8位数据存入R1表示的内存地址中 * 批量数据加载/存储指令 5. LDM批量数据加载指令: LDM{cond}{type} Rn{!},regs{^}; 功能:从一片连续的内存单元读取数据到各个寄存器中,内存单元的起始地址为基址寄存器Rn的值,各个寄存器由寄存器列表regs表示。该指令一般用于多个寄存器数据的出栈。 {!}:若选用了此后缀,则当指令执行完毕后,将最后的地址写入基址寄存器。 在存储R15到内存中时,自动保存CPSR 位。在重新装载 R15 的时候,除非你要求否则不恢复 CPSR 位。要求的方法是在寄存器列表后跟随一个‘^’。 * 批量数据加载/存储指令 6. STM批量数据存储指令: STM{cond}{type} Rn{!},regs{^}; 功能:将各个寄存器的值存入一片连续的内存单元中,内存单元的起始地址为基址寄存器Rn的值,各个寄存器由寄存器列表regs表示。该指令一般用于多个寄存器数据的入栈。 * 批量数据加载/存储指令 指令中,type字段有以下几种: IA:每次传送后地址加4; IB:每次传送前地址加4; DA:每次传送后地址减4; DB:每次传送前地址减4; FD:满递减堆栈; FA:满递增堆栈;(一个满栈的栈指针指向上次写的最后一个数据单元) ED:空递减堆栈; EA:空递增堆栈;(空栈的栈指针指向第一个空闲单元。) * 批量数据加载/存储指令 4 种‘类型’就变成了 8 个指令: 栈 其他 LDMED LDMIB 预先增加装载 LDMFD LDMIA 过后增加装载 LDMEA LDMDB 预先减少装载 LDMFA LDMDA 过后减少装载 栈 其他 STMFA STMIB 预先增加存储 STMEA STMIA 过后增加存储 STMFD STMDB 预先减少存储 STMED STMDA 过后减少存储 *59595959666633331554854536338832 0x123456a0 00x1234568c 0000x1234567c 00R13 内存中的数据 批量数据加载/存储指令 IA、IB、DA、DB指定了地址加还是减,是传送前还是传送后 。例如:LDMIA/IB/DA/DB R13!,{R0-R1,R3};各指令执行完后,结果如图所示: R3 R1 R0 R0 R1 R3 DA:每次传送后地址减4;000088885469364566663333 IA:每次传送后地址加4; IB:每次传送前地址加4;15548545DB:每次传送前地址减4;59595959* 批量数据加载/存储指令 FD、ED、FA、和EA指定是满栈还是空栈,

文档评论(0)

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

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

1亿VIP精品文档

相关文档