淘豆网
下载此文档放大查看缩小查看   1/6
0/100
您的浏览器不支持进度条
更多>>该用户其他文档
下载所得到的文件列表
西华师范大学嵌入式测试题.doc
文档介绍:
一、填空题(每空2分,共24分)1、ARM7采用的是三级流水技术,指令分为三个阶段执行取指、译码、执行。2、ARM支持两个指令集,分别为ARM指令集、Thumb指令集,状态寄存器CPSR的IRQ、FIQ位反映了当前状态中断控制,状态寄存器CPSR的  T   位反映了处理器运行不同指令的当前状态两种存储字数据,分别是大端格式小端格式 3、在用ARM汇编编程时,其寄存器有多个别名,通常PC是指R15、LR是指R14、SP是指R13。4、计算机有CISC和RISC两种类型,以ARM微处理器为核心的计算机属于RISC类型,其指令长度为32位和16位支持字节,半字,字三种数据类型二、指令题(每小题6分,共18分)1、写一条ARM指令,完成操作R0=R1/16。MOVR0,R1,LSR#42、实现了R0=[R1+R2*4]ADDR0,R1,R2,LSL#23、对R0中的低8位清零,其他位保持不变BICR0,R0,#0xFFANDR0,R0,#0xFFFFFF00三、程序题(每小题10分,共40分)1、实现1到100的累加,结果放到R3中MOVR5,#99MOVR3,#1MOVR2,#2LOOP:ADDR3,R3,R2ADDR2,R2,#1SUBSR5,R5,#1BNELOOP2、写一段ARM汇编程序:对地址0x1000开始的所有元素进行累加,直到碰上零值元素,结果放在r4中。MOVR4,#0 MOVR0,#0x1000LOOP:LDRR1,[R0],#4CMPR1,#0BEQenADD R4,R4,R1BNELOOPenEND3、有如下程序段,标注出每条指令的作用,并说明程序功能。MOV R0,#0x3000 LDR R1,[R0] LDR R2,[R0,#4] CMP R1,R2 MOVGT R1,#1 MOVLTR1,#-1 MOVEQ R1,#0 STR R1,[R0,#8] 4、地址0x21AB2000开始的15数据,分别与0xACB11100地址开始的15个字数据相减,记录大于零的个数存入R4,小于零的个数存入R5,等于零的个数存入R6.MOVR4,#0MOVR5,#0MOVR6,#0MOVR7,#15MOVR0,#0x21AB2000MOVR1,#0xACB11100LOOP:LDRR2,[R0]LDRR3,[R1]SUBSR8,R2,R3ADDGTR4,R4,#1ADDLTR5,R5,#1ADDEQR6,R6,#1SUBSR7,R7,#1BNELOOP用跳转比较R1,R2(R1>R2(R3-1))(R1<R2(R4-1))SU1:SUBR3,R3#1MOVPC,LRSU2:R4,R4,#1MOVPC,LRCMPR1,R2BLGTSU1BLLTSU2END或者CMPR1,R2SUBGTR3,R3,#1SUBLTR4,R4,#1四、简答题(每小题9,共18分)1、R13—R15寄存器分别称为什么寄存器,各有何特殊用途?R13用作数据堆栈指针(SP),保证异常发生后程序的正常执行R14称为链接寄存器(LR),它用于保存子程序的返回地址 R15是程序计数器(PC),从R15中读取的值正是处理器正要取指的地址2、进入异常的处理方式及异常的返回?进入异常:(1)将下一条指令地址存入相应的连接寄存器LR,以便程序在处理异常返回时能从正确的位置从新开始执行。(2 内容来自淘豆网www.taodocs.com转载请标明出处.