📄 caidengchengxu.asm
字号:
org 00h
ljmp main
org 0030h
main: mov p1,#00h
mov p2,#00h
mov p0,#00h
mov 20h,#20h
mov 40h,#11h
mov 41h,#77h
mov 42h,#0ffh
mov 43h,#055h
mov sp,#70h
start: jnb p3.4,start
lcall int1
mov a,r4
rl a
mov dptr,#table
jmp @a+dptr
table: ajmp mod1
ajmp mod2
ajmp mod3
ajmp mod4
mod1: lcall hy1
ajmp start
mod2: lcall hy2
ajmp start
mod3: lcall hy3
ajmp start
mod4: lcall hy4
ajmp start
hy1: mov a,40h
mov 44h,#06h
lcall public
rl a
mov 40h,a
ret
hy2: mov a,41h
mov 44h,#5bh
lcall public
rr a
mov 41h,a
ret
hy3: mov a,42h
mov 44h,#4fh
lcall public
jnb acc.0,reset1
clr c
rrc a
mov 42h,a
ajmp end3
reset1:setb c
rrc a
mov 42h,a
jnb acc.0,end3
mov 42h,#0ffh
mov a,#0ffh
lcall public
mov a,#00h
lcall public
end3:ret
hy4: mov a,43h
mov 44h,#66h
lcall public
rl a
mov 43h,a
ret
public: lcall disp
mov p1,a
mov p2,a
mov r2,20h
lcall delay
ret
int1: mov p3,#0ffh
mov a,p3
mov r4,a
anl a,#03h
xch a,r4
jb acc.3,end1
dec 20h
mov r6,20h
cjne r6,#00h,end1
mov 20h,#01h
end1: jb acc.2,end2
inc 20h
end2: ret
delay:
loop3:mov r7,#100
loop1:mov r5,#50
loop2:djnz r5,loop2
djnz r7,loop1
djnz r2,loop3
ret
disp: push acc
mov a,44h
mov p0,a
pop acc
ret
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -