ORG 00H
JMP MAIN
ORG 30H
MAIN: MOV A,#0FFH ;设置左移初值
CLR C ;C=0
MOV R2,#08H ;设置左移次数
LOOP: RLC A ;左移1位
MOV P2,A ;输出到P2
CALL DELAY ;延时
DJNZ R2,LOOP ;左移7次
MOV R2,#07H ;
LOOP1: RRC A ;右移1位
MOV P2,A ;输出到P2
CALL DELAY ;
DJNZ R2,LOOP1 ;右移7次
JMP MAIN
DELAY: MOV R3,#20 ; 延时2s
D1: MOV R4,#200 ; 这里可以改变延时时间
D2: MOV R5,#250
DJNZ R5,$
DJNZ R4,D2
DJNZ R3,D1
RET
END