产品选型

单片机c语言 试题 单片机应用技术测试 试卷及答案

小编 2024-10-10 产品选型 23 0

单片机应用技术测试 试卷及答案

一、填空题(每空1分,共15分)

1、二进制数(10100101)2=___A5____H =___165____D。

2、LED显示器中的发光二极管的两种连接方法是___共阴_____和_共阳_________。

3、一般的计算机系统都是由地址总线__、_数据总线____、_控制总线三总线结构组成。

4、89C51片内RAM有_256_____字节,其中包含___128___字节用户数据存储单元和__128____字节的特殊功能寄存器单元,片内ROM有__4k____字节。

5、AT89C51有____4_______个并行I/O口,其中P0~P3是准双向口,所以由输出转输入时必须先写入______1______。

6、AT89C51有___4_组工作寄存器,它们的地址范围是_00H-1FH__________。

得分

评卷人

、选择题(每题2分,共30分)

1、在MCS—51指令中,下列指令中 C 是无条件转移指令。

A.LCALL addr16 B.DJNZ direct,rel C.SJMP rel D.ACALL addr11

2、16.寻址方式就是 D 的方式。

A.查找指令操作码 B.查找指令

C.查找指令操作数 D.查找指令操作码和操作数

3、下列指令判断若P1口最低位为高电平就转LP,否则就执行下一句的是 B 。

A.JNB P1.0,LP B.JB P1.0,LP C.JC P1.0,LP D.JNZ P1.0,LP

4、下列指令能能使累加器A的最高位置1的是 D 。

A.ANL A,#7FH B.ANL A,#80H C.ORL A,#7FH D.ORL A,#80H

5、下列指令能能使P1口的最低位置1的是 B 。

A.ANL P1,#80H B.ORL P1,#01H C.ORL P1,#0FFH D.ORL P1,#80H

6、MCS—51汇编语言指令格式中,唯一不可缺少的部分是 B 。

A.标号 B.操作码 C.操作数 D.注释

7、MCS—51指令包括操作码和操作数,其中操作数是指 D 。

A.参与操作的立即数 B.寄存器 C.操作数 D.操作数或操作数地址

8、设累加器A中为无符号数,B中数为2,下列指令 D 的作用与其它几条不同。

A ADD A,0E0H B MUL AB C RL A D RLC A

9、欲将P1口的高4位保留不变,低4位置1,可用指令 B 。

A ANL P1,#0F0H B ORL P1,#0FH

C XRL P1,#0FH D 以上三句都对

10、8051单片机的位寻址区位于内部RAM的 D 单元。

A 00H~7FH B 20H~7FH

C 00H~1FH D 20H~2FH

11、8051的程序计数器PC为16位计数器,其寻址范围是 D 。

A 8K B 16K C 32K D 64K

12、在单片机算术运算过程中,指令DA A常用于 C 运算。

A.二进制 B.加法 C.BCD码加法 D.十六进制

13、LJMP跳转空间最大可达到 D 。

A 2KB B 256B C 128B D 64KB

14、单片机能直接运行的程序叫 C 。

A 源程序 B 汇编程序 C目标程序 D编译程序

15、将内部数据存储单元的内容传送到累加器A中的指令是 C 。

A MOVX A,@R0 B MOV A, #data C MOV A,@R0 D MOVX A, @DPTR

三、分析下面程序并填空(每空1分,共20分)

1.若(10H)=0FFH,(11H)=00H,(12H)=0FFH,(13H)=00H,写出每一步指令运行结果

MOV A,10H (A)=_____ 0FF _____________,ANL A,#01H (A)=_______01H___________,MOV A,11H (A)=_______00H___________,ORL A,#01H (A)=__________01H________,MOV A,12H (A)=_____________0FFH_____,XRL A,#01H (A)=___________FEH_______,MOV A,13H (A)=______ 0FF ___________,XRL A,#0AH (A)=________0AH__________,(10H)=__ 0FF _____,(11H)=____ 00H_____,(12H)=_0FFH________,(13H)=_00H_________

2、程序填空

MOV 30H,#60HMOV R0,#60HMOV A,30HMOV B,AMOV @R0,B(A)=_____ 60H _____,(R0)=_ 60H ___________,(B)=_ 60H ___________

3.改正下列指令

MOV A,DPTR MOVX A,@DPTRMOV DPTR,10H MOV DPTR,#0010HMOV @R7,#40H MOV @R1,#40HMOVX 40H,#30H MOV 40H,#30HADD 20H,#10H ADD A,#10H

四、寻址方式(每题3分,共15分)

(说明8051单片机的下列各条指令中源操作数的寻址方式)

1.ANL A,20H 直接寻址2.ADDC A,#20H立即寻址3.JZ rel 相对寻址 4.MOV 00H,C 位寻址5.MOV A,R0寄存器寻址

五、综合题(共20分)

1、编程将片内RAM30H单元开始的10个的数据传送到片外RAM3000H开始的单元中去。(10分)

MOV R0,#30H

MOV DPTR,#3000H

MOV R7,#10

LOOP: MOV A,@R0

MOVX @DPTR,A

INC R0

INC DPTR

DJNZ R7,LOOP

2、片内RAM40H开始的单元内有10个二进制数,编程找出其中最大值并存于50H单元中。(10分)

START: MOV R0,#40H ;数据块首地址送R0

MOV R7, _#9__ ;比较次数送R7

MOV A,@R0 ;取数送A

LOOP: INC R0

MOV 30H___,@R0 ;取数送30H

CJNE A,30H,NEXT ;(A)与(30H)相比

NEXT: _JNC NEXT1__ ;(A)≥(30H)转NEXT1

MOV A,30H___ ;(A)<(30H),大数送A

NEXT1: DJNZ R7,LOOP ;比较次数减1,不为0,继续比较

_MOV 50H,A__ ;比较结束,大数送50H

大学单片机考试试卷及答案

一、填空题(每空1分,共15分)

1、二进制数(11101100)2=___EC____H =___236____D。

2、一个机器周期等于____6____个状态周期,振荡脉冲2分频后产生的时序信号的周期定义为___状态_____周期。

3、一般的计算机系统都是由____地址总线_______、___数据总线_______、_____控制总线____三总线结构组成。

4、89C51片内RAM有___256___字节,其中包含___128___字节用户数据存储单元和__128____字节的特殊功能寄存器单元,片内ROM有___4K___字节。

5、假定(A)=95H,(R0)=20H,(20H)=0BFH。执行指令:ADD A,@R0后,累加器A的内容__54H___,CY的内容__1___,AC的内容__1___,OV的内容__1___。

得分

评卷人

、选择题(每题2分,共30分)

1、在MCS—51指令中,下列指令中 C 是无条件转移指令。

A.LCALL addr16 B.DJNZ direct,rel C.SJMP rel D.ACALL addr11

2、16.寻址方式就是 C 的方式。

A.查找指令操作码 B.查找指令

C.查找指令操作数 D.查找指令操作码和操作数

3、下列指令判断若P1口最低位为高电平就转LP,否则就执行下一句的是 B 。

A.JNB P1.0,LP B.JB P1.0,LP C.JC P1.0,LP D.JNZ P1.0,LP

4、下列指令能能使累加器A的最高位置1的是 D 。

A.ANL A,#7FH B.ANL A,#80H C.ORL A,#7FH D.ORL A,#80H

5、下列指令能能使P1口的最低位置1的是 B 。

A.ANL P1,#80H B.ORL P1,#01H C.ORL P1,#0FFH D.ORL P1,#80H

6、MCS—51汇编语言指令格式中,唯一不可缺少的部分是 B 。

A.标号 B.操作码 C.操作数 D.注释

7、MCS—51指令包括操作码和操作数,其中操作数是指 D 。

A.参与操作的立即数 B.寄存器 C.操作数 D.操作数或操作数地址

8、设累加器A中为无符号数,B中数为2,下列指令 D 的作用与其它几条不同。

A ADD A,0E0H B MUL AB C RL A D RLC A

9、欲将P1口的高4位保留不变,低4位置1,可用指令 B 。

A ANL P1,#0F0H B ORL P1,#0FH

C XRL P1,#0FH D 以上三句都对

10、8051单片机的位寻址区位于内部RAM的 D 单元。

A 00H~7FH B 20H~7FH

C 00H~1FH D 20H~2FH

11、8051的程序计数器PC为16位计数器,其寻址范围是 D 。

A 8K B 16K C 32K D 64K

12、在单片机算术运算过程中,指令DA A常用于 C 运算。

A.二进制 B.加法 C.BCD码加法 D.十六进制

13、LJMP跳转空间最大可达到 D 。

A 2KB B 256B C 128B D 64KB

14、单片机能直接运行的程序叫 C 。

A 源程序 B 汇编程序 C目标程序 D编译程序

15、将内部数据存储单元的内容传送到累加器A中的指令是 C 。

A MOVX A,@R0 B MOV A, #data C MOV A,@R0 D MOVX A, @DPTR

三、分析下面程序并填空(每空1分,共25分)

1、程序填空

MOV A,#10H (A)=_10H___________MOV B,A (B)=_10H____________MOV A,B (A)=__10H___________ADD A,B (A)=__20H____________MOV 20H,A (20H)=___20H__________INC A (A)=_____21H________MOV 21H,A (21H)=_____21H________INC A (A)=________22H____MOV 22H,A (22H)=_______22H______

2、程序填空

MOV DPTR,#2000H (DPTR)=__2000H___________MOV A,#80H (A)=_______80H_____MOVX @DPTR,A (2000H)=___80H_________INC DPTR (DPTR)=____2001H________MOV A,#90H (A)=____90H________MOVX @DPTR,A (2001H)=___90H__________MOV DPTR,#2000H (DPTR)=____2000H________MOVX A,@DPTR (A)=_____80H________MOV B,A (B)=____80H_______INC DPTR (DPTR)=__2001H________MOVX A,@DPTR (A)=_______90H______

3、改正下列指令

MOV @R3,A MOV @R1,AMOV DPTR,A MOVX @DPTR,AINC @R3 INC R3DEC DPTR DEC R3ADDC #30H,A ADDC A,#30H

四、寻址方式(每题2分,共10分)

(说明8051单片机的下列各条指令中源操作数的寻址方式)

1.ANL A,20H 直接寻址2.ADDC A,#20H 立即寻址3.JZ rel 相对寻址4.CLR C 位寻址5.RR A 寄存器寻址

五、综合题(共20分)

1、编程将片内RAM30H单元开始的15个的数据传送到片外RAM3000H开始的单元中去。(10分)

MOV R0,#30H

MOV DPTR,#3000H

MOV R7,#15

LOOP: MOV A,@R0

MOVX @DPTR,A

INC R0

INC DPTR

DJNZ R7,LOOP

2、片内RAM40H开始的单元内有10个二进制数,编程找出其中最大值并存于50H单元中。(10分)

START: MOV R0,#40H ;数据块首地址送R0

MOV R7, _#9___ ;比较次数送R7

MOV A,@R0 ;取数送A

LOOP: INC R0

MOV _30H __,@R0 ;取数送30H

CJNE A,30H,NEXT ;(A)与(30H)相比

NEXT: __ JNC NEXT1_ ;(A)≥(30H)转NEXT1

__ MOV A,30H _ ;(A)<(30H),大数送A

NEXT1: DJNZ R7,LOOP ;比较次数减1,不为0,继续比较

__MOV 50H,A___ ;比较结束,大数送50H

RET

相关问答

单片机c语言 指令详解?

单片机C语言指令详解如下:位操作指令。MCS-51单片机的硬件结构中,有一个位处理器(又称布尔处理器),它有一套位变量处理的指令集。传送指令。MOVP1.3,C和...

学习 单片机C语言 ,哪些书比较好?

看单片机C语言教程如郭天祥的《新概念51单片机C语言教程》;如果不会C语言的话先把C语言学好,学谭浩强《C程序设计》,有C语言基础学C语言编程就没多大问题。单...

单片机c语言 keil编译程序老是提示KEYS.H(11): error C129: missing ';' before 'key'?

你这个程序也是做成了头文件了吧,在主程序中用#include定义包含这个头文件的位置是在typedefunsignedcharuint8;前面了吧,这样typedef的定义就无效了,交换...

单片机C语言 外部声明变量和定义的问题,求解答?

最好不要在.H里面定义变量,在.C定义变量,然后再.H声明就是extern。。。。最好不要在.H里面定义变量,在.C定义变量,然后再.H声明就是extern。。。。

单片机C语言 中比如led=~led,波浪线什么意思? - 懂得

~在这里是按位取反的意思。按位取反是C语言位操作的一种,其操作符为~。该操作为单目操作,即只有一个操作数。~与其后的数值或变量相结合,执行取反计...

单片机C语言 要达到什么水平?

要学到什么程度是比较主观的,这取决于您期望的应用和使用场景。但是,通常来说,学习单片机C语言需要达到以下几个层次:1.掌握C语言基础:熟悉C语言的基本语...

51 单片机C语言 for循环延时程序时间计算设晶振12MHz,即一个机...

[最佳回答]不可能的,是不是你的编译有错的啊我改的晶振12M,在KEIL4.0里面编译的,为你得出的结果最大也就是40ms,这是软件的原因,不可能出现100ms那么大的差...

51 单片机c语言 是指哪些?

单片机c语言编程是基于C语言的单片机编程。单片机的C语言采用C51编译器(简称C51)。由C51产生的目标代码短,运行速度高,存储空间小,符合C语言的ANSI标准,生...

C语言 单片机C语言 的区别急求?

单片机c语言比起普通C语言增加了一些基本的指令,变量的赋值是16进制,当然单片机c语言只牵涉到普通c语言的基础部分。具体体现在:1、单片机中C的语法一般...

单片机C语言 计数器程序?

//timer0设定为计数器模式1TMOD&=0xf0;//清除原来的设定TMOD|=0x05;//T0为计数器模式1TH0=0;TL0=0;//从0开始计数TR0=...

猜你喜欢