Files

228 lines
11 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
tags: [嵌入式系统, 试题]
create time: 2026-06-10 10:41
---
# 试题 3 — 武汉科技大学《嵌入式系统》
## 概述
- **课程**:嵌入式系统
- **学校**:武汉科技大学
- **题型**:填空题、选择题、名词解释、简答题、综合题
- **知识点**:嵌入式系统定义、ARM 存储器体系、处理器模式、RTOS 调度
> [!tip] 学习建议
> 本试题涵盖五大题型,适合系统性复习。名词解释部分需要准确记忆专业术语的规范定义。
## 正文
### 一、填空题(每空2分,共20分)
1. 嵌入式系统是以( )为中心,以( )为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的( )计算机系统。
> [!success]- 答案与解析
> 答案:应用、计算机技术、专用
2. 嵌入式处理器架构是通过( )和( )方式来提升性能。
> [!success]- 答案与解析
> 答案:流水线、RISC
3. ARM7TDMI-5采用的是( )体系结构。
> [!success]- 答案与解析
> 答案:冯·诺依曼
4. ARM9TDMI中采用的是( )体系结构。
> [!success]- 答案与解析
> 答案:哈佛
5. CPSR的中文名称是( )。
> [!success]- 答案与解析
> 答案:当前程序状态寄存器
6. ARM指令条件码EQ表示( )。
> [!success]- 答案与解析
> 答案:相等
> [!note] 教学提示
> 第3、4题考察两种经典体系结构的区别。冯·诺依曼结构的指令和数据共用一条总线,哈佛结构则将指令和数据总线分开,因此哈佛结构在取指和访存上可以并行,性能更高。ARM7 -> ARM9 的演进正是从冯·诺依曼到哈佛结构的典型升级路径。
### 二、选择题(每题2分,共10分)
1. μC/OS-II操作系统属于( )。
A. 一批式操作系统
B. 批处理操作系统
C. 占先式实时操作系统
D. 非占先式实时操作系统
> [!success]- 答案与解析
> 答案:C
2. 复位操作后,ARM处理器进入( )模式。
A. 用户模式
B. 系统模式
C. 管理模式
D. 中断模式
> [!success]- 答案与解析
> 答案:C
3. 寄存器R13除了可以做通用寄存器外,还可以做( )。
A. 程序计数器
B. 链接寄存器
C. 栈指针寄存器
D. 基址变址寄存器
> [!success]- 答案与解析
> 答案:C
4. ARM汇编语句"ADD R0, R1, R2, LSL#1"的操作结果是( )。
A. R0 = R2 + (R1)
B. R0 = (R2<<1) + R1
C. R1 = R0 + (R2<<1)
D. R0 = R1 + (R2<<1)
> [!success]- 答案与解析
> 答案:A
5. LDR R2, [R3, #12]属于( )寻址方式。
A. 直接寻址
B. 多寄存器寻址
C. 寄存器间接寻址
D. 相对寻址
> [!success]- 答案与解析
> 答案:A
> [!question] 思考题
> 第4题中的 `LSL#1` 表示逻辑左移1位,即乘以2。注意 ARM 汇编中第二操作数(operand2)可以带有移位操作。请思考:如果要实现 R0 = R1 + (R2 << 2),即 R1 加上 R2 的4倍,汇编指令该怎么写?
> [!tip] 选择题解题技巧
> 第5题 LDR R2, [R3, #12] 是以 R3 的值为基址,偏移量 #12 为立即数偏移,属于直接寻址。而 LDR R2, [R3] 则是寄存器间接寻址。关键区别在于是否带有偏移量。
### 三、名词解释(每题2分,共10分)
**1. ARM存储器的字**
> [!success]- 答案与解析
> ARM体系结构中,字(Word)为32位(4字节),半字(Half-word)为16位(2字节),字节(Byte)为8位。ARM处理器是32位处理器,其数据传输和存储操作通常以字为单位进行。
**2. SPSR**
> [!success]- 答案与解析
> SPSR(Saved Program Status Register)即保存程序状态寄存器。ARM处理器在进入异常模式时,会自动将当前CPSR的内容保存到对应异常模式的SPSR中,以便在异常返回时恢复之前的状态。每种异常模式都有自己的SPSR。
**3. 嵌入式系统**
> [!success]- 答案与解析
> 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
**4. 寄存器间接寻址**
> [!success]- 答案与解析
> 寄存器间接寻址是指令中的地址码给出的是通用寄存器的编号,寄存器中存储的值作为操作数的有效地址。例如 `LDR R0, [R1]`,表示将 R1 中的地址所指向的内存单元内容加载到 R0。
**5. 条件码**
> [!success]- 答案与解析
> 条件码是ARM指令执行条件标志,如 EQ(相等,Zero标志置位)、NE(不相等,Zero标志清零)、GT(大于,有符号)等。ARM指令集中的所有指令均可条件执行,这是ARM架构的一大特色,可有效减少分支指令。
> [!note] 教学提示
> ARM的条件执行机制非常独特——几乎所有指令都可以带条件码后缀。这意味着在简单的 if-else 场景中,有时可以避免使用跳转指令,减少流水线刷新带来的性能损失。建议学生查阅 ARM Architecture Reference Manual 中完整的条件码列表。
### 四、简答题
**1. 简述嵌入式操作系统中占先式调度和非占先式调度的特点和区别。(8分)**
> [!success]- 答案与解析
> 占先式调度(Preemptive Scheduling):内核按照每个任务的优先级来调度CPU资源。当一个更高优先级的任务就绪时,内核会立即暂停当前正在运行的低优先级任务,将CPU控制权交给高优先级任务。其特点是响应速度快,适合实时性要求高的场合。
>
> 非占先式调度(Non-preemptive Scheduling):任务调度策略按合作型方式工作。只有当当前运行的任务主动放弃CPU控制权(如调用延时函数、等待信号量或主动退出)时,调度器才会选择更高优先级的任务运行。其特点是实现简单,不会发生任务间的资源抢占问题。
>
> 核心区别:占先式内核中,高优先级任务在紧急事件发生时能立即获得CPU控制权;非占先式内核中,只有当前任务主动放弃CPU控制权时,更高优先级任务才能运行。
> [!question] 教学提示
> 实际上很多嵌入式RTOS(如FreeRTOS、μC/OS-II)都采用占先式调度,但在实际应用中也会结合非占先式的做法——例如在中断服务程序中只设置标志位,由任务级代码进行实际处理。请思考:为什么中断服务程序中通常不直接进行占先式任务切换?
**2. 简述MOV指令与LDR指令的区别。(9分)**
> [!success]- 答案与解析
> MOV指令用于寄存器到寄存器的数据传送,或者将一个立即数传送到寄存器中,但它不能访问内存。其操作数来自寄存器或立即数。
>
> LDR指令用于从内存中读取数据到寄存器中(数据加载),或者将寄存器中的数据写入内存(通过STR指令)。LDR指令可以访问内存空间。
>
> 两者的关键区别在于:MOV只能在寄存器之间或使用立即数进行数据传送,操作范围限于CPU内部;LDR可以访问存储器,实现CPU与内存之间的数据交换。
**3. 什么是程序状态寄存器?请简述其包含的内容。(9分)**
> [!success]- 答案与解析
> 程序状态寄存器(Program Status Register)是ARM处理器内部的一个32位寄存器,反映当前处理器的运行状态。ARM内部包含1个CPSR(当前程序状态寄存器)和5个保留的备份SPSR(每个异常模式一个)。
>
> CPSR包含的主要内容:
> - **条件标志位**:N(负数/结果最高位)、Z(零标志)、C(进位/借位标志)、V(溢出标志)
> - **中断禁止位**:I(禁止IRQ中断)、F(禁止FIQ中断)
> - **处理器模式位**:M[4:0],标识当前处理器处于哪种模式(用户、系统、管理、中断等)
> - **Thumb状态位**:T,指示当前处理器处于ARM状态(T=0)还是Thumb状态(T=1)
### 五、综合题
**1. 嵌入式操作系统有哪些产品形式?请分析智能移动终端产品出现后带来的变革及解决对策。(10分)**
> [!success]- 答案与解析
> 嵌入式系统产品形式多样,包括:智能手机、平板电脑、智能手表/手环、车载电子系统、智能家居设备、工业控制器、医疗设备、无人机等。
>
> 智能移动终端带来的变革:
> - **随时随地的计算能力**:人们不再局限于桌面电脑,移动计算成为常态
> - **丰富的人机交互方式**:触摸屏、语音识别、手势识别等新型交互方式
> - **移动互联网接入**:随时随地连接网络,推动移动应用生态爆发
>
> 解决对策:
> - **低功耗设计**:采用动态电压频率调节(DVFS)、多核异构架构(大小核)等技术延长续航
> - **多核异构计算**:利用CPU+GPU+NPU等异构处理器协同工作,兼顾性能与功耗
> - **安全机制增强**:引入可信执行环境(TEE)、生物识别认证、数据加密等安全手段
**2. 请分析并论述嵌入式系统的定义、组成及特点。(10分)**
> [!success]- 答案与解析
> **定义**:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
>
> **组成**:
> - **硬件层**:嵌入式处理器(MCU、MPU、DSP、FPGA等)、存储器(ROM、RAM、Flash)、外设接口(GPIO、UART、SPI、I2C等)
> - **软件层**:嵌入式操作系统(RTOS或嵌入式Linux等)、设备驱动程序、中间件、应用程序
>
> **特点**:
> - **专用性强**:面向特定应用,功能明确
> - **实时性要求**:需要在规定时间内完成响应
> - **可靠性高**:特别是工业和医疗领域,要求长时间稳定运行
> - **资源受限**:内存、存储、功耗等方面受到严格限制
> - **软硬件协同**:需要针对硬件进行软件优化,软硬件联合设计
**3. 请简要分析嵌入式系统在实际生活中的应用。(10分)**
> [!success]- 答案与解析
> 嵌入式系统已深入渗透到日常生活的各个方面:
>
> - **智能手机**:集成了高性能嵌入式处理器、传感器、通信模块,是最普及的嵌入式系统
> - **智能家居**:扫地机器人(路径规划与避障)、智能音箱(语音识别与处理)、智能门锁(安全认证)
> - **汽车电子**:车载导航系统(GPS定位与地图渲染)、自动驾驶(多传感器融合与实时决策)、发动机控制单元(ECU)
> - **医疗设备**:心脏起搏器(实时监测与刺激)、监护仪(生命体征实时采集与分析)
> - **工业控制**:PLC(可编程逻辑控制器)、工业机器人(运动控制与协调)、智能制造产线
> [!note] 教学提示
> 综合题的答题关键在于:先给出定义/概念(踩点得分),再展开分析(体现理解深度),最后结合实际案例(展示应用能力)。建议学生在备考时,针对每个知识点准备2-3个具体的应用实例。
## 关联笔记
- [[试题1]]
- [[试题2]]