三、读程序题:(每空5分,共20分)
1、写出下列程序段执行的结果:
MOV A,#90H
MOV R0,#20H
MOV @R0,A
ANL A, #0F0H
ORL A, #70H
XRL A, @R0
(A)=________;(R0)= ;(20H)=__________;
2、 写出下列程序段执行的结果:
MOV A,#20H
MOV DPTR,#2020H
MOVX @DPTR,A
MOV A,#50H
MOVX @DPTR,A
(2020H)= ,(A)=
3、写出下列程序段执行的结果:
MOV A, #36H
MOV R2, #45H
MOV 40H, #2CH
MOV R0, #40H
ADD A, R2
ADDC A,@R0
ADDC A, 40H
A=
4、写出下列程序段执行的结果:
MOV A,#02H
MOV B,#30H
MUL AB
DIV AB
ADD A,B
A=
5、写出下列程序段执行的结果:
MOV A,#0F7H
CPL A
ANL 30H,#0FFH
ORL 30H,#79H
XRL 30H,A
(30H)=
六、根据所描述的实验现象将程序补充完整:P1口的八个灯右移循环点亮,用单次脉冲申请中断,按下脉冲源后8个灯全部闪烁8次后继续往右循环点亮。
ORG 0000H
LJMP START
_____________;设置外部中断1的入口地址
LJMP INTP
ORG 0030H
START: MOV SP,#60H
______________;设置中断总允许
SETB EX1
_______________;设置触发方式为低电平触发
MOV A,#0FEH
LOOP: MOV P1,A
LCALL DELAY
_____________;实现将8个灯右移循环点亮
LJMP LOOP
INTP: PUSH ACC
PUSH PSW
PUSH P1
CLR RS1
SETB RS0
MOV R1,#5
LOP: MOV P1,#00H
LCALL DELAY
MOV P1,#0FFH
LCALL DELAY
_________________; 控制8个灯全部闪烁8次
POP P1
POP PSW
POP ACC
RETI
DELAY: ……;延时程序省略
RET
END
六、设单片机的时钟频率为12MHz,用定时器T1定时方法,在P1.0产生频率为20KHz等宽矩形波,选择工作方式2编程实现,根据提示将程序补充完整。
程序:
ORG 0000H
LJMP START
ORG 001BH
LJMP TIME1
ORG 0100H
START: ;设置TMOD
;设置计数初值
SETB EA
SETB ET1
;启动定时器T1运行
$:SJMP $
TIME1: ;产生矩形波
RETI
END
六、以定时器1进行外部事件计数,每计数150个脉冲后,从P1.1输出高电平并保持1s,如此循环不止。设晶振频率为12MHz,试用模式2编程。根据提示将程序补充完整。
程序:
ORG 0000H
LJMP START
ORG 001BH
LJMP T1FW
ORG 0100H
START:________________________;设置TMOD
___________________;设初值,要求每计150个脉冲产生溢出
___________________;设初值,要求每计150个脉冲产生溢出
SETB EA
SETB ET1
_____________;启动定时
SJMP $
T1FW:_______________;从P1.1输出高电平;
……;省略延时程序段
RETI
END
图片上也要做 做好给500分 加油啊