ARM嵌入式系统试题与答案详解.doc
《ARM嵌入式系统试题与答案详解.doc》由会员分享,可在线阅读,更多相关《ARM嵌入式系统试题与答案详解.doc(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、优质文本ARM嵌入式系统根底教程 - 期中开卷 专业:软件1002班 姓名:王世伟 学号:0410306024一、 嵌入式系统根本概念1、 什么是嵌入式系统?有何特点?答:所谓嵌入式,实际上是“嵌入式计算机系统,的简称,它是相对于通用计算机系统而言,注重于开展独立的单芯片技术。嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置。特点:(1)嵌入式系统是将先进的计算机技术,半导体技术以及电子技术与各行业的具体应用相结合的产物,这一点就决定了他必然是一个技术密集,资金密集,高度分散,不断创新的知识集成系统。2系统内核小(3)专用性强 4系统精简 5系统软件要求 6嵌入式软件开发要走向标准化
2、,需要使用多任务的操作系统。7嵌入式系统本身并不具备在其上进行进一步开发的能力。2、 举例在你的身边常见到的嵌入式系统产品,谈一谈你对“嵌入式系统的初步理解。答:产品有:洗衣机,空调, 。嵌入式系统就是内置小计算机系,可以对机器进行智能控制的系统。3、 嵌入式系统的3个根本特点?答:1专用性 2嵌入型 3计算机系统4、 什么是嵌入式处理器,嵌入式处理器可以分为几大类?答:嵌入式处理机是嵌入式的核心,是控制,辅助系统运行的硬件单元。分类:四大类1嵌入式微处理器 2嵌入式微控制器 3嵌入式DSP处理器4SoC片上系统5、 广泛使用的三种类型的操作系统?答:多道批处理操作系统、分时操作系统以及实时操
3、作系统。6、 列举常见的4种嵌入式操作系统?说明你对嵌入式操作系统的根本认识,嵌入式操作系统在嵌入式系统开发中的必要性。答:嵌入式Linux、Win CE、VxWorks、C/OS-II 没有操作系统的计算机效率十分底下,把操作系统嵌入到计算机中,可以提高系统的可靠性,开发效率,缩短了开发周期。二、 ARM7体系结构1、 ARM是什么样的公司?答:它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC处理器。特点是只设计芯片,而不生产。它将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供效劳。2、 什么是RISC?什么是CISC?答:RISC是精简指令集计算机
4、的缩写。CISC是复杂指令集计算机的缩写。3、 举出2个ARM公司当前应用比较多的ARM处理器核?答:ARM7系列、ARM9系列、ARM10系列、ARM11系列、intel的Xscale系列和MPCore系列。4、 ARM7TDMI中的T、D、S、I分别表示什么含义?答:T:支持高密度16位的Thumb指令集D:支持片上调试S:ARM7TDMI 的可综合synthesizable版本软核I:支持EmbededICE观察硬件M:支持64位乘法5、 ARM7TDMI处理器采用什么样的体系结构,其可寻址地址空间多大?答:使用单个平面的232个8位字节地址空间。地址空间可以看作是包含230个32位字,
5、或231个16位半字。6、 ARM7TDMI处理器采用几级流水线处理,使用何种存储器编址方式?答:ARM7TDMI处理器采用三级流水线。ARM处理器将存储器看做是一个从0开始的线性递增的字节集合。7、 ARM处理器哪几种状态和模式?答:共7种。(1) 用户模式 2快速中断模式 3外部中断模式 4管理模式 5数据访问中断模式 6系统模式 7未定义指令模式8、 简述ARM处理器两种状态的应用特点。答:ARM状态:处理器执行32位字对齐方式的ARM指令,每条ARM指令长度为32位,指令的功能强大,处理器默认为此状态。Thumb状态:处理机执行16位半字对齐方式的Thumb。每条Thumb指令长度为1
6、6位,是ARM指令功能的子集。9、 简述ARM处理器7种模式的应用特点。答:1用户模式:ARM处理器正常的程序执行模式。 2快速中断模式:用于高速数据传输或通道处理。 3外部中断模式:用于通用的中断处理。 4管理模式:操作系统使用的保护模式。 5数据访问中断模式:当数据或指令预取终止时进入该模式,可用于虚拟 存储及存储保护。 6系统模式:运行具有特权的操作系统任务。 7未定义指令模式:当未定义的指令执行时进入该模式,可用于支持硬件 处理器的软件仿真。10、 结合CPSR的结构,说明其中的M4:0的作用和T位的作用。答:M4:0是模式控制位,这些位决定处理器的工作模式。 T位:T位标志控制处理器
7、按照ARM指令集运行,还是按照Thumb指令集 运行。11、 结合CPSR的结构,说明其中的I位和F位的作用。答:I位和F位都是中断禁止标志位,用来时能或禁止ARM的两种外部中断。12、 简述ARM7TDMI内部有哪些存放器及特点。答:分别为31个通用32位存放器和6个状态寄存器。它们不能在同一使劲同时被访问,对其的访问取决于处理器状态和处理器模式。13、 结合下表简述FIQ模式下有哪几个私有存放器,这些私有存放器有何使用特点?答:FIQ模式下私有存放器有R8-fiq,R9-fiq,R10-fiq,R11-fiq,R12-fiq,R13-fiq,R14-fiq,和SPSR-fiq。 这些存放器
8、使得在发生FIQ中断,处理器不必为保护存放器而浪费时间,从而加速了FIQ的处理速度。14、 ARM7TDMI中的PC指向的是下一条将要执行的指令,这句话对吗?为什么?答:不对,PC中的内容总是指向正在“取指指令的地址。15、 简述ARM处理器的CPSR和SPSR的功能、作用和工作方式。答:CPSR是当前状态存放器,他可以在任何运行模式下被访问,它包括条件标志位,中断标志位,当前处理器模式标志位,以及其他的一些相关的控制盒状态位。ARM内核就是通过使用CPSR来监视和控制内部操作的。SPSR用于保存CPSR的当前值,从异常退出时那么可由SPSR来恢复CPSR。16、 简述ARM7的内部存放器R1
9、3、R14、R15的主要功能、作用和工作方式。答:R13作为堆栈指针SP,用于指定堆栈操作出入口的地址。其他6个R13寄存器为堆栈存放器。为用户模式和系统模式共用一个。R14可以用作通用存放器,也可以用作链接存放器。链接存放器用于保存子程序地址或者返回地址。R15:程序存放器,总是指向正在“取指的指令17、 什么是计算机的寻址方式?ARM7TDMI有几种寻址方式?答:存放器寻址、立即寻址、存放器移位寻址、存放器间接寻址、基址寻址、多存放器寻址、堆栈寻址、相对寻址。18、 什么是堆栈?ARM中的堆栈是如何定义和使用的?答:堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top)对数据
10、项进行插入和删除。ARM处理器将RB作为堆栈指针SP,用于保存堆栈的出入口处地址。19、 何谓存储的“大端模式、“小端模式?写出数据0x12345678在0x20000000字单元中“小端模式下的存储细节。答:大端模式:按照数据的低字节存放在高地址中的顺序进行存储。 小端模式:按照数据的高字节存放在高地址中的顺序进行存储。 0x存放0x78,0x1存放0x56,0x2存放0x34 0x3存放0x12。20、 什么是“字对齐和“半字对齐?ARM指令必须字对齐存放,Thumb指令必须半字对齐存放,这句话正确吗?答:如果一个字数据的访问存储地址A能被4整除,即地址的低两位为零,那么为 字对齐的存储器
11、访问。 如果一个半数据的访问的存储地址A能被2整除,即地址的最低位为零,那么 为半字对齐的存储器访问, 如果Thumb状态下将一个非字对齐的地址写入PC,那么数据在写入PC时第 0位被忽略,最终PC的bit0为0,将会产生不可预料的结果。21、 ARM指令长度和Thumb指令长度固定位长吗?位长分别是多少?答:固定 , ARM为一个字32bit,Thumb为一个半字16bit22、 ARM7TDMI中的中断分为那两类?在CPU级别如何分别屏蔽?答:分别为IRQ,FIQ,在cpu级别通过状态存放器CPSR中的I和F位置位来屏蔽。23、 什么是ARM7TDMI中的异常?简述ARM7TDMI中的复位
12、、IRQ、FIQ和软中断等几种主要异常的控制原理。答:异常是指正常的程序被暂时中止的状态模式。复位异常时处理器进行管理模式执行相应操作,I和F均为禁止;软中断异常也进入管理模式,I位禁止;IRQ异常时进入中断模式,I位禁止;FIQ异常进入快速中断模式,I和F位均为禁止,都是通过异常向量表。24、 简述ARM7TDMI中产生复位、IRQ、FIQ和软中断等几种主要异常的条件,这几种异常会使ARM分别进入到哪种模式?ARM核响应异常的过程,以及这几种异常地返回指令是什么?答:复位异常:当nRESET信号被拉低时,ARM处理器放弃正在执行时的指令,等到nRESET下信号再次变高时,ARM执行以下操作:
13、1强制M4:0复为10011,进入管理模式;2将CPSR中的I和F置位;3将CPSR中的T位清零4强制pc从地址0x00开始对下一条指令进行取值;5返回ARM状态并回复执行,无返回指令。IRQ:只有CPSR中相应的I位被去除时,才可能发生IRQ异常,进入中断模式,内核自动作如下处理:1将异常处理的返回地址保存到R14-irq中2用户模式的CPSR被保存到SPSR-irq中;3修改CPSR,禁止新的IRQ中断产生,进入ARM状态,IRQ模式4置IRQ模式下的IRQ异常处理程序的中断入口地址向量。地址0x00000018。 返回指令:subspc , R14-irq , #4FIQ:只有CPSR中
14、的想用下位被清零时,才发生下IQ异常进入FIQ模式,FIQ中的8个专用存放器用来保护中断地址。其返回指令: subs pc,R14-fiq , #4软中断swi:用于进入“管理模式,通常用于请求一个特定的管理函数。返回指令:movs pc,R14-svc三、 ARM7TDMI指令系统1、 ARM7TDMI支持哪几种指令集,各有什么特点?答:支持ARM指令集和Thumb指令集两种。ARM指令集:指令32位,效率高,代码密度低,所有ARM指令都是可以有条件执行的 。Thumb指令集:指令16位,代码密度较高,Thumb指令仅有一条指令具备条件执行功2、 ARM汇编指令的根本格式?答:根本指令:在A
15、RM指令集中,每条指令占有4个字节,即指令长度为32位。3、 何谓ARM指令的条件码?默认的条件码是什么?举例说明ARM指令的条件码对指令执行的影响。答:条件码是按照指定条件执行的操作条件:默认条件码是AL无条件执行例子:比较两值大小,并进行相应加1处理:cmp R0,R1;ADDHI R0,R0,#1;ADDLS R1,R1,#14、 解释何为“满堆栈、“空堆栈、“递增堆栈和“递减堆栈? ARM指令系统中是如何支持的?答:满堆栈:堆栈指针指向最后压入栈的有效数据项。 空堆栈:堆栈指针指向下一个待压入数据的空位置。 递增堆栈:在向堆栈写入数据后,堆栈指针的值变大,即向高地址方向生长。 递减堆栈
16、:在想堆栈写入数据后,堆栈指针的值变小,即向低地址方向生长。ARM指令支持四种对战类型:满递增,空递增,满递减,空递减。5、 请说明MOV指令与LDR加载指令的区别和用途。答:LDR的操作数既可以来源于存放器也可以来源于存储器,MOV的操作数能来源于存放器。LDR指令从内存中读取数据放入存放器,用于对内存变量和数据的访问、查表、程序的跳转、外围部件的控制操作等;MOV指令将8位立即数或存放器传送到目标存放器Rd,可用于移位运算等操作。6、 解释 B指令、BL指令与BX指令的功能差异?简述他们的应用场合。答:B指令:是分支指令,跳转到标号指定的地址程序。 Bl指令:带连接的分支指令,跳转到指定的
17、地址程序,同时还将程序计数器PC的值保存到LR存放器中。 BX指令:带状态切换的分支指令,跳转到Rm指定的地址处执行程序,根据跳转地址的最低位来切换处理器状态。B/BL指令跳转范围限制在当前指令的+-32MB地址内。7、 解释SWI软中断指令的执行过程和典型应用。答:SWI指令用于产生软中断,从而实现先从用户模式到管理模式的变换。在切换时,CPSR存放器内容将保存到管理模式的SPSR中,同时程序跳转到SWI异常向量入口处。 SWI用于系统功能调用。8、 ARM汇编指令条件码如下表,分析下两段程序片断的功能,写出其等价的类C语言功能描述:条件助记符标志含义EQZ=1相等NEZ=0不相等CS/HS
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ARM 嵌入式 系统 试题 答案 详解
限制150内