版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、嵌入式系统开发与应用教程 (田泽)复习题LT一、选择题1、ADD R0,R1,#3 属于()寻址方式。A. B. C. D. 2、GET 伪指令的含义是()A. 包含一个外部文件 B. 定义程序的入口 C. 定义一个宏 D. 声明一个变量332 0 x876165 2000H2003H 2000H 存储单元的内容为( 、0 x00 、0 x87 、0 x65 、0 x614R1=2000H,(2000H)=0 x86,(2008H)=0 x39,则执行指令LDR R0,R1,8R0 的值为( 。A. 0 x2000 B. 0 x86 C. 0 x2008 D. 0 x395R13 除了可以做通
2、用寄存器外,还可以做( 。A、栈指针寄存器 6、FIQ 中断的入口地址是( 。、0 x0000001C 、0 x00000008 、0 x00000018 、0 x000000147、ARM 指令集和Thumb 指令集分别是( )位的。A. 8 位,16 位 B. 16 位,32 位 C. 16 位,16 D. 32 位,16 8、ARM 寄存器组有( )个寄存器。、7 B、32 、6 、379R1=2000H,(2000H)=0 x28,(2008H)=0 x87,则执行指令LDR R0,R1,8R0 的值为( 。A. 0 x2000 B. 0 x28 C. 0 x200810、 和PC 机
3、系统相比,下列哪个不是嵌入式系统独具的特点(A、系统内核小 、专用性强 、可执行多任务 、系统精简11.ARM公司是专门从事()A、基于RISC 技术芯片设计开发 、ARM 芯片生产、软件设计 、ARM 芯片销售12.ARM9 系列微处理器是()A、三级流水线结构 、四级流水线结构、五级流水线结构 、六级流水线结13所有工作模式下()都指向同一个物理寄存器,即各模式共享、R0-R7 、R0-R12 、R8-R12 、R13,R1414.当异常发生时,寄存器()用于保存 CPSR 的当前值,从异常退出时则可由它来恢复A、SPSR 、R13 、R14 、R1515.能实现把立即数0X3FF5000
4、保存在R0中的指令是()A、LDRR0,=0X3FF5000、LDRR0,0X3FF5000、MOVR0,0X3FF5000、MOVR0,=0X3FF5000 16.ARM指令LDMIA RO,R1,R2,R3,R4实现的功能是()、R1R0,R2R0+4,R3R0+8,R4R0+12、C、R1R0,R2R0+1,R3R0+2,R4R0+3、17.()伪指令用于定义一个代码段或数据段A、RLIST B、DCB C、MAP D、AREA18在ARM体系结构中,要从主动用户模式Use)切换到超级用户模式Superviso,应采用()方法。A、直接修改CPU 状态寄存器对应的模式B、先修改程序状态备
5、份寄存器到对应的模式,再更新CPU 状态、使用软件中断指令(SWI)三、简答第一章:1、什么是嵌入式系统?与通用计算机系统相比,它有哪些特点?答:定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。PC 2、 嵌入式系统组成结构包括哪几部分?嵌入式系统组成结构的理解。答:嵌入式系统由硬件和软件组成。嵌入式系统的硬件是以嵌入式微处理器为中心,配置存储器、I/O 设备、通信模块以及电源等必要的辅助接口。嵌入式系统软件包括板级支持包层、实时操作系统层、应用程序接口层和应用程序层四层。3、 简述嵌入式系统的硬件组成答:嵌入式系统
6、的硬件是以嵌入式微处理器为中心,配置存储器、I/O 设备、通信模块以及电源等必要的辅助接口。4、试分析通用操作系统与嵌入式操作系统的异同点,并解释什么是嵌入式实时操作系统。嵌入式操作系统和嵌入式实时操作系统的概念有哪些不同?答: 通用操作系统和嵌入式操作系统都对软、硬件资源进行分配和调度以及控制协调等,嵌入式操作系统与通用操作系统的不同之处在于它具有实时性高、可靠性好、可裁剪、体积小等特性。嵌入式实时操作系统(Real Time Embedded Operating System)是一种实时的、支持嵌入式系统应用的操作系统,是嵌入式系统的重要组成部分。上在指定的或者确定的时间内,完成系统功能以
7、及对外部或内部、同步或异步事件作出响应的系统。5、 嵌入式操作系统具有哪些基本管理功能?多任务管理,存储管理,外围资源管理和中断管理。第二章:6、 试比较 CISC 体系结构和RISC 体系结构的特点。ARM 为何采用 RISC 结构?答:比较:CISC RISC 的中心思想是精简指RISC 性能价格比。采用RISC (Load/store 体系结构()固定的32 位指令 ()地址指令格式7、分别以ARM7TDMI 和 ARM9TDMI 为例,介绍 3 级流水线和 5 级流水线的执行过程,并进行相应的比较。3 级流水线分为:取指,译码和执行。5 级流水线分为:取指、译码、执行、缓冲数据、回写。
8、353554缓冲38、ARM 微处理器支持哪几种工作模式?各个工作模式有什么特点?7 中工作模式:用户模式,系统模式,快速中断模式,普通中断模式,管理(SVC)ARM 处理器正常的程序执行状态。快速中断模式(FIQ):用于高速数据传输或通道处理。 普通中断模式(IRQ):用于通用的中断处理。 管理模式(SVC):操作系统使用的保护模式。中止模式:当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。系统模式:运行具有特权的操作系统任务。未定义模式:处理未定义的指令陷阱,支持硬件协处理器的软件仿真。ARMARM 处理器共有 37 个寄存器,其中 31 个为通用寄存器,其余 6 个为状态寄存
9、器。通用寄存器可分为未分组寄存器R0-R7,分组寄存器R8-R14 和程序计数器R15。简述ARMR13,R14,R15R15寄存器R13 通常用做堆栈指针SP;寄存器R14 用作子程序链接寄存器LR;寄存器R15 被用作程序计数器PC。R15 值的改变将引起程序执行顺序的变化,这有可能引起程序执行中出现一些不可预料的结果,因此,对R15 的使用一定要慎重。ARM 处理器采用多级流水线技术,因此保存在R15 的地址并不是当前指令的地址。11、简述 ARM 处理对异常中断的相应过程。CPSR的内容保存到将要执行的异常中断对应的SPSR中,实现对处理器当前状态、中断屏蔽位、各条件标志位的保存。CP
10、SRIRQRESETFIQ模式时,还要禁止FIQ 中断将引起异常指令的下一条指令的地址保存到新的异常工作模式的R14 ,使异常处理程序执行完后能正确返回原程序。给程序计数器强制赋值,根据中断向量地址跳转去执行中断处理程序。12.如果 FIQ、IRQ 和第 3 个异常(不是复位)同时发生,ARM 应如何处理?答:如果第 3 个异常是数据中止,处理器将在进入数据中止处理程序后立即进入FIQ 处理程序。数据中止将“记”在返回路径中,当FIQ 3 个异常不是数据中止,将立即进入FIQ 处理程序。当FIQ IRQ 3 个异常的指令并进行相应处理。14 什么是ARM 异常中断向量表?它有何作用?存储在什么
11、地方?相同。MAP;内存表的首地址为R9 寄存器的值constaFIELD 4;consta长度为4 字节,相对位置为constbFIELD 4;constb4 4xFIELD 8;x 长度为8 字节,相对位置为8 yFIELD 8;y 长度为8 字节,相对位置为stringFIELD 16;string 16 24 4KB 的数据:ADRR9,FIELD;伪指令,将在后面介绍LDRR5,constb;相当于 LDR,R5,R9,#46、编写一段程序实现在C 语言中调用汇编语言程序,实现将 1KB 大小的内存块以字的形式复制到另一内存地址#include#define NUM 1024 int
12、 main()char strFromNUM = hello world ; char strToNUM; asmmov ecx, NUM; lea esi, strFrom; lea edi, strTo; rep movsb;printf(%sn, strTo);ARM处理器如何进入和退出Thumb 指令模式?用汇编语言实现ARM Thumb状态互相的切换。进入 Thumb 模式:有 2 种方法。一种是执行一条交换转移指令BX,将指令中的目标地址寄存器的最低位置1,并将其他位的值放入程序计数器PC,则可以进入 Thumb 指令。另一种方法是利用异常返回,也可把微处理器从ARM 模式转换为T
13、humb 模式。退出 Thumb 模式:也有 2 种方法。一种是执行Thumb 指令中的交换转移BX 指令可以显式地返回到ARM 指令流。另一种是利用异常进入ARM 指令流。ARM 状态切换到Thumb 状态:CODE32LDRR0,BXR0CODE16LableMOVR1,#12Thumb 状态切换到ARM 状态: CODE16LDRR0,BXR0CODE32LableMOVR1,#10请将下面C语言代码转换成汇编语言(1)If(a=0|b=1)c=d+e CMPR0,CMPNER1,#1 ADDEQR2,R3,(2)if (a= = b)&(c= = d)&(e= =f)g+;CMPR0,
14、 R1CMPEQR2,R3CMPEQR4, R5 ADDEQR6, R6, 编写以字节为单位的字符串拷贝子程序,要求从存储器某处拷贝到另一处。源字符串的起始地址放入长度(以字节为单位)放入R2。LOOPLDRBR0,R1,#1STRBR0,R3,#1SUBSR2,R2,#1BNELOOPMOVPC,LR读懂下面一段程序,程序执行过程中寄存器、R2 loop循环开始,循环结束时R0 0MOVR1,#y;R1 76ADDR2, R0, R1, LSL #1;R2 152MOVSP,#0 x1000;SP 0 x1000STRR2,SP;mem320 x1000 152MOVR0,#Z;R0 96A
15、NDR0,R0,#0XFF;R0 96MOVR1,#y;R1 76ADDR2,R0, R1, LSR #1;R2 134LDRR0,SP;R0 152MOVR1,#0 x01;R1 1ORRR0,R0,R1;R0 153 (0 x99) (0b10011001)MOVR1,R2;R1 134 (0 x86) (0b10000110)ADDR2,R0, R1, LSR #1;R2 220 (0 xDC) (0b11011100)请使用MRSMSRCPSR(注意不能影响其它位,管理模式的二进制编码为10011)MRSR0, CPSRAND R0, R0, #0b11100000 ORR R0, R0, #0b000
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论