- 1、本文档共63页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
寄存器移位ARM指令
* * * * * 条件码 ,MI- 负数 minus sign 负号 PL- 正数 plus sign 正号 multiplication * * 关于偏移量及寻址方式和指令格式的讲解,需要结合 编码结构图 尤其是BLX的两种格式 * 问题: 为什么24位偏于量,范围是+- 32MB , +-32MB 26位 因为ARM 强制边界对准,ARM指令地址的最低两位一定为0,所以便宜地址不表示最低两个0 * * * * * MOV R1,0x13 MSREQ CPSR,R1 也可以用指令 MSREQ CPSR,#0x13代替 * 每根输出线与所有的输入线都有交点,最终输出值取决于移动控制信号控制的开关到底闭合于哪一处,因此支持所有的多位数的左、右移操作。 图示,4位移位器,支持左、右移1-3位。 如果左移1位,控制信号有效,对应开关闭合,Out[1]=In[0],Out[2] =In[1],Out[3] = In[2] ,Out[0]补0。 * 附2-- 桶形移位器 开关矩阵 In[3] In[2] In[1] In[0] Out[3] O[2] O[1] O[0] 0= 左移1位 * * * * * * * * * * * * * * * * * * * * Pre indexing- add offset before transfer; Post indexing – add offset after transfer * * * * * * * * 此处,loop和Subr1标号书写错误,出现了大小写不一致问题,供大家思考 * * * ARM指令集-数据处理指令 助记符 指令格式 操作 MOV MOV{cond}{s}Rd,operand Rd=op MVN MVN{cond}{s}Rd, operand Rd=0xFFFFFFFF xor op Operand可以是立即数、寄存器或寄存器移位寻址方式 MVN指令对operand取反后,传送到目的寄存器 MOV/MVN,在加上后缀“S”后,可根据传送数据影响CPSR标志位 – N、Z、C(如果operand使用移位寻址) 数据传送指令 实现立即数、寄存器、寄存器移位到目的寄存器的数据传送 特殊用法: ----------------------- 已知X求 –X MVN取反,加1即可 ----------------------- 中断返回 MOVS pc ,lr 恢复pc断点,同时将spsr拷贝回cpsr ARM指令集-数据处理指令 助记符 指令格式 操作 ADD ADD{cond}{s}Rd,Rn,operand2 Rd=Rn+op2 ADC ADC{cond}{s}Rd,Rn,operand2 Rd=Rn+op2+C SUB SUB {cond}{s}Rd,Rn,operand2 Rd=Rn-op2 SBC SUC {cond}{s}Rd,Rn,operand2 Rd=Rn-op2-1+C RSB RSB{cond}{s}Rd,Rn,operand2 Rd=op2-Rn RSC RSC{cond}{s}Rd,Rn,operand2 Rd=op2-Rn-1+C 算术指令列表 指令格式统一,operand2允许三种寻址方式: 立即数,寄存器,寄存器移位 ARM指令集-指令应用举例 e.g 实现两个128位数据的加/减 首先将第一个数放在R4,5,6,7中,第二个数放在R8,9,10,11中,结果存放在R0,1,2,3中 ADDS R0,R4,R8 ADCS R1,R5,R9 ADCS R2,R6,R10 ADCS R3,R7,R10 请大家写减法程序段 e.g 使用寄存器移位寻址,优化简单乘法 ;r0 = 10 ×r1 MOV r0, r1, LSL #3 ADD r0, r0, r1,LSL #1 已知 X, 利用减法求-X ARM指令集-数据处理指令 助记符 指令格式 操作 AND AND{cond}{s}Rd,Rn,operand2 Rd=Rn and op2 ORR ORR{cond}{s}Rd,Rn,operand2 Rd=Rn or op2 EOR EOR{cond}{s}Rd,Rn,operand2 Rd=Rn xor op2 BIC BIC{cond}{s} Rd,Rn,operand2 Rd=Rn and (!op2) 指令格式与算术指令相同,operand2支持三种寻址 逻辑指令,(加上后缀”S”)根据结果影响CPSR的N和Z标志,如果operand2采用寄存器移
您可能关注的文档
- 天然抗氧化剂迷迭香在动物性食品中的应用-食品科学.PDF
- 天然场音频大地电磁法技术规程-矿材网.PDF
- 天然橄榄石单晶的压缩性-上海应用物理研究所.PDF
- 天然气/汽油两用燃料汽车点火提前角-中国公路学报-长安大学.PDF
- 天然迷迭香抗氧化剂的研究进展-林产化学与工业.PDF
- 天线阻抗的实时检测及自动校正系统设计-易迪拓培训.PDF
- 天线三阶互调干扰的分析与测量-易迪拓培训.PDF
- 太原理工大学毕业设计论文工作试行条例-太原理工大学-教务处.DOC
- 太湖不同生态型湖区湖鲚Coiliaectenestaihuensis食物-湖泊科学.PDF
- 太空及遥测研究中心-地球科学研究推动中心-国立中央大学.PDF
文档评论(0)