单片机练习题答案.docx
《单片机练习题答案.docx》由会员分享,可在线阅读,更多相关《单片机练习题答案.docx(18页珍藏版)》请在冰豆网上搜索。
单片机练习题答案
单片机练习题答案
一、填空题
1、若单片机振荡脉冲频率为6MHz时,一个机器周期为______2μs________。
2、AT89C51单片机的XTAL1和XTAL2引脚是___外接晶振或时钟__引脚。
3、定时器/计数器的工作方式3是指的将定时器/计数器T0拆成两个独立的8位计数器。
4、若由程序设定RS1、RS0=01,则工作寄存器R0~R7的直接地址为__08~0FH____。
5、写出完成相应功能的汇编指令:
将立即数11H送到R2____MOVR2,#11H____、使ACC.2置位____SETBACC.2__、使累加器的最低2位清零___ANLA,#0FCH___。
6、A/D转换的作用是将__模拟____量转为数字量。
ADC0809是__8___位的A/D转换芯片。
7、8051的堆栈区一般开辟在用户RAM区的地址为30H~7FH。
8、所谓寻址,其实质就是__如何确定操作数的单元地址问题_。
9、若单片机振荡脉冲频率为12MHz时,一个机器周期为____1μs______。
10、定时器中断请求发生在__计数溢出的时候_____。
11、中断响应时间是指__从中断请求发生直到被响应去执行中断服务程序所需的时间____。
12、通过CPU对I/O状态的测试,只有I/O已准备好时才能进行I/O传送,这种传送方式称为____程序查询方式___。
13、在中断服务程序中现场保护和现场恢复期间,中断系统应处在__关中断__状态。
14、8051单片机的内部硬件结构包括了:
中央处理器(CPU)、数据存储器(RAM)、程序存储器、和2个16位定时/计数器以及并行I/O口、串行口、中断控制系统、时钟电路、位处理器等部件,这些部件通过 内部总线相连接。
15、MCS-51的堆栈只可设置在RAM的地址为30H~7FH,堆栈寄存器sp是8位寄存器。
16、MCS-51单片机的P0~P4口均是并行I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的数据总线和地址总线 ,在P0~P4口中,P0为真正的双相口,P1—P3为准双向口;P3口具有第二引脚功能。
17、若LED为共阳极接法(即负逻辑控制),则字符3的八段代码值(a->dot)应当为__0D__H。
18、MCS-51片内20H~2FH范围内的数据存储器,既可以__字节__寻址又可以位寻址。
19、AT89C51单片机有___2___级中断,___5___个中断源。
20、MCS-51系列单片机的典型芯片型号分别为_____8031或8051_____、_____AT89C51或AT89C52_____、_____AT89S51或AT89S52____。
21、假定(SP)=40H, (39H)=30H,(40H)=60H。
执行下列指令:
POP DPH
POP DPL
后,DPTR的内容为6030H,SP的内容是38H。
22、MCS—51单片机外部中断请求信号有电平方式和边沿方式,在电平方式下,当采集到INT0、INT1的有效信号为低电平时,激活外部中断。
23、十进制数45转换成十六进制数是__2D___H,转换成二进制数是___00101101___B。
24、AT89C51单片机内部硬件结构是由一个___8___位中央处理器(CPU)、一个256B片内RAM及___4___KBFlashROM、___21___个特殊功能寄存器、___4___个8位并行I/O口、___2___个16位定时/计数器、___1___个串行I/O口以及中断系统等部分组成,各功能部件通过片内单一总线联成一个整体,集成在一块芯片上。
25、单片机内有组成微机的主要功能部件CPU、存储器和I/O接口。
26、堆栈的特性是先进后出,8051的堆栈一般开辟在内部RAM30H~7FH的范围内,其堆栈指针是SP。
27、RS232C是串行通信总线标准。
28、AT89C51单片机的P0口用作输出时,应外接____上拉电阻___。
29、除了单片机芯片和电源外,AT89C51单片机最小系统包括____时钟______电路和_____复位____电路。
30、MCS-51有一个全双工的异步串行口,有4种工作方式。
二、选择题
1、下列同样优先级的中断源同时请求时,哪个可以优先处理?
C
A.T0B.T1C.INT0D.INT1
2、MCS-51单片机复位操作的主要功能是把PC初始化为C。
A.0100HB.2080HC.0000HD.8000H
3、在MCS-51单片机内,当执行中断处理程序最后一句指令RETI后,D。
A.程序返回到ACALL的下一句B.程序返回到LCALL的下一句
C.程序返回到主程序开始处D.程序返回到响应中断时一句的下一句
4、8051单片机中,唯一一个用户可以使用的16位寄存器是D。
A.PSWB.ACCC.SPD.DPTR
5、在CPU内部,反映程序运行状态或反映运算结果的寄存器是B。
A.PCB.PSWC.AD.SP
6、下列指令能使累加器A的最高位置1的是D。
A.ANLA,#7FHB.ANLA,#80HC.ORLA,#7FHD.ORLA,#80H
7、MCS-51系列单片机的汇编指令系统共A条指令。
A.111B.112C.113D.115
8、MCS-51单片机CPU的主要组成部分为A。
A.运算器、控制器B.加法器、寄存器C.运算器、加法器D.运算器、译码器
9、单片机上电复位后,PC的内容和SP的内容为B。
A.0000H,00HB.0000H,07HC.0003H,07HD.0800H,08H
10、访问外部存储器或其它接口芯片时,作数据线和低8位地址线的是A。
A.P0口B.P1口C.P2口D.P0口和P2口
11、8051单片机上电复位后,堆栈区的最大允许范围是B个单元。
A.64B.120C.128D.256
12、8051的P0口,当使用外部存储器时它是一个D。
A.传输高8位地址口A.传输低8位地址口
C.传输高8位数据口D.传输低8位地址/数据口
13、寻址方式就是C的方式。
A.查找指令操作码B.查找指令C.查找指令操作数D.查找指令操作码和操作数
14、ALU表示D。
A.累加器B.程序状态字寄存器C.计数器D.算术逻辑部件
15、定时/计数器有4种操作模式,它们由B寄存器中的M1M0状态决定。
A.TCONB.TMODC.PCOND.SCON
16、判断运算是否溢出时用PSW的B标志位。
A.CYB.OVC.PD.RS0
17、访问片外数据存储器的寻址方式是C。
A.立即寻址B.寄存器寻址C.寄存器间接寻址D.直接寻址
18、8051单片机的VSS(20)引脚是B引脚。
A.主电源+5VB.接地C.备用电源D.访问片外存贮器
19、下列指令正确的是A。
A.MOVDPTR,#1234HB.MOVR1,R2C.MOVA,@DPTRD.MOVA,@A+DPTR
20、所谓CPU是指A。
A、运算器和控制器B、运算器和存储器C、输入输出设备D、控制器和存储器
21、MCS-51复位后,程序计数器PC=B。
即单片机从B开始执行指令。
A.0001HB.0000HC.0003HD.0023H
22、单片机的P0、P1口作输入用途之前必须A。
A.在相应端口先置1B.在相应端口先置0C.外接高电平D.外接上拉电阻
23、程序是以C形式存放在程序存储器中的。
A.C语言程序B.汇编程序
C.二进制编码D.BCD码
24、用Protues软件仿真单片机实验时,要装载到单片机中的文件后缀名是A。
A.HEXB.SDIC.LSID.ASM
25、MCS-51单片机复位后,专用寄存器ACC的状态是C。
A.01HB.07HC.00HD.0FFH
26、8051的程序计数器PC为16位计数器,其寻址范围是D。
A.8KB.16KC.32KD.64K
27、MCS-51的立即寻址方式中,立即数前面D。
A.应加前缀“/:
”号B.不加前缀号C.应加前缀“@”号D.应加前缀“#”号
28、单片机中PUSH和POP指令常用来C。
A.保护断点B.保护现场C.保护现场,恢复现场
D.保护断点,恢复断点
29、MCS-51寻址方式中,直接寻址的寻址空间是D。
A.工作寄存器R0~R7 B.专用寄存器SFR C.程序存储器ROM
D.数据存储器256字节范围
30、单片机中使用MOVXA,@R1指令,C寻址数据存储器1050H单元。
A.能直接B.不能C.与P2口配合能D.与P1口配合能
31、下列指令中比较转移指令是指B。
DJNZRn,relB.CJNERn,#data,relC.DJNZdirect,relD.JBCbit,rel
32、执行如下三条指令后,30H单元的内容是B。
MOVR1,#30H
MOV40H,#0EH
MOV@R1,40H
A.40HB.0EHC.30HD.FFH
33、在MCS-51指令中,下列指令中C是无条件转移指令。
A.LCALLaddr16B.DJNZdirect,relC.SJMPrelD.ACALLaddr11
34、可实现将内部数据存储单元的内容传送到累加器A中的指令是C。
A.MOVXA,@R0B.MOVA,#dataC.MOVA,@R0D.MOVXA,@DPTR
35、指令MULAB执行前(A)=18H,(B)=05H,执行后,A、B的内容是D。
A.90H,05HB.90H,00HC.78H,05HD.78H,00H
36、MCS-51指令系统中,指令MOVA,@R0,执行前(A)=86H,(R0)=20H,(20H)=18H,执行后C。
A.(A)=86HB.(A)=20HC.(A)=18HD.(A)=00H
37、MCS-51指令系统中,指令ADDA,R0执行前(A)=38H,(R0)=54H,(C)=1执行后,其结果为D。
A.(A)=92H(C)=1B.(A)=92H(C)=0
C.(A)=8CH(C)=1D.(A)=8CH(C)=0
38、控制串行接口工作方式的寄存器是C
A.TCONB.PCONC.SCOND.TMOD
39、已知:
R0=12H(12H)=28H
MOVA,#32H
MOVA,45H
MOVA,@R0执行结果A的内容为B
A.46HB.28HC.45HD.32H
40、下列指令能使累加器A低4位不变,高4位置F的是D。
A.ANLA,#OFHB.ANLA,#OFOHC.ORLA,#OFHD.ORLA,#OF0H
41、下列指令能使R0高4位不变,低4位置F的是C。
A.ANLR0,#OFHB.ANLR0,#OFOHC.ORL0,#OFHD.ORLR0,#OFH
42、单片机中的程序计数器PC用来C。
A.存放指令B.存放正在执行的指令地址
C.存放下一条指令地址D.存放上一条指令地址
43、单片机AT89C51访问片外程序存储器,
引脚A。
A.必须接地B.必须接+5V电源
C.可悬空D.以上三种情况视需要而定
44、下列指令能使R0的最高位取反的是B。
A.CPLR0.7B.XRL00H,#80HC.CPL(R0).7D.ARLR0,#80H
45、下列指令判断若累加器A的内容不为0就转LP的是D。
A.JBA,LPB.JNZA,LPC.JZLPD.CJNEA,#0,LP
46、MCS-51指令系统中,执行下列程序后,程序计数器PC的内容为C。
ORG000H
MOVDPDR,#1000
MOVA,#00H
MOV20H,A
LJMP1500
END
A.100B.1000C.1500D.0
47、MCS-51指令系统中,执行下列程序后,堆栈指针SP的内容为B。
MOVSP,#30H
MOVA,20H
LACALL1000
MOV20H,A
SJMP$
A.00HB.30HC.32HD.07H
48、在单片机算术运算过程中,指令DAA常用于C运算。
A.二进制B.加法C.BCD码加法D.十六进制
49、指令ANLA,R0的功能是A。
A.将A与寄存器R0的内部容按位逻辑与B.将A与寄存器R0的内部容按位逻辑异或
C.将A与寄存器R0的内部容按位逻辑非D.将A与寄存器R0的内部容按位逻辑或
50、执行下列程序后,内部RAM30H单元的内容是B。
MOV30H,#00H
MOVR0,#30H
MOVA,30H
ADDA,#05H
MOVCA,@A+PC
MOV@R0,A
SJMP$
TDB:
DB00H,01H,02H,03H,05H
A.00HB.02HC.05HD.30H
51、定时器T1的溢出标志为TF1,采用查询方式,若查询到有溢出时,该标志A。
A.由软件清零B.由硬件自动清零C.随机状态D.AB都可以
52、对程序存储器的读操作,只能用下列哪一种指令B。
A.MOVB.MOVCC.MOVXD.PUSH
53、将内部数据存储器53H单元的内容传送至累加器,其指令是A。
A.MOVA,53HB.MOVA,#53HC.MOVCA,53HD.MOVXA,#53H
54、8051单片机的定时器T1用作定时方式时是B。
A.由内部时钟频率定时,一个时钟周期加1
B.由内部时钟频率定时,一个机器周期加1
C.由外部时钟频率定时,一个时钟周期加1
D.由外部时钟频率定时,一个机器周期加1
55、8051单片机的定时器T0用作定时方式时是D。
A.由内部时钟频率定时,一个时钟周期加1
B.由外部计数脉冲计数,一个机器周期加1
C.外部定时脉冲由T0(P3.4)输入定时
D.由内部时钟频率计数,一个机器周期加1
56、用8051的定时器T1作计数方式,用模式2,则工作方式控制字为A。
A.60HB.02HC.06HD.20H
57、用8051的定时器T1作定时方式,用模式2,则初始化编程为B。
A.MOVTOMD,#06HB.MOVTOMD,#20HC.MOVTOMD,#10HD.MOVTOMD,#60H
58、启动定时器1开始定时的指令是D。
A.CLRTR0B.CLRTR1C.SETBTR0D.SETBTR1
59、使8051的定时器T1停止计数的指令是使TCON的D。
A.TF0位置1B.TR0位置1C.TR0位置0D.TR1位置0
60、下列指令判断若定时器T0未计满数就原地等待的是B。
A.JBT0,$B.JNBTF0,$C.JNBTR0,$D.JBTF0,$
61、当CPU响应外部中断1INT1的中断请求后,程序计数器PC的内容是C。
A.0003HB.000BHC.00013HD.001BH
62、MCS-51单片机的串行口是B工作的。
A.单工B.全双工C.半双工D.单工/半双工
63、若某存储器芯片地址线为10根,那么它的存储容量为A。
A.1KBB.2KBC.4KBD.8KB
64、当外部中断0发出中断请求后,中断响应的条件是C。
A.SETBET0B.SETBEX0C.MOVIE,#81HD.MOVIE,#61H
三、判断题
(×)1.MCS-51单片机是高档16位单片机。
(√)2.8051的累加器ACC是一个8位的寄存器,简称为A,用来存一个操作数或中间结果。
(√)3.MCS-51的数据存储器在物理上和逻辑上都分为两个地址空间:
一个是片内的256字节的RAM,另一个是片外最大可扩充64K字节的RAM。
(×)4.单片机的一个机器周期是指完成某一个规定操作所需的时间,一般情况下,一个机器周期等于一个时钟周期。
(×)5.MCS-51单片机上电复位后,片内数据存储器的内容均为00H。
(×)6.MCS-51单片机的片内存储器称为程序存储器。
(√)7.所谓的单片机,就是将CPU、存储器、定时/计数器、中断功能以及I/O设备等主要功能部件都集成在一起的超大规模集成电路的微型计算机。
(×)8.8051每个中断源相应地在芯片上都有其中断请求输入引脚。
(×)9.MCS-51单片机的指令格式中操作码与操作数之间必须用“,”分隔。
(√)10.MCS-51指令:
MOVXA,@DPTR;表示将DPTR指示的地址单元中的内容传送至A中。
(×)11.MCS-51指令中,MOVC为ROM传送指令。
(×)12.RCA为循环左移指令。
(×)13.CPU和外设之间的数据传送方式主要有查询方式和中断方式,两者相比后者的效率更低。
(√)14.MCS-51单片机,CPU对片外RAM的访问只能用寄存器间接寻址的方式,且仅有4条指令。
(×)15.指令MULAB执行前(A)=F0H,(B)=05H,执行后(A)=FH5,(B)=00H。
(×)16.-13的反码是11111010,补码是11110111
(√)17.MOVA,@R7将R7单元中的数据作为地址,从该地址中取数,送入A中。
(×)18.已知:
A=1FH,(30H)=83H,执行ANLA,30H后,结果:
A=03H(30H)=83HP=0。
(×)19.MCS-51指令系统中,执行指令ORG2000H;
BCD:
DB“A,B,C,D”;
表示将A、B、C、D的ASII码值依次存入2000H开始的连续单元中。
(×)20.51单片机只能做控制用,不能完成算术运算。
下面几条指令是否正确:
(√)21.MOV@R1,80H
(√)22.INCDPTR
(×)23.CLRR0
(×)24.ANLR1,#0FH
(×)25.8051单片机的PC与DPTR都在CPU片内,因此指令MOVCA,@A+PC与指令MOVCA,@A+DPTR执行时只在单片机内部操作,不涉及片外存储器。
(×)26.设PC的内容为35H,若要把程序存贮器08FEH单元的数据传送至累加器A,则必须使用指令MOVCA,@A+PC。
(√)27.在MCS-51单片机内部结构中,TCON为控制寄存器,主要用来控制定时器的启动与停止。
(×)28.PC存放的是当前执行的指令。
(×)29.DECCA,C该指令书写格式正确。
(√)30.MCS-51单片机系统复位时,TMOD模式控制寄存器的低4位均为0。
(×)31.8051单片机对最高优先权的中断响应是无条件的。
(√)32.MCS-51单片机的中断允许寄存器的IE的作用是用来对各中断源进行开放或屏蔽的控制。
(√)33.为了消除按键的抖动,常用的方法有硬件和软件两种方法。
(×)34.ADC0809是一块数/模转换芯片,而DAC0832是一块模/数转换芯片。
(√)35.串行口的中断,CPU响应中断后,必须在中断服务程序中,用软件清除相应的中断标志位,以撤消中断请求。
(√)36.指令JNBTF0,LP的含义是:
若定时器T0未计满数,就转LP。
(×)37.当8051的定时器T0计满数变为0后,溢出标志位(TCON的TF0)也变为0。
四、程序分析题
1、已知(A)=83H,(R0)=17H,(17H)=34H,执行下列程序段后:
ANLA,#17H
ORL17H,A
XRLA,@R0
CPLA
问:
(A)=CBH,(R0)=17H,(17H)=37H。
2、已知(10H)=5AH,(2EH)=1FH,(40H)=2EH,(60H)=3DH,
执行下列程序段后:
MOV20H,60H
MOVR1,20H
MOVA,40H
XCHA,R1
XCHA,60H
XCHA,@R1
MOVR0,#10H
XCHDA,@R0
问:
(A)=5AH(10H)=1FH(2EH)=3DH
(40H)=2EH(60H)=3DH
3、执行下列程序段:
MOVA,#00H
MOVR7,#0FFH
MOVPSW,#80H
ADDCA,R7
问:
(CY)=1(AC)=1(P)=0
(ACC)=00H(R7)=0FFH
4、已知(A)=19H,(B)=04H
DIVAB
问:
执行后,(A)=6(B)=1
5、写出执行每条指令后的结果。
MOVA,#25H
CLRA;(A)=___00H___。
CPLA;(A)=___0DAH____。
6、执行下列程序段中第一条指令后,(P1.7)=_0___,(P1.3)=_0___,
(P1.2)=__0___;执行第二条指令后,(P1.5)=_____1___,(P1.4)=____1_____,
(P1.3)=____1____.
ANLP1,#73H
ORLP1,#38H
7、下列程序段执行后,(A)=___13______,(B)=___16______.
MOVA,#0FBH
MOVB,#12H
DIVAB
8、下列程序段执行后,(R0)=__7EH_____,(7EH)=_FFH____,(7FH)=__3FH___.
MOVR0,#7FH
MOV7EH,#0
MOV7FH,#40H
DEC@R0
DECR0
DEC@R0
9、写出下列指令执行后的结果。
MOVA,#37H
MOVR0,#20H
MOV@R0,A
ANLA,#0FH
(A)=__07H___(R0)=__20H__(20H)=__37H__
10、已知(SP)=09H,(DPTR)=4567H,在执行下列指令后,(SP)=__0BH___,内部RAM
(0AH)=__46H___,(0BH)=__45H__
PUSHDPL
PUSHDPH
11、下列程序中注释的数字为执行该指