复习参考资料单片机试题3参考答案docWord格式文档下载.docx
《复习参考资料单片机试题3参考答案docWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《复习参考资料单片机试题3参考答案docWord格式文档下载.docx(10页珍藏版)》请在冰点文库上搜索。
![复习参考资料单片机试题3参考答案docWord格式文档下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/1/81762f34-9615-4cfb-a4f1-b3d6ab4ccafe/81762f34-9615-4cfb-a4f1-b3d6ab4ccafe1.gif)
号有效。
7.区分外部程序存储器和数据存储器的最^的方法是看其是被RD*还是被PSEN*信号连接。
8051可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。
8.逐次比较型A/D转换器与双积分A/D转换器比较,转换速度比较慢。
9.MOVFO,C(V)
10.MOV28H,@R4;
(X)
11.AT89S51单片机的P3口是一个单一功能的准双向通用I/O
口。
三、选择题
1.以下指令中,哪条指令执行后使标志位CY清0?
(C)
A.MOVA,#00HB.CLRAC.ADDA,#00H
2.当需要从AT89S51单片机程序存储器取数据时,采用的指令
A.MOVA,@R1
B.MOVCA,@A+DPTR
C.MOVXA,@R0
D.MOVXA,@DPTR
3•共阳数码管要显示字形“A”时,则对应的七段码值为(A)
A.88HB.83HC.C6HD.A1H
4.有一位共阴极LED显示器,要使它显示“5”,它的字段码为(A)。
A.6DHB.92HC.FFHD.OOH
5•单片机时钟周期为TO,则机器周期为(D)
A.2T0B.4T0C.8T0D.12T0
6.单片机复位时,程序计数器(PC)的值为(A)。
A.OOOOHB.0030HC.4000HD.
41OOH
7.某存储器芯片有12根地址线,8根数据线,该芯片存(D)个存储单元。
A.1KBB.2KBC.3KBD.4
KB
8.外部数据存储器读写指令为(C)
A.MOVB.MOVCC.MOVXD.MOVA
9.M0VA,R1的寻址方式为(C)
A.立即寻址C.直接寻址C.寄存器寻址D.
寄存器间接寻址
10.串行口发送中断标志位为(A)
A.TIB.RIC.IEOD.IE1
11.T1中断允许控制位为(B)
A.ETO
B.ET1
C.ES
D.EX1
12•外部中断1中断优先级控制位为(B)
(A)PXO(B)PX1(C)PT1(D)PS
13.已知X的补码为10000010B,则X的真值是十进制(D)。
A.127B.-127C.126D.-126
14.若PSW.4=0,PSW.3=1,要想把寄存器R0的内容入栈,应使用(D)指令。
A.PUSHROB.PUSH@R0C.PUSHOOHD.PUSH
08H
PSW中的8位内容为CYACFORS1RSOOV—P
其第三、四位RSIRSO用作工作寄存器组选择,00、01、10、11分别选择工作寄存器0、1、2、3区,对应地址分别为00H〜07H、08H〜OFH、10H〜17H、18H〜1FH。
这里PSW中的内容为08H,即00001000
其第三、四位RSIRSO为01,对应地址为08H〜0FH。
所以通用寄存器R0的地址为08H
15.多字节加法运算,在进行最低字节相减前,应先将CY(A)A.清0B.置1C.取反D.送入A
16.
为(
D)。
D.64
单片机的程序计数器(PC)是16位的,其寻址范
A.128BB.256BC.8KB
18.8051单片机中的片内程序存储器空间有多大?
(B)
A.OKBB.4KBC.8KBD.64KB
19.AT89S51单片机要用传送指令访问片外数据存储器,它的指
令操作码助记符是以下哪个?
(c)
A.MUL
B.MOV
C.MOVX
D.MOVC
20.指令MOVPSW,#00H对源操作数而言,属于哪种寻址方
式?
A.直接寻址B.立即寻址
C.寄存器寻址D.
相对寻址
21.单片机的数据指针寄存器(DPTR)是16位的,其寻址范
多少?
(D
A.128B
B.256B
C.8KB
22.AT89S51单片机的串行中断入U地址为(C)
B.0013H
A.0003H
C.0023HD.0033H
23.以下哪一条指令的写法是错误的(C)。
A.MOVDPTR,#3F98HB.MOVR0,#0FEHC.MOV50H,#0FC3DHD.INCR0
24.AT89S51单片机的堆栈区是设置在(C)中。
A.片内ROM区B.片外ROM区C.片内RAM区D•片外RAM区
25.以下哪一条是位操作指令(B)。
A.MOVP0,#0FFH
B.CLRP1.0C.
CPLA
D.POPPSW
26.下列指令不是变址寻址方式的是(C)
A.
JMP@A+DPTRB.
MOVCA,@A+PC
C.MOVXA,@DPTRD.
MOVCA,@A+DPTR
27.以下哪一条是位操作指令(B)。
A.MOVPl,#0FFHB.MOVC,ACC.lC.
CPLAD.POPPSW
四、填空
1.通过堆栈操作实现子程序调用,首先就要把
(PC)的内容入栈,以进行断点保护。
调用返回时,再进
行出栈保护,把保护的断点送回到(PC)。
2.子程序返回指令是(RET),中断子程序返回指令是
(RETI)。
3.AT89S51单片机外部中断请求信号右电平方式和脉冲方式,在电平方式下,当采集到INTO、INTI的有效信号为(低电平)时,激活外部中断。
五、程序分析题
1.对程序段做出注释并写出执行结果。
ORG0000H;
复位地址
LJMPMAIN;
跳转到主程序
ORG0030H
;
主程序入口地址
MAIN:
MOVTMOD,#90H
T1工作于定吋方式1,GATE=1
MOVTL1,#OOH
计数初值设为0
MOVTH1,#00H
当fosc为12MHz时最大脉冲宽度
为65.536ms
RL1:
JBP3.3,RL1
等待P3.3变低
SETBTRI
启动T1
RL2:
JNBP3.3,RL2
等待P3.3变高
RL3:
JBP3.3,RL3
等待P3.3再次变低
CLRTRI
停止T1
MOV30H,TH1
于30H和31H中
读取脉冲宽度高低字节值;
分别存放
MOV31H,TL1
分别存放于30H和31H中
SJMP$
END
程序执行结果:
测量加在P3.3引脚上的正脉冲宽度。
2.对程序段做出注释并写出执行结果。
ORG0000H
AJMPSTART
ORG30H
MOVPl,AAJMPLOOP
将累加器A的内容送到Pl口
START:
MOVSP,#9FH
MOVTMOD,#00000101B
定时/计数器1作计数用,0不用全置0
SETBTR0
启动计数器0开始运行.
LOOP:
MOVA,TL0
将计数器T0低八位数值传送到累加器
A
Pl口以二进制的形式显示P3.4输入脉冲的个数
3、外部RAM3000H,3001H单元的内容分别为55H,ODDH,试分析如下程序,并回答问题。
4000H
程序1:
MOVDPTR,#3000HMOVRl,#40HMOVXA,@DPTRMOV@R1,A
3001H——pp3000H-「「
INCR1
INCDPTRMOVXA,@DPTR
MOV@R1,A
问题1:
若执行上述程序,则结束后,DPTR值为3001H,R1的内容为41H,8031内部RAM41H单元的内容DDH,40H单元内容为_55H_O
在上程序中,若继续执行如下程序
程序2:
START:
MOVDPTR,#3000HMOVR1,#40HMOVA,@R1MOVX@DPTR,A
问题2、START执行结束后,DPTR的值为_3000H_,4000H单元的内容为_55H_,R1的内容*_40H_。
问题3:
执行如下程序,填出A寄存器的内容。
程序3、MOVA、#88HMOVR7,#AAH
ORLA、R7:
A的内容为:
_AAH_
MOVA,#37H
MOVR7,#89H
ANLA,R7A的内容为:
_01H_
XRLA,R7A的内容为:
_88H_
RET
六、程序设计题
1.在AT89S51中,石英晶振为12MHZ,让与P1.0连按的LED发光二极管每隔一秒点亮1次,试完成编写程序。
LJMPMAIN
跳到主程序
ORG000BH
LJMPTIMERO
跳到TO服务程序
ORG01OOH
MOV
TMOD,#01H;
设置TO方式1定时
MOVTHO,#3CH;
送50ms时间常数MOVTLO,#0B0H
MOVR7,#20
设置软件计数20次,定时Is
SETBETO
允许TO中断
SETBEA
开中断
CLRPTO
设置T0中断为低级中断
SETBTRO
启动T0定时
等待中断
ORG0200H
进入中断服务程序
TIMERO:
DJNZR7,BACK;
ls时间未到转入BACKMOVR7,#20;
ls时间到重设软件计数器CPLP1.0;
对?
1.0信号取反
BACK:
MOVTHO,#3CH;
重装时间常数
MOVTLO,#0B0H
RETI
中断返回