单片机期末考试试题含答案12.doc
文本预览下载声明
《单片机原理与应用》试题012
一、填空题(共20分,每题4分)
1、开启微机电源,在软件所在目录键入MD51命令,选择对应串口号,进入集成操作软件环境,如果光标不响应回车命令,按 复位键即可。
2、对源文件汇编无误后,自动生成相应的 .LST文件。
3、用GB命令来连续运行程序。
4、外部RAM与 累加器A间数据传送,使用MOVX @DPTR,A指令。
5、两寄存器交换数据,使用 命令。
二、程序分析题(共20分,每题10分)
1、(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(4BH)=20H
MOV A,@R0 ;7FH?A
MOV @R0,40,40H ;20H?4BH
MOV 40H,A ;7FH?40H
MOV R0,#35H
问执行和程序后,R0、A和4BH、40H单元内容的变化如何?
2、设(R0)=7EH,DPTR=10FEH,片内RAM 7FH和7FH两单元的内容分别是FFH和38H,请写出下列程序段的每条指令的执行结果。
INC @R0
INC R0
INC @R0
INC DPTR
INC DPTR
INC DPTR
三、编程题(共60分,每题30分)
比较存放在ONE,TWO,TRE三个单元的无符号数,并将小数存放在20H单元中。
输入程序
参考程序
MOV A,ONE
CJNE A,TWO,RR
RR: JC SS
MOV A,TWO
CJNE A,TRE,TT
TT: JC WW
SJMP UU
SS: CJNE A,TRE,VV
VV: JC WW
UU: MOV A,TRE
WW: MOV 20H,A
在ONE,TWO,和TRE三个内部RAM
单步运行,注意PC变化情况,同时检查Cy
检查20H单元的内容,检验是否为最小值
修改ONE
设在单片机内部RAM中从STR单元开始存放有一数据块,该数据块以#00H结束,试统计其中为#0FFH的单元个数并存入NUM单元。
(1)输入所编程序。
COUNT: CLR A ;清计数单元
MOV R0,#STR ;置地址指针
LOOP: CJNE #0FFH,LOOP1;数据为#0FFH则计数单元加1
INC A
LOOP1: INC R0
CJNE @R0,#000H,LOOP;数据块取完?
MOV NUM A ;存统计结果
SJMP $
(2)确定好数据块的起始地址,同时在相应的内部RAM单元建立好数据块(此数据块以#00H结束,并使其中若干个单元的内容为#0FFH),同时作好记录。
(3)单步或断点运行程序,注意循环跳出循环时刻。
(4)观察并记录PC,A和计数单元的变化情况。
(5)验证运行结果。
《单片机原理与应用》试题012答案
二、 程序分析题(共20分,每题10分)
1、(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(4BH)=20H
MOV A,@R0 ;7FH?A
MOV @R0,40,40H ;20H?4BH
MOV 40H,A ;7FH?40H
MOV R0,#35H
问执行和程序后,R0、A和4BH、40H单元内容的变化如何?
答 程序执行后(R0)=35H,(A)7FH,(4BH)=20H,(40H)=7FH.
2、设(R0)=7EH,DPTR=10FEH,片内RAM 7FH和7FH两单元的内容分别是FFH和38H,请写出下列程序段的每条指令的执行结果。
INC @R0
INC R0
INC @R0
INC DPTR
INC DPTR
INC DPTR
解 (1)(7EH)=00H
(2)R0=7FH
(3)7FH=39H
(4)DPTR=10FFH
(5)DPTR=1100H
(6)DPTR=1101H
三、编程题(共60分,每题30分)
比较存放
显示全部