|
期末作业考核
《嵌入式系统》
满分100分
一、判断题(每题3分,共30分)
1. 嵌入式系统一般具有实时约束,有时限要求,因此,嵌入式系统一般都采用分时操作系统。
2.嵌入式系统本身具备自举开发能力,用户可以直接在嵌入式设备上做开发。
3.硬件资源是硬件设计工程师在设计和调试硬件必备的工具,这些资源不包括示波器。
4.嵌入式常用编程语言有汇编语言、C语言、C++语言以及Java语言等。
5.嵌入式 Linux是以Linux为基础的嵌入式操作系统,它是一种开放源代码、软实时、多任务的嵌入式操作系统。
6.uCLinux是面向支持MMU的处理器平台设计的。
7.ARM指令中的第二个操作数可以是一个8位的立即数,也可以是一个任意的32位立即数。
8.当异常发生时,需要保护程序执行现场,再进行异常处理。其中,现场保护包括返回地址和CPSR的值两个方面的内容。
9.MAP用于定义一个结构化的内存表的首地址,可以用“*”代替。
10.SPACE分配的内存单元用0初始化,DCB分配的内存用指定的值初始化。
二(每题8分,共40分)
1. 什么是可编程片上系统(SOPC)?
2. 什么是嵌入式交叉调试?交叉调试的方式有哪几种?
3.嵌入式ARM Linux系统的一般开发步骤是什么?
4.试举例说明LDR和STR指令的前变址、后变址和回写前变址3种变址模式。
5.从IRQ和FIQ处理程序返回时,如何写返回指令?
三、问答及应用题(每小题15分,共30分)
1.简述ARM的CPSR各状态位的作用,并说明如何对其进行操作,以改变各状态位。
2.假设已经在C程序中定义了一个数组int Fi[100],数组元素初始值为0。试编写一个ARM汇编子程序Fibonacci,实现将斐波拉契数列的前100项存入数组Fi[100]中,其中前两项为1和1,分别存入到Fi[0]和Fi[1],其他项依次存入数组其余元素,数组的地址作为参数传递给汇编子程序。斐波拉契数列是形如:1,1,2,3,5,8,13,…的数列。 |
|