1、专业 班级 学号 姓名 东华理工大学长江学院 2011 2012 学年第2学期补考试卷B课程:嵌入式微处理器体系结构与编程 考试形式:闭卷 年级及专业:计算机科学与技术 10304101-3班题号一二三四五六七八九总 分分数1040101030得分评卷人一、名词解释(52分=10分)1.系统调用 运行在使用者空间的程序向系统内核请求需要更高权限运行的服务2.哈弗结构 数据指令存储和程序指令存储分开3.MMU 内存管理单元4.FIQ 快速内部中断5.SPSR 备份程序状态寄存器二、单项选择题(202分=40分)1.ARM系统复位后,第一条执行的指令在( A ). A 00000000H B 00
2、000004H C 00000008H D 由编程者确定2.针对没有MMU的ARM芯片,其操作系统可以使用( C ). A Windows CE ,Linux B VxWork C uClinux, Uc/OS-II D 以上都可以3.ATPCS定义了寄存器组中的( A )作为参数传递和结果返回寄存器。 A R0,R1,R2,R3 B R4,R5,R6,R7 C R8,R9,R10,R11 D A B C 都可以4.用汇编指令对R15赋值,可以实现( D )。 A 程序的跳转 B 实现B指令功能 C 子程序的返回 D A B C都可以5.ARM汇编语言中,一常量8_5642也代表( B/D/C
3、 )。 A 整数5642 B 整数5642H C 整数Ox5642D 整数29786.要使CPU能够正常工作,下列哪个条件不是处理器必须满足的。( D )(A) 处理器的编译器能够产生可重入代码(B) 在程序中可以找开或者关闭中断(C) 处理器支持中断,并且能产生定时中断(D) 有大量的存储空间 7.下面哪种操作系统最方便移植到嵌入式设备中。( D )(A) DOS (B)unix (C) Windows xp (D)linux 8.下列描述不属于RISC计算机的特点的是( C )。A流水线每周期前进一步。B更多通用寄存器。C指令长度不固定,执行需要多个周期。D独立的Load和Store指令完
4、成数据在寄存器和外部存储器之间的传输。9.存储一个32位数0x2168465到2000H2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为( A )。A、0x21B、0x68C、0x65D、0x0210.IRQ中断的入口地址是( C )。FIQ的入口地址为0x0000001CA、0x00000000B、0x00000008C、0x00000018D、0x0000001411. Make预置了一些内部宏,其中$表示:( D )/嵌入式 狗A.没有扩展名的当前目标文件B.当前目标文件C.当前目标文件最近更新的文件名D.当前目标文件最近更新的文件名12.ARM处理器的工作模式有
5、( C )种。A. 5 B.6C. 7 D.813.下列CPSR寄存器标志位的作用说法错误的是( B )。A. N:负数 B. Z: 零 C. C: 进位 D. V: 借位14.若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDRR0,R1,8!后R0的值为( D )。A. 0x2000B. 0x86C. 0x2008D. 0x3915. ARM920T寄存器组有( D )个寄存器。A、7B、32C、6D、3716.ARM指令集和Thumb指令集分别是( D )位的。A. 8位,16位B. 16位,32位C. 16位,16位D. 32位,16位17.FIQ中
6、断的入口地址是( A )。A、0x0000001CB、0x00000008C、0x00000018D、0x0000001418.COS-II操作系统不属于( C )。A.RTOS B.占先式实时操作系统 C.非占先式实时操作系统 D.嵌入式实时操作系统19.若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDRR0,R1,8!后R0的值为( D )。A. 0x2000B. 0x86C. 0x2008D. 0x3920.ADDR0,R1,#3属于( C )寻址方式。A. 立即寻址B. 多寄存器寻址C. 寄存器直接寻址D. 相对寻址选择题答题表1234567891
7、011121314151617181920三、判断题(101分=10分)1.Nand Flash比Nor Flash成本高,可靠性差。( ) 2.C语言程序可以嵌套加入汇编程序模块。 ( )3.由于CPU内部寄存器的访问速度较高,根据ATPC标准,应尽可能使函数的参数控制在4个以下。( )4.ARM处理器结构体系中具有T变种处理器核可以工作在ARM状态和Thumb状态。( )5.所有的电子设备都属于嵌入式设备。( )6.冯诺依曼体系将被哈佛总线所取代。( )7.嵌入式linux操作系统属于免费的操作系统。( )8.任务创建后即开始调度( )9.COS-II操作系统中移植成功后即可使用文件系统(
8、 )10.S3C2410的处理器对内存的访问只能通过Load/Store指令来实现。( )四、指令和程序测试题(共10分)1.请写出以下相关ARM指令语句的注释(7分)MOV R0, PC 把PC的值传送到R0寄存器,此时PC地址为当前指令位置+8 ADDR0,R1, #1 把R1加上1的结果给R0寄存器 LDRR0, =0x56000010是伪指令,把0x5600010 f放到R0寄存器中,采用文字池技术 LDRPC,PC, #4 把当前的PC值加4位置的内容赋值给PC,实现绝对跳转 MRSR0,CPSR 把CPSR的值传送给R0 BLLOOP 带返回地址的跳转指令,把下一条指令给LR后,跳
9、转到Loop地址 STMFD R13!,R0-R12 把R0到R12寄存器的值通过R13栈指针进行压栈保存 2.编写程序实现使用IRQ中断,完成下列程序指令。(3分)ENABLE_IRQMRS R0, CPSR BIC R0,R0,#0x80MSR CPSR_C, R0 MOV PC ,LR五、简答 (56分=30分)1.ARM的异常有哪几种,各进入何种工作模式?他们退出各采用什么指令?1)复位(Reset)异常(管理模式);2)未定义指令(undefined instruction)异常(未定义模式);3)软件中断(SWI)异常(管理模式);4)指令预取中止(Prefech Abort)异常
10、(中止模式);5)数据访问中止(Data Abort)(中止模式);6)快速中断请求(FIQ)(FIQ模式);7)外部中断请求(IRQ)(IRQ模式)。异常返回指令:1)SWI,未定义的返回:MOVSPC,R14;2)IRQ,FIQ,预取中止的返回:SUBS PC,R14,#4;3)数据中止返回并重新存取:SUBSPC,R14,异常中断的优先级:复位(最高优先级)一数据异常中止FIQ-IRQ-预取指异常中止-SWI-未定义指令(包括缺协处理器)。2. ARM常见的寻址方式有哪些?立即数寻址、寄存器寻址、寄存器间接寻址、寄存器偏移寻址、寄存器基址加变址寻址、多寄存器寻址、相对寻址、堆栈寻址、块拷
11、贝寻址3. 简述ARM汇编指令BLX、SWI、STM、LDM、MOV、MVN的含义。BLX:带链接和状态切换的跳转指令SWI:软件中断指令STM:批量内存字写入指令LDM:加载多个寄存器指令MOV:数据传送指令MVN:数据取反传送指令4. ARM处理器有几种工作模式?并做说明每种工作模式的含义。用户模式正常程序执行的模式快速中断模式用于高速数据传输和通道处理外部中断模式用于通常的中断处理特权模式供操作系统使用的一种保护模式数据访问中止模式用于虚拟存储及存储保护未定义指令中止模式用于支持通过软件仿真硬件的协处理器系统模式用于运行特权级的操作系统任务5.进行基于ARM核的嵌入式系统软件开发时,调用如下函数:int do_something(int arg1,void *arg2,char arg3,int *arg4)则这四个参数通过什么方式从调用程序传入被调函数?答:基于ARM核的嵌入式系统软件开发时,调用函数和子程序通过R0R3四个寄存器传递参数,超过四个参数使用堆栈传递。因此arg1通过R0传入,arg2,通过R1传入,arg3通过R2传入,arg4通过R3传入。专用考试纸 请勿浪费 B卷 第3页 共3页