内容正文:
《单片机技术与应用》(高教版第2版)
期末复习卷(六)
时间:90分钟 总分:100分
班级 姓名 学号 成绩
一、选择题(本大题共8小题,每小题2分,共16分)
1.字符a的ASCII码是 ( )
A.65 B.66 C.96 D.97
2.二进制的进位规则是 ( )
A.逢二进一 B.逢八进一 C.逢十进一 D.逢十六进一
3.51单片机的仿真软件是 ( )
A.Proteus B.PLC C.Tia D.Altium
4.51单片机中表示程序状态字标识符的是( )
A.P1* B.SP C.PSW* D.DPTR
5.MCS-51系列单片机复位后,PC与SP的值为 ( )
A.0000H,0OH B.0000H,07H C.0003H,07H D.0800H,00H
6.若(A)=0CFH,执行指令SWAPA后,(A)= ( )
A.OCH B.CFH C.FCH D.CSH
7.若PSW.4=0,PSW.3=1,现需要堆栈保存 RI 的内容,可执行的指令是 ( )
A.PUSH R1 B.PUSH @R1 C.PUSH 09H D.PUSH 19H
8.DACO832芯片是8位( )D/A转换器。
A.串行 B.并行 C.串/并行 D.串口
二、判断题(本大题共7小题,每小题2分,共14分)
1.逻辑与又称为逻辑乘,常用符号“A”表示。 ( )
2.程序计数器PC中存储的是下一条将要执行的指令地址,它是一个8位计数器,寻址范围达到32KB。 ( )
3.状态周期用S表示,它是振荡周期的1/2。 ( )
4.编写分支程序时控制转移指令DJNZ Rn.re的功能为寄存器内容减1不为0转移。 ( )
5.MCS-51系列单片机指令系统中,有两条查表指令。 ( )
6.当程序的判断部分有两个以上出口时,称为多分支程序结构。 ( )
7.51单片机中有1个外部中断源。 ( )
三、填空题(本大题共12小题,每空2分,共26分)
1.二进制数运算分为两类:一类是算术运算,另一类是 。
2.1MB= KB。
3. 主要用于存放程序、常数和表格,程序写入单片机的程序存储器,就不会改变,掉电时也不会消失,只能被读出来执行。
4.将数据77H送入22H中的指令是 。
5.指令MOV P0,#OFFH MOV A,PO的功能为 。
6.MCS-51单片机中,当内部存储器不够用时,可在片外扩展,最大扩展容量为 。
7.单片机能够执行的全部操作所对应的指令集合,称为单片机的______。
8.(A)=C9H,(R2)=54H,CY=1,执行如下指令:
SUBB A,R2
执行结果为:(A)=______,CY=0,AC=______,0V=1。
9.假定外部数据存储器2000H 单元的内容为60H, 执行下列指令后,累加器A的内容为______。
MOV DPTR,#2000H
MOV A,#OOH
MOV A,@DPTR
10.系列单片机中已知(IP)=16H,则中断响应的优先级顺序(从高到低)是 。
11.如果某8255芯片,PA口工作于方式1输入,PB口工作于方式0输出,则其控制字为 。
12.8255有1个8位控制口和 个8位数据口。
四、简答题(本大题共4小题,每小题5分,共20分)
1.将(1101101011.101)2转换成十六进制数。
2.复位的作用是什么?复位后单片机中特殊寄存器的值为如何?
3.设外部RAM(0203H)=OFFH,分析以下指令执行后(DPTR)、(30H)、(0203H)的结果。
MOV DPTR,#0203H
MOVX A,@DPTR
MOV 30H,A
MOV A,#OFH
MOVX @DPTR,A
4.已知(A)=38H,(R0)=28H,(28H)=18H 执行下列程序:
ORL A,#27H
ANL A,28H
XCHD A,@RO
CPL A
SWAP A
求执行结果为(A)的值
五、程序填空题。按照题目要求,将正确的内容填入相应位置,使得程序完整(本题每空3分,共24分)
1.假设被乘数放在R4、R3中,乘数放在R2中,编程实现乘积放在R7、R6和R5中。
NMUL:MOV A,R2
MOV B,R3
MUL 【1】
MOV R5,A
MOV R6,B
MOV A,【2】
MOV B,R4
MUL AB
ADD A,【3】
MOV R6,A
MOV A,B
ADDC A,#OOH
MOV R7,A
RET
2.已知单片机晶振频率为11.0592MHz,采用串口方式1,将波特率设置为4800bps,允许串口中断接收,完成串口初始化配置;编程实现:将内部RAM32H单元的内容通过串口发送出去,若接收到数据则存入内部RAM33H单元。
ORG 0000H
【1】
ORG 0023H
LJMP UART_ISR
ORG 0030H
MAIN:
【2】
MOV PCON,#00H
MOV TMOD,#20H
MOV TH1,#0FAH
MOV TL1,#0FAH
SETB TR1
SETB EA
SETB ES
MOV A,32H
【3】
SEND_WAIT:
JBC TI,SEND_OK
SJMP SEND_WAIT
SEND_OK:
【4】
UART_ISR:
PUSH ACC
PUSH PSW
JNB RI,TI_CLR
【5】
MOV 33H,A
CLR RI
TI_CLR: CLR TI
POP PSW
POP ACC
RETI
END
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
《单片机技术与应用》(高教版第2版)
期末复习卷(六)
时间:90分钟 总分:100分
班级 姓名 学号 成绩
一、选择题(本大题共8小题,每小题2分,共16分)
1.字符a的ASCII码是 ( )
A.65 B.66 C.96 D.97
【答案】D
2.二进制的进位规则是 ( )
A.逢二进一 B.逢八进一 C.逢十进一 D.逢十六进一
【答案】A
3.51单片机的仿真软件是 ( )
A.Proteus B.PLC C.Tia D.Altium
【答案】A
4.51单片机中表示程序状态字标识符的是( )
A.P1* B.SP C.PSW* D.DPTR
【答案】C
5.MCS-51系列单片机复位后,PC与SP的值为 ( )
A.0000H,0OH B.0000H,07H C.0003H,07H D.0800H,00H
【答案】B
6.若(A)=0CFH,执行指令SWAPA后,(A)= ( )
A.OCH B.CFH C.FCH D.CSH
【答案】C
7.若PSW.4=0,PSW.3=1,现需要堆栈保存 RI 的内容,可执行的指令是 ( )
A.PUSH R1 B.PUSH @R1 C.PUSH 09H D.PUSH 19H
【答案】C
8.DACO832芯片是8位( )D/A转换器。
A.串行 B.并行 C.串/并行 D.串口
【答案】B
二、判断题(本大题共7小题,每小题2分,共14分)
1.逻辑与又称为逻辑乘,常用符号“A”表示。 ( )
【答案】正确
2.程序计数器PC中存储的是下一条将要执行的指令地址,它是一个8位计数器,寻址范围达到32KB。 ( )
【答案】错误
3.状态周期用S表示,它是振荡周期的1/2。 ( )
【答案】错误
4.编写分支程序时控制转移指令DJNZ Rn.re的功能为寄存器内容减1不为0转移。 ( )
【答案】正确
5.MCS-51系列单片机指令系统中,有两条查表指令。 ( )
【答案】正确
6.当程序的判断部分有两个以上出口时,称为多分支程序结构。 ( )
【答案】正确
7.51单片机中有1个外部中断源。 ( )
【答案】错误
三、填空题(本大题共12小题,每空2分,共26分)
1.二进制数运算分为两类:一类是算术运算,另一类是 。
【答案】逻辑运算
2.1MB= KB。
【答案】1024
3. 主要用于存放程序、常数和表格,程序写入单片机的程序存储器,就不会改变,掉电时也不会消失,只能被读出来执行。
【答案】程序存储器(ROM)
4.将数据77H送入22H中的指令是 。
【答案】MOV 22H,#77H
5.指令MOV P0,#OFFH MOV A,PO的功能为 。
【答案】读PO口数据并送入A中
6.MCS-51单片机中,当内部存储器不够用时,可在片外扩展,最大扩展容量为 。
【答案】64KB
7.单片机能够执行的全部操作所对应的指令集合,称为单片机的______。
【答案】指令系统
8.(A)=C9H,(R2)=54H,CY=1,执行如下指令:
SUBB A,R2
执行结果为:(A)=______,CY=0,AC=______,0V=1。
【答案】74H;0
9.假定外部数据存储器2000H 单元的内容为60H, 执行下列指令后,累加器A的内容为______。
MOV DPTR,#2000H
MOV A,#OOH
MOV A,@DPTR
【答案】60H
10.系列单片机中已知(IP)=16H,则中断响应的优先级顺序(从高到低)是 。
【答案】定时器0→定时器1→外部中断0→外部中断1→串口中断
11.如果某8255芯片,PA口工作于方式1输入,PB口工作于方式0输出,则其控制字为 。
【答案】0B0H
12.8255有1个8位控制口和 个8位数据口。
【答案】3
四、简答题(本大题共4小题,每小题5分,共20分)
1.将(1101101011.101)2转换成十六进制数。
【答案】
(36B.A)16
【解析】
2.复位的作用是什么?复位后单片机中特殊寄存器的值为如何?
【答案】
复位的作用是让单片机从一个确定的初始状态开始工作,避免因上电时寄存器状态随机导致的程序运行混乱。
PC(程序计数器):0000H
SP(堆栈指针):07H
PSW(程序状态字):00H
P0~P3(I/O 口寄存器):0FFH
ACC(累加器):00H
B 寄存器:00H
DPTR(数据指针):0000H
TCON(定时器控制寄存器):00H
TMOD(定时器模式寄存器):00H
IE(中断允许寄存器):00H
IP(中断优先级寄存器):00H
【解析】见答案
3.设外部RAM(0203H)=OFFH,分析以下指令执行后(DPTR)、(30H)、(0203H)的结果。
MOV DPTR,#0203H
MOVX A,@DPTR
MOV 30H,A
MOV A,#OFH
MOVX @DPTR,A
【答案】
(DPTR)=0203H,(30H)=0FFH,(0203H)=(A)=OFH
【解析】
MOV DPTR,#0203H ;(DPTR)=0203H
MOVX A,@DPTR ;(A)=((DPTR))=0FFH
MOV 30H,A ;(30H)=(A)=OFFH
MOV A,#OFH ;(A)=0FH
MOVX @DPTR,A ;((DPTR))=(A),(0203H)=0FH
4.已知(A)=38H,(R0)=28H,(28H)=18H 执行下列程序:
ORL A,#27H
ANL A,28H
XCHD A,@RO
CPL A
SWAP A
求执行结果为(A)的值
【答案】
7EH
【解析】
ORL A,#27H
A = 38H = 0011 1000 B
27H = 0010 0111 B
0011 1000
OR 0010 0111
————————————
0011 1111 B = 3FH
同理ANL A,28H 之后(A)=18H
XCHD A,@RO之后(A) = 18H,(28H) = 18H
CPL A 执行后:(A) = 0E7H
SWAP A 执行后:(A) =7EH
五、程序填空题。按照题目要求,将正确的内容填入相应位置,使得程序完整(本题每空3分,共24分)
1.假设被乘数放在R4、R3中,乘数放在R2中,编程实现乘积放在R7、R6和R5中。
NMUL:MOV A,R2
MOV B,R3
MUL 【1】
MOV R5,A
MOV R6,B
MOV A,【2】
MOV B,R4
MUL AB
ADD A,【3】
MOV R6,A
MOV A,B
ADDC A,#OOH
MOV R7,A
RET
【答案】
【1】AB
【2】R2
【3】R6
【解析】
【1】AB ;功能是将A和B中的8位无符号数相乘,结果16位:低8位存A,高8位存B。
【2】R2 ;完成低字节乘法后,需计算高字节乘法R2×R4,因此重新将乘数R2载入A。
【3】R6 ;R4×R2的低8位(A)需要与R3×R2的高8位(R6)相加,得到总乘积的“中8位”——这是多字节乘法的关键:低字节乘法的进位需与高字节乘法的低8位合并。
2.已知单片机晶振频率为11.0592MHz,采用串口方式1,将波特率设置为4800bps,允许串口中断接收,完成串口初始化配置;编程实现:将内部RAM32H单元的内容通过串口发送出去,若接收到数据则存入内部RAM33H单元。
ORG 0000H
【1】
ORG 0023H
LJMP UART_ISR
ORG 0030H
MAIN:
【2】
MOV PCON,#00H
MOV TMOD,#20H
MOV TH1,#0FAH
MOV TL1,#0FAH
SETB TR1
SETB EA
SETB ES
MOV A,32H
【3】
SEND_WAIT:
JBC TI,SEND_OK
SJMP SEND_WAIT
SEND_OK:
【4】
UART_ISR:
PUSH ACC
PUSH PSW
JNB RI,TI_CLR
【5】
MOV 33H,A
CLR RI
TI_CLR: CLR TI
POP PSW
POP ACC
RETI
END
【答案】
【1】LJMP MAIN
【2】MOV SCON,#50H
【3】MOV SBUF,A
【4】SJMP $
【5】MOV A,SBUF
【解析】
【1】LJMP MAIN ; 跳转到主程序
【2】MOV SCON,#50H ; 串口方式1(01010000B):SM0=0,SM1=1,REN=1(允许接收)
【3】MOV SBUF,A ; 写入发送缓冲区,启动发送
【4】SJMP $ ; 发送完成,主程序原地循环
【5】MOV A,SBUF ; 读取接收缓冲区数据
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$