2022年嵌入式试卷A卷答案 .pdf
长江大学试卷院(系、部)班级姓名学号序号.密封.线.2011 2012 学年第 2 学期 嵌入式系统设计与应用课程考试试卷答案( A 卷) 专业:计算机科学年级: 10 级 考试方式:闭卷学分: 3 考试时间: 110 分钟一、填空 (每空 1 分,共 20 分) 1、 ARM微处理器有7 种工作模式,它们分为系统模式、FIQ 模式、中止模式、未定义模式、快中断模式和用户模式、管理模式。2、 ARM 处理器有两种总线架构,冯洛伊曼和哈佛。3、 ARM核有多个寄存器,其中大部分用于通用寄存器,有小部分作为专用寄存器,R15 寄存器用于存储PC ,R13通常用来存储 SP 4、 ARM 支持两个指令集, ARM核因运行的指令集不同, 分别有两个状态 ARM 和THUMB 。状态寄存器CPSR的 T 位反映了处理器运行不同指令的当前状态5、 ARM 微处理器复位后,PC的地址通常是0X0 6、 编译链接代码时,有两种存储代码和数据的字节顺序,一种是大端对齐,另一种是小端对齐7.ARM9采用 32 位架构,ARM 指令集,其 5 级流水线分别是取指、译码、执行、访存、回写。二简答 (每题 5 分,共 30 分) 1 关键字 static的作用是什么?(1)在 C语言中,关键字static有三个明显的作用:一旦声明为静态变量, 在编译时刻开始永远存在, 不受作用域范围约束, 但是如果是局部静态变量, 则此静态变量只能在局部作用域内使用, 超出范围不能使用, 但是它确实名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 还占用内存 , 还存在 . (2)在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。(3)在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。2、在嵌入式系统某工程中,要求设置一绝对地址为0 x67a9 的整型变量的值为0 xaa55。编写代码完成这一任务。int *ptr; ptr = (int *)0 x67a9; *ptr = 0 xaa55; 3、嵌入式开发环境主要包括哪些组件?嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括宿主机目标机(评估电路板)基于 JTAG的 ICD 仿真器、或调试监控软件、或在线仿真器ICE 运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境嵌入式操作系统4、搭建嵌入式开发环境,连接目标板,一般使用什么通信接口连接?在Windows主机上使用什么软件建立连接?答: RS-232,以太网口、并口在 Windows主机上使用超级终端软件5、用变量a 给出下面的定义a) 一个整型数( An integer) int a b) 一个指向整型数的指针( A pointer to an integer) int *a c) 一个指向指针的的指针,它指向的指针是指向一个整型数( A pointer to a pointer to an intege)r *(int *a) int*a d) 一个有 10 个整型数的数组( An array of 10 integers)int a10 e) 一个有 10 个指针的数组,该指针是指向一个整型数的。(An array of 10 pointers to integers) int *a10 6、写出下列缩写的英文全称和中文含义? ARM : Advanced RISC Machine :先进精简指令集设计。RTOS : real time operation system ,实时操作系统SOC : System on Chip,片上系统MMU :memory management unit ,内存管理单元名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - 三 单项选择题(每小题2 分,共 20 分)1 在 CPU和物理内存之间进行地址转换时,( B )将地址从虚拟(逻辑)地址空间映射到物理地址空间。A、TCB B、MMU C 、CACHE D、DMA 2 关于 ARM 汇编和 C语言混合编程下列错误的是: D AC语言中可以直接嵌入某些汇编指令B. C 语言中可以调用汇编的子程序C. 汇编程序中可以调用C语言的函数D. C 语言嵌入的汇编指令时,不可使用C的变量3 处理机主要由处理器、存储器和总线组成,总线包括( D ) 。A、数据总线、串行总线、逻辑总线、物理总线B、并行总线、地址总线、逻辑总线、物理总线C、并行总线、串行总线、全双工总线D、数据总线、地址总线、控制总线4 下面不属于嵌入式操作系统的是: C AVxWorks B. ucosII C. MacOS D. WinCE 5. 下面 B 特性不符合嵌入式操作系统特点。A、实时性 B、不可定制C、微型化 D、易移植6. 下面哪种操作系统不属于商用操作系统 B A. windows xp B. Linux C. VxWorks D. WinCE 7.下面关于C语言程序的描述,正确的是 C 。A、总是从第一个定义的函数开始执行B、要调用的函数必须在main() 函数中定义C、总是从main() 函数开始执行D、main() 函数必须放在程序的开始8. 在嵌入式ARM 处理器中,下面哪种中断方式优先级最高 A A. Reset B. 数据中止C. FIQ D. IRQ 9. 以下叙述中,不符合RISC指令系统特点的 B 。A、指令长度固定,指令种类少B、寻址方式种类丰富,指令功能尽量增强C、设置大量通用寄存器,访问存储器指令简单D、选取使用频率较高的一些简单指令10. 在下列 ARM 处理器的各种模式中, D 模式有自己独立的R8-R14 寄存器。A、系统模式 (System) 、B、终止模式 (Abort) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - C、中断模式 (IRQ) D、快中断模式(FIQ) 四综合题( 30分)1. 若内存按字节编址,用存储容量为32K 8比特的存储器芯片构成地址编号A0000H DFFFFH 的内存空间,则至少需要多少片?请写出计算过程(10分)本题考查内存容量的计算。给定起、止地址码的内存容量 = 终止地址 起始地址 + 1。将终止地址加1 等于 E0000H,再减去起始地址,即E0000H A0000H = 40000H 。十六进制的 (40000)16 = 218。-5 分组成内存储器的芯片数量 = 内存储器的容量/单个芯片的容量。-5 分218/(32*210) = 218/215 = 232.某计算机的时钟频率为400MHz ,测试该计算机的程序使用4 种类型的指令。 每种指令的数量及所需指令时钟数(CPI)如下表所示,则该计算机的指令平均时钟数为?;该计算机的运算速度约为? MIPS 。 ( 10 分)指令类型指令数目(条)每条指令需时钟数1 160000 1 2 30000 2 3 24000 4 4 16000 8 指令平均时钟数约为(160000 1 + 30000 2 + 24000 4+16000 8)/(160000+30000+24000+16000) = 444000/230000 1.93-5 分该计算机的运算速度约为400M/1.93 207.3 MIPS-5分3.试比较外部中断、软件中断和异常之间的区别。(10分)外部中断:由于CPU 外部的原因而改变程序执行流程的过程,属于异步事件,又称为硬件中断,可以被屏蔽。3 分软件中断(又称自陷) :表示通过处理器所拥有的软件指令、可预期地使处理器正在执行的程序的执行流程发生变化,以执行特定的程序。自陷是显式的事件,需要无条件地执行。典型的自陷指令如Motorola 68000 系列中的 Trap 指令、 ARM 中的 SWI 指令和 Intel 80 x86中的 INT 指令。 3 分异常:由 CPU 内部的原因(比如遇到非法指令)或外部的原因(比如访存的错误)引起的事件。 4 分名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -