高分求每一行意思(单片机。是每一行的哦)谢谢~~~~

( 1)
ORG 0000H
MAIN: MOV P2,#0FEH
MOV P0,#0F9H
LCALL DELAY
MOV P2,#0FDH
MOV P0,#0A4H
LCALL DELAY
MOV P2,#0FBH
MOV P0,#0B0H
LCALL DELAY
MOV P2,#0F7H
MOV P0,#99H
LCALL DELAY
LJMP MAIN

DELAY:MOV R1,#2
D1:MOV R2,#248
DJNZ R2,$
DJNZ R1,D1
RET

END
(2)ORG 0000H
SMKEY:
MOV P1,#03H
MOV A,P1
ANL A,#03H
CJNE A,#03H,HKEY
SJMP SMKEY
HKEY:
LCALL DELAY
MOV A,P1
ANL A,#03H
MOV R0,A
CJNE A,#03H,WKEY
SJMP SMKEY
WKEY:
MOV P1,#01CH
MOV A,P1
ANL A,#01CH
ORL A,R0
LJMP JS
D3: LCALL DELAY
LJMP SMKEY

ORG 2000H
TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H
DELAY:MOV R6,#20
D1: MOV R7,#228
DJNZ R7,$
NOP
DJNZ R6,D1
RET
JS: CLR C
RR A
RR A
ANL A,#0FH
RR A
ANL A,#0FH
MOV B,A
MOV A,#04H
SUBB A,B
MOV R1,A

MOV B,R0
MOV A,#02H
SUBB A,B
MOV R0,A

MOV A,R0
MOV B,#03H
MUL AB
ADD A,R1
MOV P2,#8BH
MOV DPTR,#2000H
MOVC A,@A+DPTR
MOV P0,A
LJMP D3

END
(3)org 0000h
LJMP START
ORG 0023H
LJMP PINTS
ORG 0100H
START:
SETB EA
CLR ET1
SETB ES
ANL TMOD,#0FH
ORL TMOD,#20H
MOV TH1,#0FDH
MOV TL1,#0FDH
SETB TR1
MOV SCON,#50H
MOV PCON,#00H
SJMP $
PINTS:
MOV A,SBUF
CLR RI
CJNE A,#02H,P55
MOV R0,#0
MOV DPTR,#TAB1
AGAIN:
MOV A,R0
MOVC A,@A+DPTR
MOV SBUF,A
WAITI:
JNB TI,WAITI
CLR TI
INC R0
CJNE R0,#05H,AGAIN
SJMP QT
P55:
CJNE A,#55H,QT
MOV DPTR,#TAB2
MOV R0,#0
AGAIN2:
MOV A,R0
MOVC A,@A+DPTR
MOV SBUF,A
WAITI2:
JNB TI,WAITI2
CLR TI
INC R0
CJNE R0,#20,AGAIN2
QT:
RETI

TAB1:DB 48H,45H,4CH,4CH,4FH
TAB2:DB 'T','H','I','S',' ','I','S',' ','A',' ','W','E','L','L',' ','B','E','G','I','N'
END

ORG 0000H ;定义当前位置为 0000H
MAIN: MOV P2,#0FEH ;传送 接口2,立即数0FEH
MOV P0,#0F9H ;传送 接口0,立即数0F9H
LCALL DELAY ;长调用 DELAY
MOV P2,#0FDH ;传送 接口2,立即数0FDH
MOV P0,#0A4H ;传送 接口0,立即数0A4H
LCALL DELAY ;长调用 DELAY
MOV P2,#0FBH ;传送 接口2,立即数0FBH
MOV P0,#0B0H ;传送 接口0,立即数0B0H
LCALL DELAY ;长调用 DELAY
MOV P2,#0F7H ;传送 接口2,立即数0F7H
MOV P0,#99H ;传送 接口0,立即数99H
LCALL DELAY ;长调用 DELAY
LJMP MAIN ;长转移到 MAIN,

DELAY:MOV R1,#2 ;传送 通用寄存器1,立即数2
D1:MOV R2,#248 ;传送 通用寄存器2,立即数248
DJNZ R2,$ ;减一不为0转移 通用寄存器2,到本行
DJNZ R1,D1 ;减一不为0转移 通用寄存器1,D1
RET ;子程序返回

END ;END
(2)ORG 0000H ;(2)ORG 0000H
SMKEY: ;
MOV P1,#03H ;传送 接口1,立即数03H
MOV A,P1 ;传送 寄存器A,接口1
ANL A,#03H ;逻辑-与 寄存器A,立即数03H
CJNE A,#03H,HKEY ;比较-不等转移 寄存器A,立即数03H,
SJMP SMKEY ;短转移到 SMKEY
HKEY: ;
LCALL DELAY ;长调用 DELAY
MOV A,P1 ;传送 寄存器A,接口1
ANL A,#03H ;逻辑-与 寄存器A,立即数03H
MOV R0,A ;传送 通用寄存器0,A
CJNE A,#03H,WKEY ;比较-不等转移 寄存器A,立即数03H,
SJMP SMKEY ;短转移到 SMKEY
WKEY: ;
MOV P1,#01CH ;传送 接口1,立即数01CH
MOV A,P1 ;传送 寄存器A,接口1
ANL A,#01CH ;逻辑-与 寄存器A,立即数01CH
ORL A,R0 ;逻辑-或 寄存器A,通用寄存器0
LJMP JS ;长转移到 JS,
D3: LCALL DELAY ;长调用 DELAY,
LJMP SMKEY ;长转移到 SMKEY

ORG 2000H ;定义当前位置为 2000H
TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H ;程序空间定义数据 0C0H,0F9H,
DELAY:MOV R6,#20 ;传送 通用寄存器6,立即数20
D1: MOV R7,#228 ;传送 通用寄存器7,立即数228
DJNZ R7,$ ;减一不为0转移 通用寄存器7,到本行
NOP ;空操作
DJNZ R6,D1 ;减一不为0转移 通用寄存器6,D1
RET ;RET
JS: CLR C ;清0 进位标志/累加位
RR A ;循环右移 寄存器A
RR A ;循环右移 寄存器A
ANL A,#0FH ;逻辑-与 寄存器A,立即数0FH
RR A ;循环右移 寄存器A
ANL A,#0FH ;逻辑-与 寄存器A,立即数0FH
MOV B,A ;传送 B,寄存器A
MOV A,#04H ;传送 寄存器A,立即数04H
SUBB A,B ;带进位减法 寄存器A,B
MOV R1,A ;传送 通用寄存器1,寄存器A

MOV B,R0 ;传送 B,通用寄存器0
MOV A,#02H ;传送 寄存器A,立即数02H
SUBB A,B ;带进位减法 寄存器A,B
MOV R0,A ;传送 通用寄存器0,寄存器A

MOV A,R0 ;传送 寄存器A,通用寄存器0
MOV B,#03H ;传送 B,立即数03H
MUL AB ;两数相乘 AB
ADD A,R1 ;两数相加 寄存器A,通用寄存器1
MOV P2,#8BH ;传送 接口2,立即数8BH
MOV DPTR,#2000H ;传送 DPTR,立即数2000H
MOVC A,@A+DPTR ;程序存储器-读 寄存器A,A+DPTR指向的单元的内容
MOV P0,A ;传送 接口0,寄存器A
LJMP D3 ;长转移到 D3

END ;END
(3)org 0000h ;(3)org 0000h
LJMP START ;长转移到 START
ORG 0023H ;定义当前位置为 0023H
LJMP PINTS ;长转移到 PINTS
ORG 0100H ;定义当前位置为 0100H
START: ;
SETB EA ;位-置1 EA
CLR ET1 ;清0 ET1
SETB ES ;位-置1 ES
ANL TMOD,#0FH ;逻辑-与 TMOD,立即数0FH
ORL TMOD,#20H ;逻辑-或 TMOD,立即数20H
MOV TH1,#0FDH ;传送 TH1,立即数0FDH
MOV TL1,#0FDH ;传送 TL1,立即数0FDH
SETB TR1 ;位-置1 TR1
MOV SCON,#50H ;传送 SCON,立即数50H
MOV PCON,#00H ;传送 PCON,立即数00H
SJMP $ ;短转移到 到本行
PINTS: ;
MOV A,SBUF ;传送 寄存器A,SBUF
CLR RI ;清0 RI
CJNE A,#02H,P55 ;比较-不等转移 寄存器A,立即数02H,
MOV R0,#0 ;传送 通用寄存器0,立即数
MOV DPTR,#TAB1 ;传送 DPTR,立即数TAB1
AGAIN: ;
MOV A,R0 ;传送 寄存器A,通用寄存器0
MOVC A,@A+DPTR ;程序存储器-读 寄存器A,A+DPTR指向的单元的内容
MOV SBUF,A ;传送 SBUF,寄存器A
WAITI: ;
JNB TI,WAITI ;位为0转移到 TI,WAITI
CLR TI ;清0 TI
INC R0 ;加1 通用寄存器0
CJNE R0,#05H,AGAIN ;比较-不等转移 通用寄存器0,立即数05H,
SJMP QT ;短转移到 QT
P55: ;
CJNE A,#55H,QT ;比较-不等转移 寄存器A,立即数55H,
MOV DPTR,#TAB2 ;传送 DPTR,立即数TAB2
MOV R0,#0 ;传送 通用寄存器0,立即数
AGAIN2: ;
MOV A,R0 ;传送 寄存器A,通用寄存器0
MOVC A,@A+DPTR ;程序存储器-读 寄存器A,A+DPTR指向的单元的内容
MOV SBUF,A ;传送 SBUF,寄存器A
WAITI2: ;
JNB TI,WAITI2 ;位为0转移到 TI,WAITI2
CLR TI ;清0 TI
INC R0 ;加1 通用寄存器0
CJNE R0,#20,AGAIN2 ;比较-不等转移 通用寄存器0,立即数20,
QT: ;
RETI ;中断返回

TAB1:DB 48H,45H,4CH,4CH,4FH ;程序空间定义数据 48H,45H,
TAB2:DB 'T','H','I','S',' ','I','S',' ','A',' ','W','E','L','L',' ','B','E','G','I','N' ;程序空间定义数据 'T','H',
END ;END
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-01-04
呵呵,就算有人说出来,您能看懂吗!如果一个手脚灵活的人却需要别人一口口的喂饭吃,他能说出放的味道吗

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网