嵌入式系统实践上机实践报告--Thumb汇编指令和ARM工作模式.docx
《嵌入式系统实践上机实践报告--Thumb汇编指令和ARM工作模式.docx》由会员分享,可在线阅读,更多相关《嵌入式系统实践上机实践报告--Thumb汇编指令和ARM工作模式.docx(6页珍藏版)》请在优知文库上搜索。
1、上机实践成绩: 创新实践成绩: 上机实践日期:上机实践时间:2学时计算机科学技术系上机实践报告课程名称:嵌入式系统实践年级:指导教师:姓名:上机实践名称:ThUmb汇编指令和学号:ARM工作模式上机实践编号:组号:1一、实验目的1. 掌握ARM处理器的ThUmb指令使用方法;2. 学会使用msr/mrs指令实现ARM处理器工作模式的切换;3. 掌握Id中如何使用命令行指定代码段起始地址;二、实验设备1. 硬件:EmbestEDUKIT-IIIPC机2. 软件:EmbestIDEforARM三、实验内容1. 使用THUMB汇编语言,完成基本reg/mem访问,以及简单的算术/逻辑运算。2. 使用
2、THUMB汇编语言,完成较为复杂的程序分支,push/pop,领会立即数大小的限制,并体会ARM-THMB的区别。3. 编写程序从ARM状态切换到ThUnlb,在ARU状态下把R2赋值为0x12345678,在ThUnlb状态下把R2赋值为0x87654321,分别观察两个状态下的CPSR、SPSR的值和各个标志位。4. 通过ARM汇编指令,在各种处理器模式下切换并观察各种模式下寄存器的区别;掌握ARM不同模式的进入与推出。四、实验原理1 .ARM处理器工作状态ARM处理器共有两种工作状态: ARM:32位,这种状态下执行字对准的ARM指令; Thumb:16位,这种状态下执行半字对准的ThU
3、mb指令在Thumb状态下,程序计数器PC使用位1选择另一个半字。注意:ARMThumb之间状态的切换不影响处理器的模式或寄存器的内容。ARM处理器在两种工作状态之间可以切换。1)进入ThUmb状态。当操作数寄存器的状态位0为1时,执行BX指令进入ThUmb状态。如果处理器在Thilmb状态进入异常,则当异常处理(IRQ,FIQ,ndef,Abort和SWI)返回时,自动切换到ThUmb状态。2)进入ARM状态。当操作数寄存器的状态位0为0时,执行BX指令进入ARM状态。处理器进行异常处理(IRQ,FIQ,Undef,Abort和SWI)。在此情况下,把PC放入异常模式链接寄存器中。从异常向量
4、地址开始执行也可以进入ARM状态。2 Thumb状态的寄存器集Thumb状态下的寄存器集是ARM状态下寄存器集的子集。程序员可以直接访问8个通用的寄存器(ROR7),PCzSPzLR和CPSP。每一种特权模式都有一组SP,LR和SPSR。 Thumb状态的R0R7与ARM状态的R0R7是一致的。 Thumb状态的CPSR和SPSR与ARM状态的CPSR和SPSR是一致的。 Thumb状态的SP映射到ARM状态的Rl3。Thumb状态的LR映射到ARM状态的RI4。Thumb状态的PC映射到ARM状态的PC(R15)Thumb寄存器与ARM寄存器的关系如图3-7所示。Tlnunb状态ARM状态R
5、ORO;低寄存器,高寄存器ARlRlR2R2R3R3R4R4R5R5R6R6R7R7R8R9RlORllR12SPSP(R13)LR4LR(RM)PCPC(R15)CPSRCPSRSPSRSPSR图3-7寄存器状态图3本实验涉及到的as伪操作.code1632code伪操作用于选择当前汇编指令的指令集。参数16选择ThUmb指令集,参数32选择ARM指令集。语法格式.code1632.thumb同.code16o.arm同.code32o.align对齐方式:通过添加填充字节使当前位置满足一定的对齐方式。语法格式.alignalignment)rfill,max其中alignment用于指定对
6、齐方式,可能的取值为2的次累,缺省为4。ARM7基础实验教程fill是填充内容,缺省用O填充。max是填充字节数最大值,如果填充字节超过max,就不进行对齐.示例.align4 .ARM处理器模式除用户模式外的其他模式称为特权模式。它们可以自由的访问系统资源和改变模式。其中的5种称为异常模式,即 FIQ(FastInterruptrequest); IRQ(InterruptReQuest); 管理(SUPerViSor); 中止(AbOrt); 未定义(Undefined)。当特定的异常出现时,进入相应的模式。每种模式都有某些附加的寄存器,以避免异常出现时用户模式的状态不可靠。剩下的模式是系
7、统模式。仅ARM体系结构V4以及以上的版本有该模式。不能由于任何异常而进入该模式。它与用户模式有完全相同的寄存器,然而它是特权模式,不受用户模式的限制。它供需要访问系统资源的操作系统任务使用,但希望避免使用与异常模式有关的附加寄存器。避免使用附加寄存器保证了当任何异常出现时,都不会使任务的状态不可靠。5 .程序状态寄存器前一节提到的程序状态寄存器CPSR和SPSR包含了条件码标志,中断禁止位,当前处理器模式以及其他状态和控制信息。每种异常模式都有一个程序状态保存寄存器SPSR。当异常出现时,SPSR用于保密CPSR的状态。CPSR和SPSR的格式如下:313029282726876543210
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 实践 上机 报告 Thumb 汇编 指令 ARM 工作 模式