网站首页 语言 会计 电脑 医学 资格证 职场 文艺体育 范文
当前位置:书香门第 > IT认证 > 嵌入式

2016年嵌入式培训考试题及答案

栏目: 嵌入式 / 发布于: / 人气:9.7K

随着消费家电的智能化,嵌入式更显重要。嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。那么yjbys小编为大家推荐以下的嵌入式编程试题,希望能帮助到大家!

2016年嵌入式培训考试题及答案

1、编写一个汇编程序,在ARM程序代码中调用Thumb子程序,并返回ARM程序完成其功能。

CODE32

--------

BLX TSUB1

-------

CODE16

TSUB1

-------

BX R14

2、将存储器中0x30000000开始的200字节的数据,传送到地址从0x10000000开始的某接口电路的存储区域。

START

LDR R0,=0X30000000

LDR R1,=0X10000000

MOV R4,#0

LKM

LDRB R2,[R0],#1

STRB R2,[R1],#1

ADD R4,R4,#1

CMP R4,#200

BLNE LKM

END

3、编写一简单ARM汇编程序段,实现1+2+…+1000的累加运算。

MOV R0,#0

MOV R1,#0

LKM

ADD R0,R0,#1

ADD R1,R1,R0

CMP R0,#1000

BLNE LKM

END

4、将内存中从0x30000FFF开始的100个字数据相加,其结果存于R3、R2中。

LDR R0,=0X30000000

MOV R4,#0

MOV R2,#0

MOV R3,#0

LKM

LDR R5 , [R0],#4

ADDS R3, R3,R5

ADDC R2, R2,#0

ADD R4,R4,#1

CMP R4,#100

BLNE LKM

END

5、编写一程序,查找存储器从0x30000000开始的`100个字中为0的数目,将其结果存到0x30000012中。

START

LDR R0,=0X30000000

LDR R1,=0X30000012

MOV R3,#0

MOV R4,#0

LKM

LDR R2,[R0],#4

ADD R3,R3,#1

CMP R2,#0

ADDEQ R4,R4,#1

CMP R3,#100

BLNE LKM

STR R4,[R1]

END

6、R0和R1中有两个32位无符号数,若R0>R1,则R0=R0-R1;若R0

CMP R0,R1

SUBHS R0,R0,R1

SUBCC R1,R1,R0

7、试编写程序,实现计算2+4+6+8+…+2N的值。

MOV R5,#0

MOV R3,#0

MOV R4,#0

LABLE EQU #0X2300000

MOV LABLE,#300

LKM

ADD R3,R3,#2

ADD R4,R4,R3

ADD R5,R5,#1

CMP R5,#LABLE

BLNE LKM

END

9、编程实现S3C2410工作模式的切换。

MRS R0,CPRS

BIC R0,R0,#&1F

ORR R0,R0,#&12

MSR CPSR_C R0

10、UART初始化编程。

START

LDR R0,=UFCON0

LDR R1,=0X0

STR R1,[R0]

LDR R0,=ULCON0

LDR R1,=0X3

STR R1,[R0]

LDR R0,=UCON0

LDR R1,=0X245

STR R1,[R0]

LDR R0,=PCLK

MOV R1,[R0]

考试题型

填空20分;单项选择20分;名词解释12分;简答题20分;编程题28分。

跳转指令:

B BL BLX BX

B/BL{cond} label

BLX{cond} Rm/lable

数据指令:

MOV MVN 移位指令 2

ADD ADC 加法指令 3

SUB SBC 减法指令 3

RSB RSC 逆向减法 3

ORR EOR AND 逻辑 3

CMP CMN TST TEQ 测试 2

BIC 位测试 3

注意:

{cond} {s} Rd ,Rm

{cond} {s} Rd ,Rm Rn LSL #3

{cond} {s} Rd ,Rm,# LABLE

TEQ (NE,EQ)

乘法:

MUL 32 {cond} {S} Rd, Rm ,Rs

MLA 32 {cond} {S} Rd, Rm ,Rs

SMULL/ SMLAL

UMULL/UMLAL