嵌入式系统考前复习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式系统考前复习题终结版(节操落地版,不看考完定后悔)
、填空题
1.嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应
应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

2.请列举2个嵌入式实时操作系统:WinCE操作系统和Linux操作系统。

3.ARMv7M采用的异常模型理论上预定义了256个异常类型,其中包括11个系
统异常类型和4+L个档位,然而实际上CortexM3只存在7个系统异常类型
4.Bootloader主要功能是:系统初始化、加载和运行内核程序。

5.RAM存储器有两种,分别是:SRAM和DRAM;现在市场上两种主要的非易
失闪存技术也有两类,分别是:NorFlash和MandFlash。

6.CortexM3有两种工作模式:handler模式和线程模式。

7.CortexM3支持的指令集为Thumb-2指令集的子集。

8.在CM3控制内核中R13对应的有两个堆栈指针,分别是主堆栈指针(MSP)和
进程堆栈指针(PSP)指针。

9.C编译器没有(选填“有”或“没有”)直接支持CortexM3的位带区操作。

10.较为普遍的一种Cortex的编程开发调试环境为ARM公司的RealViewMDK。

11.嵌入式系统主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统构成。

12.I/O接口电路数据传送方式有:查询、中断、DMA、I/O通道和I/O处理机方
式。

13.ARM体系结构所支持的最大寻址空间为4GB。

14.CortexM3采用的两种提升中断响应速度的措施为尾链(Tailchaining)和迟到处
理(LateArriving)。

15.CortexM3的PSR由3个子状态寄存器APSR、IPSR和EPSR组成。

16.指令LDR.WR0,[R1,#20!]为带顶索引的指令,而STR.WR0,[R1],#-20
则为带后索引的指令。

17.访问特殊功能寄存器指令MSR和MRS必须在特权级下使用。

18.CM3的4GB寻址空间中的代码区和片上外设区各有1MB的位带区,并且可
映射至32MB的位带别名映射区。

19.操作系统的内核负责管理各个任务,或者为每个任务分配CPU时间,并且
负责任务之间的通信,内核的基本服务是任务调度(或进程调度)。

20.在CortexM3中打开或关闭中断除了可以通过MSR指令写PRIMASK外,还
可使用CPS指令快速完成。

二、选择题
1.嵌入式系统应用软件一般在宿主机上开发,在目标机上运行,因此需要一个
(B)环境。

A.交互操作系统
B.交叉编译C交互平台D.分布式计算
2.RS232-C串口通信中,表示逻辑1的电平是(口)。

A、0v
B、3.3v
C、+5v〜-H15v
D、一5v15v
3.若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDRR0,[R1,#8]!
后R0的值为(D)。

A.0x2000
B.0x86
C.0x2008
D.0x39
4.假设R1=0x31,R2=0x2则执行指令ADDR0,R1,R2LSL#3后,R0的值是(C)
A.0x33
B.0x34
C.0x39
D.0x38
5.Cache用于存放主存数据的部分拷贝,主存单元地址与Cache单元地址之间
的转换用()完成。

A.硬件
B.软件
C.用户
D.程序员
6.下面哪个系统不属于嵌入式系统。

()
A、“天河一号”计算机系统
B、车载多媒体终端
C、iPad平板电脑
D、iPhone手机
7.以下关于CortexM系列处理器指令系统的描述正确的一项是()A、支持
ARM和thumb指令集B、仅支持thumb指令集
C、支持ARM和thumb-2指令集
D、仅支持thumb-2指令集
8.关于CortexM3处理器,以下描述不正确的一项为()
A、一定有NVIC
B、比ARM7具有更高的代码密度
C、一定有MPU
D、支持4G的存储空间
9.CortexM3处理器具有()个堆栈指针
A、1
B、2
C、3
D、4
10.CortxM3处理器中堆栈的内存实现方法为()
A、向上增长的空栈
B、向上增长的满栈
C、向下增长的空栈
D、向下增长的满栈
11.CortexM3支持()种操作模式
A、1
B、2
C、5
D、7
12.CortexM3采用()级流水线结构
A、3
B、4
C、5
D、7
13.CortexM3中所有数据操作指令都能访问的通用寄存器为()
A、R0~R7
B、R8~R12
C、R0~R12
D、R0~R15
14.CortexM3指令集中专用于访问特殊寄存器的指令为()
A、MOV
B、LDR
C、STR
D、MSR
15.以下关于uC/OS-II描述正确的一项为()
A、是一种单任务实时操作系统
B、是一种协作式多任务实时操作系统
C、是一种抢占式多任务实时操作系统
D、是一种时间片轮转式多任务实时操作系统
三、简答题(每小题6分,共30分)
1.什么是小端和大端存储器组织?
答:1)小端存储器组织是较高的有效字节存放在较高的存储器地址,较低的有效字节存放在较低的存储器地址(同同小)。

2)大端存储器组织是较高的有效字节存放在较低的存储器地址,较低的有效字节存放在较
高的存储器地址(正反大)。

请简述嵌入式系统开发的基本流程。

2.请简述嵌入式系统开发的基本流程。

答:1)系统定义与需求分析;
2)系统设计方案的初步确立;
3)初步设计方案性价比评估与方案评审论证;4)完善初步方案、初步
方案实施;5)软硬件集成测试;
6)系统功能性能测试及可靠性测试。

3.寄存器CPSR,SPSR的功能各是什么?
答:1)CPSR包含条件码标志、中断禁止位、当前处理器模式以及其它状
态和控制信息。

所有处理器模式下都可以访问当前的程序状态寄存器
CPSR。

在每种异常模式下都有一个对应的物理寄存器——程序状态保存寄存器SPSR。

当异常出现时,SPSR用于保存CPSR的状态,以便异常返回后恢复异常发生时的工作状态。

4.指令ADR,ADRL、LDR、NOP是如何处理地址值读入到寄存器中的?
答:ADR是将基于PC或者寄存器的地址值读入到寄存器的,ADR伪指令
通常被替换成一条ADD指令或SUB指令来实现该ADR指令的功能。


ADRL伪指令与ADR指令的最大不同之处是,它可以读取更大范围内的
地址,而且被编译器替换成2条数据处理指令。

LDR将一个32位的立即
数或者一个地址值读取到寄存器中。

大范围的地址读取。

NOP在汇编时
将被替换成ARM中的空操作。

5.什么是CMSIS?CMSIS4.0包含哪些组件?
答:CMSIS是Cortex微控制器软件接口标准的英文简称,是ARM公司推
出的跨所有Cortex-M芯片供应商产品将软件接口标准化,以实现与处理
器和外设之间的一致且简单的软件接口,从而简化软件的重用,缩短微控
制器开发人员新手的学习过程。

CMSIS4.0主要包括以下组件
(1)CMSIS-CORE:Cortex-M处理器内核和外设的应用程序接口(API)(2)
CMSIS-Driver:定义通用外设驱动接口及保证驱动可重用的中间件
(3)CMSIS-RTOSAPI:通用实时操作系统的API.
(4)CMSIS-Pack:基于XML的软件描述包(PDSC)。

(5)CMSIS-SVD:外设的系统描述视图.
(6)CMSIS-DAP:调试访问接口.
6.CortexM3的存储器有哪些访问属性?
答:CortexM3的存储器规定了4种属性:(1)可否缓冲、(2)可否缓存、(3)可否执行、(4)可否共享
7.寄存器R13,R14,R15的专用功能各是什么?
答:1)寄存器R13保存堆栈指针SP;2)寄存器R14用作子程序链接寄存器,也称为LR,用以保存返回地址;3)R15(PC)用作程序计数器。

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

答:通用操作系统是一种通用的操作系统,可运行在不同的硬件平台。

而嵌入式操作系统与一般的通用操作系统不同,其是一种专用、可定制的特点。

9.简述看门狗定时器的作用及必要性。

答:当系统程序出现功能错乱,引起系统程序死循环时,能中断该系统程序的不正常运行,恢复系统程序的正常运行。

嵌入式系统由于运行环境的复杂,及所处环境有较强的干扰信号,或系统程序本身的不完善,不能排除系统程序不会出现死循环现象。

在系统中加入看门狗部件,当系统程序出现死循环时,看门狗定时器产生一个具有一定时间宽度的复位信号,迫使系统复位,恢复系统正常运行。

10.ARM常见的寻址方式有哪些?
答:寻址方式是根据指令中给出的地址码字段来实现寻找真实操作数地址的方式。

ARM处理器具有9种基本寻址方式。

1.立即寻址;4.寄存器间接寻址;
2.寄存器寻址;5.变址寻址;
3.寄存器移位寻址;6.多寄存器寻址;
7.堆栈寻址
8.块拷贝寻址
9.相对寻址
四、程序题(共30分)
2.请给下列程序加上注释
(1)CMPR0,#NUM
(2)MOVHSPC,LR;
(3)ADRR3,JTable;
(4)LDRPC,[R3,R0,LSL#2];
(5)BLFunc;
3.写出完成下列操作的汇编指令
(1)R0=16:MOVR0,#16;
(2)R1=R0*4:MULR1,R0,#4;
(3)R0=R1/16:MOVR0,R1,LSL#4;
(4)R1=R2*7:MULR1,R2,#7;
4.程序解释
AREACOPYBS,CODE,READONLY;定义一个代码段ENTRY;程序入口
LDRRO,=SRC;取得原数据表的表头LDRR1,=DST;取得目标数据表的表头
MOVR2,#20
BCOPYMOVSR3,R2,LSR,#3
BEQCWORD
OCOPYLDMIAR0!,{R4-R11}
存到R4~R11中,R0值更新
STMIAR1!,{R4-R11} 地址上,R1值更新
SUBSR3,R3,#1
BNEOCOPY
CWORDANDR2,R2,#7 ;R4作为循环控制
;R3=R2<<3逻辑右移3位
;若Z=1,跳转至UCWORD
;加载R0指向的地址上的多字数据,保;将R4-R11的数据存储到R1指向的
;R3=R3-1
;若Z=0,跳转至uOCOPY
;R2=R2&7
BEQSTOP ;若Z=1,跳转至USTOP WCOPYLDRR3,{R0},#4;将R3中的字数据读入以R0为地址
的存储器中,并将新地址R0+4写入R1
STRR3,{R1},#4;将R3中的字数据写入以R1为地址
的存储器中,并将新地址R1+4写入R1
SUBSR2,R2,#1;R2=R2-1
BNEWCOPY;若Z=0,跳转至UWCOPY
STOP……
2.有8个共阳极的发光二极管分别接在P
3.31,P3.29~P3.23上,请写出主程序。

相关文档
最新文档