- 1
- 0
- 约3.21千字
- 约 12页
- 2019-10-10 发布于湖北
- 举报
指令集之杂项指令 组长:XX 组员:XXX 杂项指令介绍 * 周立功单片机 ARM指令集中有四条指令作为杂项指令,实际上这四条指令非常重要。它们如下所示: MSR{cond} psr_fields←Rd/#immed_8r,psr为 CPSR或SPSR 写状态寄存器指令 MSR BKPT immed_16 使ARM处理器进入Debug模式 断点指令 BKPT MRS{cond} Rd←psr,psr为CPSR或SPSR 读状态寄存器指令 MRS SWI{cond} 产生软中断,处理器进入管理模式 软中断指令 SWI 条件码位置 操作 说明 助记符 ARM杂项指令——SWI(软中断指令) SWI指令用来实现在用户模式下的程序调用 管理模式中的代码,从而实现在从户模式变换到管理模式,并且将CPSR保存到管理模式的SPSR中。主要用于用户程序调用操作系统的系统服务,操作系统在SWI异常处理程序中进行相应的系统服务,执行时不影响条件标志位。 SWI{cond} immed_24 SWI指令格式 SWI指令编码 指令执行的条件码 指令传递的参数(24位立即数) ARM杂项指令——SWI(软中断指令) 根据SWI指令传递的参数SWI异常处理程序可以作出相应的处理。SWI指令传递参数有以下两种方法, 指令中的24位立即数指定了用户请求的服务类型,参数通过通用寄存器传递。 MOV R0,#34 ;设置子功能号为34 SWI 12 ;调用12号软中断 指令中的24位立即数被忽略,用户请求的服务类型由寄存器R0的值决定,参数通过其它的通用寄存器传递。 MOV R0,#12 ;调用12号软中断 MOV R1,#34 ;设置子功能号为34 SWI 0 ARM杂项指令——SWI(软中断指令) 在SWI异常中断处理程序中,取立即数的步骤为: 通过对SPSR访问确定是ARM指令还是Thumb指令; 然后取该SWI指令的地址,可通过访问LR寄存器得到; 接着读出该SWI指令,分解出立即数。 SWI_Handler STMFD SP!, {R0-R3, R12, LR} ; 现场保护 MRS R0, SPSR ; 读取SPSR STMFD SP!, {R0} ; 保存SPSR TST R0, #0x20 ; 测试T标志位 LDRNEH R0, [LR,#-2] ; 若是Thumb指令,读取指令码(16位) BICNE R0, R0, #0xFF00 ; 取得Thumb指令的8位立即数 LDREQ R0, [LR,#-4] ; 若是ARM指令,读取指令码(32位) BICEQ R0, R0, #0xFF000000 ; 取得ARM指令的24位立即数 ... LDMFD SP!, {R0-R3, R12, PC}^ ; SWI异常中断返回 ARM杂项指令——MRS(状态寄存器读指令) 在ARM处理器中,只有MRS指令可以对状态寄存器CPSR和SPSR进行读操作。通过读CPSR可以了解当前处理器的工作状态。读SPSR寄存器可以了解到进入异常前的处理器状态。 MRS{cond} Rd,psr MRS指令格式 指令对应编码 指令执行的条件码 目标寄存器,不能为R15 区别CPSR(为0)和SPSR(为1)寄存器 ARM杂项指令——MRS(状态寄存器读指令) 在ARM处理器中,只有MRS指令可以对状态寄存器CPSR和SPSR进行读操作。通过读CPSR可以了解当前处理器的工作状态。读SPSR寄存器可以了解到进入异常前的处理器状态。 MRS{cond} Rd,psr MRS指令格式 应用示例: MRS R1,CPSR ; 将CPSR状态寄存器读取,保存到R1中 MRS R2,SPSR ; 将SPSR状态寄存器读取,保存到R2中 ARM杂项指令——MSR(状态寄存器写指令) 在ARM处理器中,只有MSR可对CPSR和SPSR进行写操作。与MRS配合使用,可实现对CPSR或SPSR寄存器的读-修改-写操作,可以切换处理器模式、或者允许/禁止IRQ/FIQ中断等。 MSR{cond} psr_fields,#immed_8r MSR指令格式1 MSR{cond} psr_fields,Rm MSR指令格式2 指令执行的条件码 CPSR或SPSR 指定传送的区域,可以为以下字
您可能关注的文档
- 山东省2015年高中历史 第12课 鸦片战争课件35 岳麓版必修1.ppt
- 山东省2015年高中历史 第12课 鸦片战争课件41 岳麓版必修1.ppt
- 山东省2015年高中历史 第12课 鸦片战争课件16 岳麓版必修1.ppt
- 山东省2015年高中历史 第12课 鸦片战争课件39 岳麓版必修1.ppt
- 山东省2015年高中历史 第12课 鸦片战争课件44 岳麓版必修1.ppt
- 山东省2015年高中历史 第12课 鸦片战争课件9 岳麓版必修1.ppt
- 山东省2015年高中历史 第15课 辛亥革命课件3 岳麓版必修1.ppt
- 山东省2015年高中历史 第15课 辛亥革命课件16 岳麓版必修1.ppt
- 山东大学 细胞膜的通透性.doc
- 山东省2015年高中历史 第2课 大一统与秦朝中央集权制度的确立课件2 岳麓版必修1.ppt
- 某县委书记中央党校研修班学习小结总结报告.pdf
- 世界一流港口综合评价报告(2025)-中国经济信息社&交通运输部水运科学研究院_可搜索.pdf
- 2026年上海黄埔区高三一模高考历史试卷试题(含答案详解).docx
- 三年级(下)英语同步字帖《人教版》_可搜索.pdf
- 人工智能对汽车行业的影响-思略特_可搜索.pdf
- 2026年春期新教材人教版二年级下册数学 第1单元 有余数的除法 单元核心素养教案.docx
- 体育产业概论(第二版)教学课件第十一章 体育用品业_可搜索.pdf
- 职场实用英语交际教程(中级)课件U9_可搜索.pdf
- 小学语文《课后三表专练》五年级下册(26春)_可搜索.pdf
- 2026年高中政治学业水平考试知识点归纳总结(必修一-四).docx
最近下载
- 全国初级注册安全工程师职业资格考试辅导教材:安全生产实务.docx VIP
- TB∕T 3484-2017 列控系统应答器应用原则 含2025第1号修改单.docx VIP
- 非遗美术创作课件.pptx
- DB41∕T 385-2025 工业与城镇生活用水定额.pdf VIP
- DB41∕T 958-2025 农业与农村生活用水定额.pdf VIP
- Panasonic 松下 【蒸烤箱】NU-SC211W使用说明书.pdf
- 软考初级信息系统运行管理员考试题库历年真题及答案.docx VIP
- DB41∕T 3056-2025 露天矿山生态修复技术规程.pdf VIP
- 长江流域超标准洪水防御预案.docx VIP
- 中等职业学校英语教学大纲教育部.docx VIP
原创力文档

文档评论(0)