单片机试题.docx
《单片机试题.docx》由会员分享,可在线阅读,更多相关《单片机试题.docx(24页珍藏版)》请在冰豆网上搜索。
单片机试题
单片机原理试题
填空题
1.十进制数178化成二进制数为,用压缩8421BCD码表示为。
2.十进制数124化成二进制数为,用压缩8421BCD码表示为。
3.十进制数98化成二进制数为,用压缩8421BCD码表示为。
4.十进制数96化成二进制数为,用压缩8421BCD码表示为。
5.AT89C52的一个机器周期有个时钟周期,若fosc=6MHZ,则一个机器周期为S,若fosc=3MHZ,则一个机器周期为若fosc=12MHZ,则一个机器周期为S,若fosc=4MHZ,则一个机器周期为S。
6.51单片机的一个机器周期有个时钟周期,若fosc=12MHZ,则一个机器周期为S。
7.AT89C52内部有字节数据存贮空间,地址空间为。
其内部有字节flashROM,外部可扩展字节数据存贮空间。
8.AT89C52内部有个存贮空间,内部有KB的flashROM,其程序空间可以扩展到KB。
9.AT89C52内部有KB程序存贮空间,外部可扩展KB程序存贮空间。
10.串行口的中断标志位必须由清零。
而定时器T0、T1中断标志位是由内部清零的。
11.外部中断0的中断标志位必须由清零。
而串行口中断标志位TI是由内部清零的。
12.AT89C52有中断源,可以实现中断嵌套。
13.外部中断1、定时器T1溢出、串行口的中断服务子程序的入口地址分别为:
,,。
14.AT89C52外部中断0、T2溢出、串行口的中断服务子程序的入口地址分别为:
,,。
15.C51中,定义变量:
charbdataa;则a存储于区域,而函数声明XXYY()interrupt1则将XXYY()声明为。
函数声明XXYY()interrupt4则将XXYY()声明为。
函数声明XXYY()interrupt0则将XXYY()声明为。
函数声明XXYY()interrupt3则将XXYY()声明为。
函数声明XXYY()interrupt2则将XXYY()声明为。
16.TLC549是8位二进制A/D转换器,其信号输入范围0~5V,满刻度为0FFH,则分辨率为。
17.8255A有个8位并行口,其工作方式0为。
18.内部有程序存贮器的单片机,若
接,PC值小于内部程序空间时读内部程序存贮器,PC值大于内部程序空间时读外部程序存贮器,若
接则直接读外部程序存贮器。
(填高电平或低电平)
19.AT89C52的串行口有种工作方式,其中方式0为方式,若fosc=12MHZ,波特率为。
其中方式1为方式,若fosc=12MHZ,波特率为。
其中方式2为方式,若fosc=12MHZ,波特率为。
其中方式3为方式,若fosc=12MHZ,波特率为。
20.MCS—51内部RAM中的及特殊功能寄存器中地址为可以位寻址。
21.MCS—51内部RAM中的可以位寻址的空间为。
22.外部中断0的中断标志位必须由清零。
而串行口中断标志位TI是由内部清零的。
23.AT89C52有定时器,其中有四种工作方式
24.调用的子程序的最后的一条指令应该为,中断服务子程序的最后的一条指令应该为。
25.AT89C52的串行口有种工作方式,其中方式0为方
式。
26.MCS—51有定时器,其中有四种工作方式
27.串行口的中断标志位必须由清零。
而定时器T0、T1中断标志位是由内部清零的。
28.MCS-51的并行口信息有和二种读取方法,读-改写操作是针对并行I/O口内的锁存器进行的。
29.半导体存储器分成两大类RAM和,其中具有易失性,常用于存储。
30.8051的引脚RST是(IN脚还是OUT脚),当其端出现电平时,8051进入复位状态。
8051一直维持这个值,直到RST脚收到电平,8051才脱离复位状态,进入程序运行状态,从ROM单元开始取指令并翻译和执行。
31.调用的子程序的最后一条指令应该为,中断服务子程序的最后的一条指令应该为。
32.若(IP)=00010100B,则优先级最高者为,最低者为。
(IP:
————PSPTIPX1PT0PX0)。
33.假定,SP=60H,A=30H,B=70H,执行下列指令:
PUSHACCPUSHB后,SP的内容为,61H单元的内容为,62H单元的内容为。
选择题
1.关于AT89C52并行口说法正确的是( )
A P1口没有内部提升电路B如果读引脚,可以先写0到P0口锁存器
CP2也可以输出数据的高八位DP3口是多功能口
2.AT89C52单片机复位后其P1口的输出状态为,( )
A、00HB、0FFHC、0F0HD、不确定
3.源操作数属于直接寻址的是( )
AMOV30H,ABM0VXA,@R0CMOVP0,#30HDMOVA,P0
4.设(A)=53H,(R0)=0FCH,执行指令ADDA,R0;结果( )
A(A)=4FH,CY=0,AC=0,OV=0,P=1 B(A)=4FH,CY=1,AC=0,OV=0,P=1
C(A)=34H,CY=1,AC=0,OV=0,P=1 D(A)=4FH,CY=1,AC=0,OV=1,P=1
5.下列选项中不是单片机生产商的是( )
A INTELBMOTOROLACPHILIPSDMICROSOFT
6.系统频率fosc为6MHZ,子程序DEL的功能为( )
DEL:
MOVR7,#200A延时约100ms
DEL1:
MOVR6,#125B延时约50ms
DEL2:
DJNZR6,DEL2CDEL2被执行125次
DJNZR7,DEL1D以上都不对
RET
7.51单片机复位后正确的是( )
A内部寄存器内容全为00HBSP的内容为60H
CP0∽P3的内容为0FFHD内部寄存器内容全部为0FFH
8.设(A)=85H,(20H)=0AFH,执行指令ADDA,20H,结果( )
A(A)=34H,CY=0,AC=1,OV=0B(A)=34H,CY=1,AC=1,OV=1
C(A)=4FH,CY=1,AC=1,OV=0D(A)=34H,CY=1,AC=0,OV=0
9.下列不是单片机总线是()
A、地址总线B、控制总线C、数据总线D、输出总线
10.AT89C52如果扩展程序存贮器,那么P2口( )
A 只能用其第二功能 B 只能用第一功能
C 可以用第一功能也可以用其第二功能 D以上都不对
12.下列正确指令中源操作数属于直接寻址的是( )
AMOV30H,#0A3HBM0VX3000H,FFHCMOVP0,300HDMOVA,30H
13.设(A)=53H,(R0)=0FCH,执行指令ADDA,R0;结果( )
A(A)=4FH,CY=0,AC=0,OV=0, B(A)=4FH,CY=1,AC=0,OV=0,
C(A)=34H,CY=1,AC=0,OV=0, D(A)=4FH,CY=1,AC=0,OV=1,
14.在计算机中,表示地址通常使用()
A.无符号数B.原码C.反码D.补码
15.AT89C52如果扩展程序存贮器,那么P2口( )
A 只能用其第二功能 B 只能用第一功能
C 可以用第一功能也可以用其第二功能 D以上都不对
16.51单片机复位后正确的是( )
A内部寄存器内容全为00HBSP的内容为60H
CP0∽P3的内容为0FFHD内部寄存器内容全部为0FFH
17.MCS—51CPU对用户开放的寄存器是( )
A ACCB PC、PSW、SUBF
C DPTR、SP、PC D SP、P0
18.系统频率fosc为12MHZ,子程序DEL的功能为( )
DEL:
MOVR7,#200A延时约100ms
DEL1:
MOVR6,#125B延时约50ms
DEL2:
DJNZR6,DEL2CDEL2被执行125次
DJNZR7,DEL1D以上都不对
RET
19.有关AT89C52中断说法错误的是()
A外部中断如果是边沿触发则下降沿有效B有6个中断源
C外部中断如果是电平触发则高电平有效D可以实现二级中断嵌套
20.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符应是()
A、MOV B、MOVXC、MOVCD、以上都行
21.若用数据指针DPTR作为间址寄存器访问外部数据存储器,它可访问的整个外部数据存储器的空间为()
A.4KBB.8KBC.16KBD.64KB
22.MCS-51中,CPU正在处理T1中断,若有同一优先级的外部中断
又提出中断请求,则CPU()
A.响应外部中断
B.延续进行原来的中断处理
C.发生错误D.不确定
22.AT89C52CPU复位后正确的是( )
A 内部寄存器内容全为00HB SP的内容为60H
C P0∽P3的内容为0FFHD 内部寄积存器内容全不为FFH
23.指令AJMP的跳转范围是()
A.256BB.1KBC.2KBD.64KB
24.下列选项中不是单片机生产厂家的是()
AMOTOROLABINTELC微软D西门子
25.已知某数的BCD码为0111010101000010则其表示的十进制数值为()
A.7542HB.7542C.75.42HD.75.42
26.MCS—51单片机的定时器/计数器工作方式1是()
A.8位计数器结构B.16位计数器结构C.13位计数器结构D.2个8位计数器结构
27.下列指令中不会影响标志位CY的指令有()
A.ADDA,20HB.CLRAC.RRCAD.SUBBA,R0
28.MCS—51单片机的外部中断0中断入口地址为()
A.0003HB.000BHC.0013HD.001BH
判断题
1.最小系统中P2口可以用作第一功能()
2.DEC@DPTR()
3.汇编语言中可以使用伪指令,它们是真正的指令,是用来对汇编过程进行
某种控制。
()
4.RLC30H()
5.ANL20H,#0F000H()
6.MOVX80H,#2000H()
7.MOVR3,R1()
8.RR20H()
9.SETB6EH()
10.MOV20H,#0F000H()
11.INC@R1()
12.DECDPTR()
13.MOV40H,0F1H()
14.MOV40H,@R1()
15.ANL20H,#0F0H()
16.INC@RO()
17.MOVC,P1.0()
18.MOVA,@R2()
19.MOVC,FFH()
20.MOVP1.0,0()
21.RLC()
22.MOV20H,21H()
23.片内RAM20H~2FH中的128个位地址与直接地址00H~7FH形式完全相同,因此在位寻址操作和直接寻址操作中,这两者是一样的。
()
24.对于内部没有ROM的单片机
必须接低电平()
25.PC存放的是当前执行的指令。
()
26.只要有中断CPU就会响应()
27.片内RAM20H~2FH中的128个位地址与直接地址00H~7FH形式完全相同,但是在位寻址操作和直接寻址操作中,这两者不是一样的。
()
28.ALE引脚信号可以作为地址锁存信号()
29.线选法可以充分利用空间,不会有空间重叠()
30.在R7初值为00H的情况下,DJNZR7,rel指令将循环执行255次。
()
31.MCS—51的串行口方式0是移位寄存器方式()
32.51单片机中,T1中断服务程序入口地址为0003H。
()
33.51单片机系统可以没有复位电路。
()
34.并行口中只有P0口没有第二功能,P1口没有上拉电路()
35.最小系统中P2口可以用作第一功能()
36.汇编语言中可以使用伪指令,它们是真正的指令,是用来对汇编过程进行某种控制。
()
37.MCS-51的特殊功能寄存器分布在60H~80H地址范围内。
()
38.单片机的位寻址区在内部RAM20H~2FH地址范围内()
39.定时器/计数器在使用前和溢出后,必须对其赋初值才能正常工作。
()
40.CPU每取一个指令字节,立即使程序计数器PC自动加1。
()
41.AJMP跳转空间最大可达到64KB。
()
42.CLR80H()
43.PUSHDPH()
44.CPLR5()
45.MOVXDPTR,#2000H()
46.DPTR只能当作一个16位的特殊功能寄存器来使用。
()
47.在89C51中,当CPU访问片内,片外ROM区时用MOVC指令,访问片外RAM区时用MOVX指令,访问片内RAM区时用MOV指令。
()
48.中断的矢量地址位于RAM区中。
()
分析题
1.(SP)=5FH,(50H)=4FH,(40)=04H,执行指令:
PUSH50H
PUSH40H
POP40H
POP50H
后,(50H)=,(40H)=。
2.执行指令后
MOVDPTR,#2003H
MOVA,#18H
MOV20H,#38H
MOVR0,#20H
XCHA,@R0
(A)=,(20H)=。
3.(SP)=60H,(A)=59H,(R0)=68H,执行指令:
…………………………
SS1:
……………
MOVR7,#0
DJNZR0,SS1
…………………………
后,(R7)=,SS1被执行次。
4.执行指令后
MOV56H,#34H
MOVR1,#56H
MOVA,@R1
MOVB,R1
HLT:
SJMPHLT
(A)=,(B)=。
5.执行指令:
JBC40H,rel后,(40H)=。
6.MOVR0,#00H
MOVA,R0
JZZE
MOVR1,#0FFH
RET
ZE:
MOVR1,#0
RET
程序执行后,(R1)=。
7.MOVA,#38H
CLRC
SUBBA,#30H
CJNEA,#0AH,ASC1
ASC1:
JCASC2
SUBBA,#07H
ASC2:
SJMPASC2
(A)=。
8.(SP)=60H,(A)=59H,(R0)=68H,执行指令:
PUSHACC
PUSHR0
POPACC
POPR0
后,(SP)=,(A)=,(R0)=。
9.MOVR7,#10H
MOVDPTR,#DATA
MOVB,#0
LOOP:
CLRA
MOVCA,@A+DPTR
CJNEA,B,NEXT1
NEXT1:
JCNEXT2
MOVB,A
NEXT2:
INCDPTR
DJNZR7,LOOP
HLT:
SJMPHLT
DATA:
DB01H,43H,06H,0EH,0AH,0DH,0FH
DB0EH,0FH,0DH,34H,7EH,3CH,55H,0EH
程序执行后,(B)=,(R7)=。
10.MOVA,#83H
JNBACC.7,NEXT
CPLA
ADDA,#01H
ORLA,#80H
NEXT:
SJMPHLT
(A)=。
11.执行下列程序段后:
SSS:
MOVR7,#10H
MOVR0,#30H
MOVDPTR,#8000H
SSJ:
MOVA,@R0
MOVX@DPTR,A
INCDPTR
INCR0
DNJZR7,SSJ
RET
(R7)=,(R0)=,(DPTR)=
程序段功能为
12.执行指令后
MOV56H,#34H
MOVR1,#56H
MOVA,@R1
MOVB,R1
HLT:
SJMPHLT
(A)=,(B)=,(R1)=
13.执行下列程序段后:
MOVA,#3
MOVDPTR,#0A000H
MOVCA,@A+DPTR
MOV30H,A
INCA
MOVCA,@A+DPTR
MOV31H,A
INCA
MOVCA,@A+DPTR
MOV32H,A
ORG0A000H
DB0,1,2,3,4,5,6,7,8,9,0AH,
DB0BH,0CH,0DH,0EH,0FH
(30H)=;(31H)=;(32H)=;(A)=
14.统计频率为12MHz,执行下列指令后
DEL:
MOVR7,#200
DEL1:
MOVR6,#125
DEL2;DJNZR6,DEL2
DJNZR7,DEL1
RET
(R7)=;(R6)=;可以延时ms,DEL1被执行次。
15.已知(A)=83H,(R0)=17H,(17H)=34H,执行下列程序段后:
ANLA,#17H
ORL17H,A
XRLA,@R0
CPLA
问:
(A)=,(R0)=,(17H)=。
16.已知(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)=(10H)=(2EH)=
(40H)=(60H)=
17.执行下列程序段:
MOVA,#00H
MOVR7,#0FFH
MOVPSW,#80H
ADDCA,R7
问:
(CY)=(AC)=(P)=
(ACC)=(R7)=
18.已知(A)=19H,(B)=04H
DIVAB
问:
执行后,(A)=(B)=
19.执行下列程序段中第一条指令后,(P1.7)=____,(P1.3)=____,
(P1.2)=____;执行第二条指令后,(P1.5)=________,(P1.4)=________,(P1.3)=________.
ANLP1,#73H
ORLP1,#38H
20.下列程序段执行后,(A)=_________,(B)=_________.
MOVA,#0FBH
MOVB,#12H
DIVAB
21.下列程序段执行后,(R0)=______,(7EH)=_____,(7FH)=_____.
MOVR0,#7FH
MOV7EH,#0
MOV7FH,#40H
DEC@R0
DECR0
DEC@R0
22.已知(SP)=09H,(DPTR)=4567H,在执行下列指令后,(SP)=_____,内部RAM(0AH)=_____,(0BH)=____
PUSHDPL
PUSHDPH
23.下列程序中注释的数字为执行该指令所需的机器周期数,若单片机的晶振频率为6MHz,问执行下列程序需要多少时间_______
MOVR3,#100;1
LOOP:
NOP;1
NOP
NOP
DJNZR3,LOOP;2
RET;2
24.执行下面程序后,所实现的逻辑运算式为___p1.7=p1.3^p1.1^/p1.4__。
MOVC,P1.3
ANLC,P1.1
CPLP1.4
ANLC,P1.4
MOVP1.7,C
25.写出下面每条指令顺序执行后,各目的存储单元的值,并说明该条指令中源操作数的寻址方式。
MOVR0,#20H;(R0)=寻址____________
MOV20H,#29H;(20H)=寻址____________
CLRC ;CY=______________
MOVA,@R0;(A)=寻址____________
26.执行如下三条指令后,30H单元的内容是
MOVR1,#30H
MOV40H,#0EH
MOV﹫R1,40H
27.请分析下面程序执行后的操作结果,(A)=,(R0)=。
MOVA,#60H
MOVR0,#40H
MOV@R0,A
MOV41H,R0
XCHA,R0
28.已知片内RAM中ONE和TWO两个单元中存有两个无符号数,将两个数中的小者存入30H单元。
请完成以下程序实现上述功能。
MOVA,ONE
CJNEA,TWO,BIG
BIG:
STO
MOVA,TWO
STO:
MOV30H,A
RET
29.执行下面程序后,(A)=_____________。
MOVA,#06H
MOVCA,@A+PC
DB00H,01H,02H,03H,04H,05H,06H
30.设(SP)=60H,片内RAM的(30H)=24H,(31H)=10H,执行程序:
PUSH30H
PUSH3lH
POPDPL
POPDPH
MOVA,#00H
MOVX@DPTR,A
最后执行结果是将0送_____________。
31.写出下面每条指令顺序执行后,各目的存储单元的值,并说明该条指令中源操作数的寻址方式(已知内部RAM(40H)的值为30H)。
MOVR1,#40H;寻址
CLRC ;(Cy)=寻址
MOVA,@R1;(A)=寻址
RLCA;(A)=寻址
32.有如下程序段:
MOVR0,#30H
SETBC
CLRA
ADDCA,R0
MOV﹫R0,A
执行后(30H)=
33.执行下列程序后,(A)=,(B)=。
MOVA,#0AH
MOVB,#20H
MULAB
34.存放于A