|
2014年春季 期末作业考核( G4 J$ e" v" `9 M- q0 k
《嵌入式系统》
w) V" J' t" q8 U2 _
0 b, z/ p* X1 M9 g7 o' M5 N满分100分
2 v" S/ J. n. n a
3 p' y8 ?) J# d+ ~) {: \0 k一、判断题(每题3分,共30分)! |) m. d6 W: O! D8 P
1. 嵌入式系统一般具有实时约束,有时限要求,因此,嵌入式系统一般都采用分时操作系统。
* ?& O1 H$ j1 A/ T* j2.嵌入式系统本身具备自举开发能力,用户可以直接在嵌入式设备上做开发。
$ m6 e7 A/ T' W3.硬件资源是硬件设计工程师在设计和调试硬件必备的工具,这些资源不包括示波器。: Z! o. Y4 K6 @0 ]9 M+ F
4.嵌入式常用编程语言有汇编语言、C语言、C++语言以及Java语言等。
3 E$ \ D$ I: m# i! Q/ E7 J5.嵌入式 Linux是以Linux为基础的嵌入式操作系统,它是一种开放源代码、软实时、多任务的嵌入式操作系统。2 h' v0 M w# v6 a* X
6.uCLinux是面向支持MMU的处理器平台设计的。- ~: u; g! f/ N- s6 i
7.ARM指令中的第二个操作数可以是一个8位的立即数,也可以是一个任意的32位立即数。/ X8 \/ y! \' }+ r. ?3 K! h! ]
8.当异常发生时,需要保护程序执行现场,再进行异常处理。其中,现场保护包括返回地址和CPSR的值两个方面的内容。: ^5 f& m; m! j; U
9.MAP用于定义一个结构化的内存表的首地址,可以用“*”代替。
7 I# ^ [( B1 @2 ?10.SPACE分配的内存单元用0初始化,DCB分配的内存用指定的值初始化。
7 n3 V! H; L2 x0 [# F# c二、简答题(每题8分,共40分)
; }2 U4 g2 M! R$ f; b! V1. 什么是可编程片上系统(SOPC)?6 q/ x1 K& Z! W
2. 什么是嵌入式交叉调试?交叉调试的方式有哪几种?( K+ N% i0 \0 k0 P
3.嵌入式ARM Linux系统的一般开发步骤是什么?
x6 N4 o" F% E. z" Z4 o9 r4.试举例说明LDR和STR指令的前变址、后变址和回写前变址3种变址模式。& a$ R1 j+ y. A D X; U) b
5.从IRQ和FIQ处理程序返回时,如何写返回指令?
2 s+ O3 l3 X9 _0 N6 j1 V3 R三、问答及应用题(每小题15分,共30分)' J! C9 o- {7 p8 n6 O4 @0 U
1.简述ARM的CPSR各状态位的作用,并说明如何对其进行操作,以改变各状态位。
( ~( X' D% j7 t. K" s2.假设已经在C程序中定义了一个数组int Fi[100],数组元素初始值为0。试编写一个ARM汇编子程序Fibonacci,实现将斐波拉契数列的前100项存入数组Fi[100]中,其中前两项为1和1,分别存入到Fi[0]和Fi[1],其他项依次存入数组其余元素,数组的地址作为参数传递给汇编子程序。斐波拉契数列是形如:1,1,2,3,5,8,13,…的数列。
! r' `) B3 L) F: y* t
, l/ D$ I A$ @4 N1 W' e/ G
/ z6 x1 X2 v# o" D/ t |
|