嵌入式复习题 联系客服

发布时间 : 星期六 文章嵌入式复习题更新完毕开始阅读e8d3f1b70912a21615792945

老师给的题:

1.已知R0=8,R2=5,执行MOV R0,R2,LSL #2后,r0=20,r2=5

2.已知r0=0x00000000,r1=0x00009000, men32[0x00009000]=0x01010101,mem32[0x00009004]=0x02020202 问执行以下指令后,r1,r0的情况 。 1) ldr r0,[r1,#0x4]! ;r0=0x02020202,r1=0x00009004 2) Ldr r0, [r1,#0x4] ;r0=0x02020202,r1=0x00009000 3) Ldr r0,[r1], #0x4 ;r0=0x01010101,r1=0x00009004 3.已知men32[0x80018]=0x03,men32[0x80014]=0x02,men32[0x80010]=0x01,r0=0x00080010, r1=0x00000000,r2=0x00000000,r3=0x00000000 问执行ldmia r0!,{r1-r3}后,r0,r1,r2,r3的情况。

答: r1=0x01,r2=0x02,r3=0x03,r0=0x80018 4.已知r1=0x00000002,r4=0x00000003,sp=0x00080014, 问执行stmfd sp!,{r1,r4}后,r1,r4,sp的情况。

答: r1=0x00000002, r4=0x00000003,sp=0x000800010 5.已知r0=0x0,cpsr=0xd3,执行以下指令后r0的情况 Mrs r0,cpsr ; r0=0xd3 Bic r0,r0,#0x80 ; r0=0x53

1、 写出嵌入式系统的定义。

答:以应用为中心、以计算机技术为基础、软硬件可裁减、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

2、ARM核中什么寄存器用于存储PC?R13通常用来存储什么?R14通常用来存储什么? 答:R15用于程序计数寄存器PC,R13通常用来做堆栈指针寄存器,R14通常用来做链接寄存器,保存函数调用的返回地址。

3.简述嵌入式系统的概念、组成及特点。 答:嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。

组成:一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成。 其特点有:

1)是专用的计算机系统,用于特定的任务; 2)资源较少,可以裁减;

3) 功耗低,体积小,集成度高,成本低; 4)使用实时操作系统;

5) 可靠性要求更高,具有系统测试和可靠性评估体系; 6)运行环境差异大

7)大部分程序固化在 ROM中; 8) 较长的生命周期;

9)嵌入式微处理器通常包含专用调试电路 4、从嵌入式系统底层到上层应用软件,试分析嵌入式计算系统的组成主要分为哪几个部分,并写出各部分所完成的功能。

答:(1)硬件层;(2)中间层(嵌入式系统初始化,硬件相关的驱动程序);(3)软件层(操作系统、文件系统、GUI,网络及通用组件);(4)功能层.

5、ARM处理器有几种工作模式?并做说明每种工作模式的含义。 答:ARM处理器有7种工作模式:

用户模式(usr)- 正常程序执行的模式

快速中断模式(fiq)- FIQ异常响应时进入此模式 中断模式(irq)- IRQ异常响应时进入此模式

管理员模式(svc)- 系统复位和软件中断响应时进入此模式 中止模式(abt)- 用于虚拟存储及存储保护

系统模式(sys)- 与用户类似,但有直接切换到其它模式等特权 未定义模式(und)- 未定义指令异常响应时进入此模式 除了用户模式外,其他模式均可视为特权模式 7. 寄存器CPSR,SPSR的功能各是什么?

答:1)CPSR包含条件码标志、中断禁止位、当前处理器模式以及其它状态和控制信息。所有处理器模式下都可以访问当前的程序状态寄存器CPSR。

2)在每种异常模式下都有一个对应的物理寄存器——程序状态保存寄存器SPSR。当异常出现时,SPSR用于保存 CPSR的状态,以便异常返回后恢复异常发生时的工作状态。 8. ARM的异常有哪几种,各进入何种工作模式?他们退出各采用什么指令? 答:ARM微处理器的异常状态:7种异常 1)复位(Reset)异常(管理模式);

2)未定义指令(undefined instruction)异常(未定义模式); 3)软件中断(SWI)异常(管理模式);

4)指令预取中止(Prefech Abort)异常(中止模式); 5)数据访问中止(Data Abort)(中止模式); 6)快速中断请求(FIQ)(FIQ模式); 7)外部中断请求(IRQ)(IRQ模式)。 异常返回指令:

1)SWI,未定义的返回:MOVS PC,R14;

2)IRQ,FIQ,预取中止的返回:SUBS PC,R14,#4;

3)数据中止返回并重新存取:SUBS PC,R14,#8

异常中断的优先级:复位(最高优先级)--> 数据异常中止--->FIQ --> IRQ--->预取指异常 中止--->SWI---->未定义指令(包括缺协处理器)。

9.ARM体系结构的寄存器组织:37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器,哪些寄存器是可编程访问的,取决微处理器的工作状态及具体的运行模式。 47.表示递增和递减的满堆栈和空堆栈有哪几种组合,请比较它们的特点。 答:有4种类型的堆栈,表示递增和递减的满堆栈和空堆栈的各种组合。 ①满递增:堆栈通过增大存储器的地址向上增长,堆栈指针指向内含有效数据项的最高地址。指令如LDMFA,STMFA等。

②空递增:堆栈通过增大存储器的地址向上增长,堆栈指针指向堆栈上的第一个空地址。指令如LDMEA,STMEA等。 ③满递减:堆栈通过减小存储器的地址向下增长,堆栈指针指向内含有效数据项的最低地址。指令如LDMFD,STMFD等。

④空递增:堆栈通过减小存储器的地址向下增长,堆栈指针指向堆栈下的第一个空地址。指令如LDMED,STMED等。

45.ARM有15个通用寄存器、一个或两个状态寄存器和PC,有些模式共用同一个寄存器,一共具有37个寄存器。

120.寄存器R14的两种特殊用途:

存放当前子程序的返回地址;当发生异常中断的时候,该模式下的特定物理R14被设置成该异常模式将要返回的地址。

124.ARM7采用的是三级流水技术,指令分为三个阶段执行:取指、译码、执行;

ARM9采用的是五级流水技术,指令分为三个阶段执行:取指、译码、执行、存储器访问、寄存器写操作。

139. 嵌入式操作系统的作用是什么?请举出3种常见的操作系统。

答:用于管理存储器分配、中断处理、任务间通信和定时器响应,以及提供多任务处理等功能。嵌入式操作系统,大大地提高了嵌入式系统硬件工作效率,并为应用软件开发提供了极大的便利。

3种常见的操作系统:WinCE、Vxworks、uClinux。

148.ARM处理器共有多少个32位寄存器,多少个为通用寄存器,多少个状态寄存器。 答:共有37个32位寄存器,其中31个为通用寄存器,可用于累加操作,6个为状态寄存器。

164.简述嵌入式操作系统与通用操作系统的区别。

答:通用操作系统是一种通用的操作系统,可运行在不同的硬件平台。而嵌入式操作系统与一般的Windows操作系统不同,其是一种专用、可定制的特点。 程序。

4.写出完成下列操作的指令 (1)R0=16 MOV R0,#16; (2)R1=R0*4 MUL R1,R0,#4; (3)R0=R1/16 MOV R0,R1,LSL#4; (4)R1=R2*7 MUL R1,R2,#7; 5.下列指令完成什么操作

(1)ADDS R0,R1,R1,LSL #2 R0=R1+(R1<<4); (2)RSB R2,R1,#0 R2=R1-0 (3)ADD R0,R1,R1,LSL #1 R0=R1+(R1<<2) (4)SUB R0,R0,R1,LSL #4 R0=R0-(R1<<16) (5)ADD R0,R0,R1,LSL #7 R0=R0+(R1<<128) (6)MLA R0,R1,R2 R0=R1×R2

(7)SMULL R0,R1,R2,R3 R0=(R2×R3)的低32位,R1=(R2×R3)的高32位 (8)BL LABEL 当程序无条件跳转到标号LABEL处执行时,同时将当前的PC值保存到R14中

12.说明指令STMIA r12!, {r0-r11}的操作功能。 将R0-R11十二个寄存器中的32位数据,存储到R12地址指针为起始地址的内存中,地址的操作方式是先操作、后增加,并更新地址。