采纳答案是错误的。
不能满足题目要求。
P2.0连接的开关按下时,P1.0引脚上的蜂鸣器响。
不按下时不响。
图中的蜂鸣器,仅仅给它高电平,它并不会响
必须加上交变的脉冲信号,它才响。
下面的程序,才行:
ORG 0000H
SETB P1.0
JB P2.0, 0000H
LOOP:
CPL P1.0
DJNZ R7, $
JNB P2.0, LOOP
JMP 0000H
END
8种位移指令中只有:RCL和RCR影响CF,以RCL为例:
MOV A,01H
MOV CL,08H
RCL A,CL
则运行后CF为1.
----------------------
----------------------
继续回答:
不是"在RCL或RCR指令后,最高位放入CF";RCL是带进位左循环移位指令,RCR是带进位右循环移位指令;RCL是将某数最高位移进入CF,而CF里的内容跑到该数的最低位,形成咬尾蛇循环,移位次数为CL或CX指定的次数;而RCR相反,它是从最低位移出到CF,CF跑到最高位,形成咬尾蛇循环。这两个指令是9或17个位在参与移位操作,而其他移位指令只是8位或16位(以8086/8088指令为解释基础,不同的CPU机型移位指令的位数可能不同)
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
SETB P1.0
JB P2.0,$
CLR P1.0
JNB P2.0,$
SJMP MAIN
END
ppp:jb p2.0,ppp
lcall ppp1
clr p1.0
lcall ppp1
setb p1.0
sjmp ppp
ppp1:mov r7,#3fh
mov r6,#00h
ppp2:djnz r6,$
djnz r7,ppp2
ret