吉林大学2007级《嵌入式系统》期末考试试题(A卷)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2009-2010学年第2学期
2007级《嵌入式系统》期末考试试题(A卷)
考试时间:2010年6月班级学号姓名
✧请将答案写在答题纸上,写明题号,不必抄题,字迹工整、清晰;
✧请在答题纸和试题纸上都写上你的班级,学号和姓名,交卷时请将试题纸、答题纸和草纸
一并交上来。
一、填空(20分,每空1分):
1、嵌入式系统被定义为:以为中心、以为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的________计算机系统。
2、从编程的角度讲,ARM处理器工作在两种状态,分别是__________和__________。
3、复位异常时,处理器立即停止当前程序,进入禁止中断的管理模式,并从地址_______处开始执行。
4、立即数0xF000000F是合法立即数吗___________。(填是或不是)
5、对大端模式,R0=0x11223344,执行完指令STR R0 ,[R1]后执行LDRB R2,[R1],R2的值是________。
6、R1=0X200,R0=0x2执行STR R0,[R1],#12后内存0x200值是______,内存0x20C值是______(如不能确定值是多少填“不确定”)。
7、FLASH存储器分为两种类型,分别是________类型和________类型。
8、指令STMIB中IB含义是________。
9、指令ADDEQS中S的含义是______。
10、将8位有符号数0x9C转换为32位有符号数,转换结果是________。
11、ARM的三级流水线把指令的执行过程分割为3部分,分别是:_____ 、_____、_____。
12、ARM结构支持7种处理器模式,其中FIQ为快速中断模式,abt为________。
13、CPSR寄存器中的Z位为1表示________。
二、选择(每题1分,共10分)
1.属于冯诺依曼结构的是:
A)ARM7
B)AMR9
C)ARM10
D)ARM11
2.标号L1处为Thumb指令,程序当前运行状态为ARM状态,则转移到L1使用:
A) B L1
B)ADR R0,L1+1
BX R0
C)BX L1
D)ADR R0,L1
BX R0
3.将R0,R1压入堆栈,使用指令STMFD SP!,{R0,R1}进栈;出栈指令使用:
A)LDMFA SP!,{R0,R1}
B)LDMFD SP!,{R0,R1}
C)LDMEA SP!,{R0,R1}
D)LDMED SP!,{R0,R1}
4.用于判断R0的最低位是否为1的指令是:
A)TST R0,#0x01
B)TEQ R0,#0x01
C)BIC R0,R0,#0x01
D)AND R0,R0,#0x01
5.指令LDR R2,[R0,R1]!执行后,结果如下:
A)R0+R1地址的内容赋给R2; R0=R0+4
B)R0地址的内容赋给R2; R0=R0+4
C)R0+R1地址的内容赋给R2; R0=R0+R1
D)R1地址的内容赋给R2; R0=R0+R1
6.C语言使用__ASM内嵌汇编指令,下边说法正确的是:
A)注释信息由“;”引出,因为__ASM内是汇编指令;
B)注释信息由“;”引出,因为使用汇编编译器编译__ASM内指令;
C)注释信息由“//”引出,因为使用C编译器编译__ASM内指令;
D)注释信息由“//”引出,因为__ASM内程序为C程序;
7.汇编语言编写的函数strcopy用于实现将字符串S拷贝到字符串d,下边用法正确的是:
A)C语言直接调用函数strcopy (d,s)即可实现将字符串s拷贝到字符串d;
B)C语言首先声明void strcopy(char *dnstr,const char *snstr);然后调用函数strcopy (d,s)即可
实现将字符串s拷贝到字符串d;
C)C语言首先声明extern void strcopy(char *dnstr,const char *snstr);然后调用函数strcopy
(d,s)即可实现将字符串s拷贝到字符串d;
D)C语言首先声明void extern strcopy(char *dnstr,const char *snstr);然后调用函数strcopy (d,s)
即可实现将字符串s拷贝到字符串d;
8.执行B LABLE指令将立即跳转到LABLE处继续执行,其中LABLE说法正确的是:
A)LABLE 是一个存储器的绝对地址。
B)LABLE 是相对于PC的一个偏移量,由连接器计算给出。
C)LABLE 是相对于PC的一个偏移量,由编译器计算给出。
D)以上都不对.
9.发生取指中止异常,执行取指中止异常中断服务程序,从中断服务程序返回使用的指令
是:
A)MOV PC,LR
B)ADDS PC,R14,#4
C)SUBS PC,R14,#4
D)SUBS PC,R14,#8
10.将常数0x11223344赋给寄存器R0,使用的指令是:
A)MOV R0,#0x11223344
B)LDR R0,=0x11223344
C)NUM EQU 0x11223344
MOV R0,NUM
D)NUM EQU 0x11223344
LDR R0,NUM
三、名词解释(15分,每题3分)
ARM,BSP,JTAG,IP,ESOC
四、简答(15分,每题3分):
1、ARM7处理异常处理的过程。
2、说出以下两条指令的区别
PINSEL0 = 0x05 << 16;
PINSEL0 = (PINSEL0 & 0xFFF0FFFF) | (0x05 << 16);
3、比较可抢占式调度和不可抢占式调度。
4、比较向量中断和非向量中断。
5、什么叫实时系统?
五、程序应用题(20分,每个4分)
1、定义一个结构化内存表,表首地址0x40003300,count分量为4字节,x分量为8字节,Y分量为4字节
2、用汇编语言实现128位数的减法。
3、分析下面程序的功能。
STMFD SP!,{R0-R6}
LDR R6,=SRC
LDMIA R6!,{R0-R5}
LDR R6,=DST
STMIA R6!,{R0-R5}
LDMFD SP!,{R0-R6}
4、已知R1=0x30, R5=1,R6=2,R7=0x3FC ,执行
STMIA R1!,{R7,R6,R5}
LDMDA R1!,{R5-R7}
R1,R5,R6,R7的值分别是多少。
5、对于以下程序,写出执行hello mymacro tom, R1,R0的展开结果(6分)
MACRO
$lab mymacro $var1,$var2, $var3
$ lab.loop1
BGE $lab.loop1
$ lab .loop2
BL $var1
BGT $ lab.loop2
SUB $var2, $var3,1