- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.3 ARM指令集编码与格式 1. ARM指令分类 分类指令 指令列举 数据处理 ADD、ADC、SUB、RSB、SBC; MOV、MVN; AND、ORR、EOR、BIC;CMP、CMN;TST、TEQ; MUL、MLA、UMULL、UMLAL、SMULL、SMLAL 数据传送 LDR、STR(单寄存器存取); LDM、STM(多寄存器存取);SWP(信号量) 状态寄存器访问 MRS、MSR 分支指令 B、BL;BX、BLX; 异常产生 SWI(软中断产生);BKPT(断点指令); 协处理器 CDP;LDC、STC;MCR、MRC; 2. ARM指令编码 ARM指令编码格式 ARM条件编码格式 3. 基本指令格式 opcode {cond} {S} Rd,Rn {,operand2} 指令助记符 可选条件码; 指令执行条件 可选后缀,可根据指令结果更新CPSR条件码 Rd:目标寄存器; Rn:第一操作数寄存器 第2操作数 3. 基本指令格式举例 LDR R0,[R1] BEQ DATAEVEN ADDS R2,R1,#1 SUBNES R2,R1,#0x20 读取R1地址上的内容,执行条件AL(总是) 条件执行分支指令,执行条件EQ, 即相等则跳转 加法指令:R2←R1+1; 影响CPSR的标志位 条件执行减法: R2 ←R1-0x20; 执行条件NE,影响CPSR的标志位 N Z C V …… I F T M4 M3 M2 M1 M0 4. 数据处理指令 数据处理 1.算术运算指令 ADD、 SUB、 ADC、SBC 、 RSB、RSC ; 2.逻辑运算指令 AND、ORR、EOR、BIC; 3. 比较指令 CMP、CMN; 4.测试指令 TST、TEQ; 5. 乘法指令 MUL、MLA、UMULL、UMLAL、SMULL、SMLAL 6. 数据传送指令 MOV、MVN; 4.1 乘法指令 完成2个寄存器的数据相乘。按照结果位宽可分成两类: 64位结果; 仅保留最低有效32位。 2种类型都有“乘-累加”变形,即将成绩连续相加成总和,且适用于无符号和有符号数 乘法指令举例 MUL、 乘(32位结果) Rd ← (Rm*Rs)[31:0] MLA、 乘-累加(32位结果) Rd ← (Rm*Rs+Rn)[31:0] UMULL、 无符号数长乘 RdHi:RdLo ← Rn * Rs UMLAL、 无符号数长乘-累加 RdHi:RdLo += Rn * Rs SMULL、 符号数长乘 RdHi:RdLo ← Rn * Rs SMLAL 符号数长乘-累加 RdHi:RdLo += Rn * Rs 4.2 Load/Store 指令 ARM处理器是Load/Store型的。 将数据从存储器中调入寄存器中进行处理; 处理完成后经过寄存器将结果存回到存储器中 I/O功能是通过存储器映射的可循之外围寄存器和终端输入的组合来实现。 在存储器映射系统中,外设中的寄存器被映射为存储器的地址,对这些寄存器的操作方法与对存储器的操作相同 处理器对外设的操作也是适用Load/Store指令通过类似存储器操作来完成。 4.2.1 单寄存器存取指令 LDR/STR 传送的数据可以是8位字节、16位半字或32位字 可以适用7种寻址方式; 可以适用自动变址寻址方式(硬件支持) 指令格式 前变址: LDR|STR {cond} {B} Rd,[Rn,offset] {!} 后变址 LDR|STR {cond} {B} {T} Rd,[Rn],offset 相对PC变址 LDR|STR {cond} {B} Rd, LABEL B表示传送无符号字节还是字。缺省B=0为传送字 T标志位只能在非用户模式即特权模式下使用。作用是选择用户角度的存储器变换系统 LDR/STR 举例 4.2.2 多寄存器存取指令 LDM/STM 可用一条指令将16个可见寄存器的任意子集存储到内存或者相反。 寻址模式受到限制 LDM/STM的两种用途 可允许OS加载或存储用户模式寄存器来保护和恢复用户处理状态(保存作业现场); 可作为异常处理返回的一部分,完成从SPSR中恢复CPSR。 多寄存器存取指令形式 指令举例 4.3 状态寄存器与GPRs之间的 传送 MSR/MRS PSW到GPRs的传送指令MRS; GPRs 到PSW的传送指令MSR; 修改PSW一般是通过“读-修改-写”3个步骤来完成。 不能通过该指令直接修改CPSR中的T位直接将程序状态切换到Thumb状态,而是必须通过BX指令完成状态切换。 4.4 异常中断产生指令 SWI指令用于产生SWI异常中断,可以实现在用户模式下对OS中特权模式的程序调用。 SWI代表“软件中断
您可能关注的文档
- 电网公司主要输变电设备状态检修导则.docx
- 电压和电压表的使用 苏科版九年级物理教学PPT课件.ppt
- 电影中动作捕捉技术的发展与思考教学PPT课件.pptx
- 《重大劳动保障违法行为社会公布办法》及《企业劳动保障守法诚信等级评价办法》解读教学PPT课件.ppt
- 1kv及以下配电工程施工质量检验表格.docx
- 2 4 6-三硝基苯酚化学品安全技术说明书.docx
- 2,4-二硝基苯肼化学品安全技术说明书.docx
- 5G勘察注意事项土建方案制定培训教学PPT课件.pptx
- 5G网络技术培训教学PPT课件.pptx
- 6项专项附加具体规定及扣除细则.docx
- 实验室危废随意倾倒查处规范.ppt
- 实验室危废废液处理设施规范.ppt
- 实验室危废处置应急管理规范.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第20课时 中国的地理差异.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第21课时 北方地区.ppt
- 危险废物处置人员防护培训办法.ppt
- 危险废物处置隐患排查技术指南.ppt
- 2026部编版小学数学二年级下册期末综合学业能力测试试卷(3套含答案解析).docx
- 危险废物处置违法案例分析汇编.ppt
- 2026部编版小学数学一年级下册期末综合学业能力测试试卷3套精选(含答案解析).docx
最近下载
- 加油站安全生产管理台账21种台账样本(完整版).pdf VIP
- 培智学校八年级下册生活语文期末卷ABCD卷.pdf VIP
- Bosch博世 墙体探测器 D-tect 120 Professional 说明书.pdf
- 通力电梯KCE无机房电气原理图纸2017.pdf
- 博士课程-中国马克思主义与当代(2024年修)习题答案.docx VIP
- 2026届广东东莞中学、广州二中、惠州一中、深圳实验、珠海一中、中山纪念中学六校高二上学期十二月联考物理试卷.docx VIP
- 新高考CD篇阅读备考(基于语篇结构)课件(共24张PPT)-2025届高三英语二轮复习.pptx VIP
- 2022年无锡市物业服务收费管理规定.doc VIP
- 中华系列期刊目录.doc VIP
- 管理运筹学(第四版)韩伯棠全套PPT课件.pptx
原创力文档


文档评论(0)