|
2014年春季 期末作业考核
7 q9 [& d5 o$ |! p3 H& t《嵌入式系统》
/ R a6 r( {, N) r/ a6 T
i% ^; j0 o1 w2 i3 [! @. k) x. [满分100分
; f7 y+ k8 b+ L& j# U/ v: r: o! @0 r
" e6 G- M0 J4 R" e* v0 U一、判断题(每题3分,共30分)
, \+ U! ^1 g l. K3 T- I: h+ S" C1. 嵌入式系统一般具有实时约束,有时限要求,因此,嵌入式系统一般都采用分时操作系统。
/ k8 K. J- w: {4 Z" y2.嵌入式系统本身具备自举开发能力,用户可以直接在嵌入式设备上做开发。 L G, d# k2 y" ~8 z7 x
3.硬件资源是硬件设计工程师在设计和调试硬件必备的工具,这些资源不包括示波器。
( y0 t# b. R6 i. j4.嵌入式常用编程语言有汇编语言、C语言、C++语言以及Java语言等。1 V' v# h2 O! b& e% g
5.嵌入式 Linux是以Linux为基础的嵌入式操作系统,它是一种开放源代码、软实时、多任务的嵌入式操作系统。- ]' T2 v/ g5 `/ v$ B7 S# S/ }
6.uCLinux是面向支持MMU的处理器平台设计的。
4 F9 x% n: E- u9 v7.ARM指令中的第二个操作数可以是一个8位的立即数,也可以是一个任意的32位立即数。
% ]6 X4 ^( Q! W8.当异常发生时,需要保护程序执行现场,再进行异常处理。其中,现场保护包括返回地址和CPSR的值两个方面的内容。
" r7 }4 s) @9 ^% ]* g9.MAP用于定义一个结构化的内存表的首地址,可以用“*”代替。; k2 {9 \! \- c" b
10.SPACE分配的内存单元用0初始化,DCB分配的内存用指定的值初始化。6 y' z: w4 t7 F' ~6 E5 m% i, i
二、简答题(每题8分,共40分)! L+ [% J- r& b$ U% V( ~( d
1. 什么是可编程片上系统(SOPC)?
2 W7 l) v$ ^5 D# d* A/ b6 A; A2. 什么是嵌入式交叉调试?交叉调试的方式有哪几种?% n- J0 b0 H# a9 Y
3.嵌入式ARM Linux系统的一般开发步骤是什么?! b6 u# ?* m; W6 B8 x* n
4.试举例说明LDR和STR指令的前变址、后变址和回写前变址3种变址模式。8 b- ]/ [* g8 g5 {5 b+ ^+ l
5.从IRQ和FIQ处理程序返回时,如何写返回指令?
: f1 n! A& C$ h% S. I三、问答及应用题(每小题15分,共30分)/ [; s. [: L8 {! v4 [/ S
1.简述ARM的CPSR各状态位的作用,并说明如何对其进行操作,以改变各状态位。# L6 u( ~2 d) r" {; u
2.假设已经在C程序中定义了一个数组int Fi[100],数组元素初始值为0。试编写一个ARM汇编子程序Fibonacci,实现将斐波拉契数列的前100项存入数组Fi[100]中,其中前两项为1和1,分别存入到Fi[0]和Fi[1],其他项依次存入数组其余元素,数组的地址作为参数传递给汇编子程序。斐波拉契数列是形如:1,1,2,3,5,8,13,…的数列。1 U" w' Q1 `; x" X2 F8 F% c# ~
+ x% E$ e u0 Q3 X |
|