著名钢琴家朗朗:有谁知道这段程序的意思?最好能帮转为C语言

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 09:32:35
SDA BIT P3.5
SCL BIT P3.4
MTD EQU 70H;EEROM
WRBUF EQU 71H;
RDBUF EQU 72H;
NUMBYT EQU 73H;
MAIN:MOV R7,#2
MOV MTD,#00H
MOV WRBUF,#30H
MOV NUMBYT,#8
LOOP:ACALL WRNBYT
MOV R0,#MTD
ACALL ADD8
MOV R0,#WRBUF
ACALL ADD8
DJNZ R7,LOOP
MOV R7,#2
MOV MTD,#00H
MOV RDBUF,#50H
LOOP1:ACALL RDNBYT
MOV R0,#MTD
ACALL ADD8
MOV R0,#RDBUF
ACALL ADD8
DJNZ R7,LOOP1
SJMP $
ADD8:MOV A,@R0
ADD A,#8
MOV @R0,A
RET

WRNBYT:MOV R3,NUMBYT;
LCALL STA;
MOV A,#0A0H;
LCALL WRBYT;
LCALL CACK;
JB F0,WRNBYT;
WRDA:MOV A,MTD;发EEROM
LCALL WRBYT;
LCALL CACK;
JB F0,WRNBYT;
MOV R1,WRBUF;
WRDA1:MOV A,@R1;
LCALL WRBYT
ACALL CACK;
JB F0,WRNBYT
INC R1
DJNZ R3,WRDA1
LCALL STOP;
RET
RDNBYT:MOV R3,NUMBYT;
LCALL STA;
MOV A,#0A0H;
LCALL WRBYT
LCALL CACK;
JB F0,RDNBYT
RDNBYT1:MOV A,MTD;
LCALL WRBYT
LCALL CACK;
JB F0,RDNBYT
RDNBYT2:LCALL STA;
MOV A,#0A1H;
LCALL WRBYT
LCALL CACK;
JB F0,RDNBYT
RDN:MOV R1,RDBUF;
RDN1:LCALL RDBYT
MOV @R1,A
DJNZ R3,ACK
LCALL MNACK;
LCALL STOP;
RET
ACK:LCALL MACK
INC R1
SJMP RDN1

STA:SETB SDA;
SETB SCL
NOP
CLR SDA
NOP
NOP
CLR SCL
RET
STOP:CLR SDA;
SETB SCL
NOP
NOP
SETB SDA
NOP
NOP
CLR SDA
CLR SCL
RET
MACK:CLR SDA;
SETB SCL
NOP
NOP
CLR SCL
SETB SDA
RET

MNACK:SETB SDA;
CLR SCL
NOP
NOP
CLR SCL
CLR SDA
RET
CACK:SETB SDA;由EEROM
SETB SCL
CLR F0
MOV C,SDA
JNC CEND
SETB F0
CEND:CLR SCL
RET

WRBYT:MOV R0,#8;
WLP:RLC A
JC WR1
AJMP WR00
WLP1:DJNZ R0,WLP
RET
WR1:SETB SDA
SETB SCL
NOP
NOP
CLR SCL
CLR SDA
AJMP WLP1
WR00:CLR SDA
SETB SCL
NOP
NOP
CLR SCL
AJMP WLP1

RDBYT:MOV R0,#8;
RLP:SETB SDA
SETB SCL
MOV C,SDA
MOV A,R2
RLC A
MOV R2,A
CLR SCL
DJNZ R0,RLP
RET

END
SCL BIT P3.4
MTD EQU 70H;EEROM
WRBUF EQU 71H;
RDBUF EQU 72H;
NUMBYT EQU 73H;
MAIN:MOV R7,#2
MOV MTD,#00H
MOV WRBUF,#30H
MOV NUMBYT,#8
LOOP:ACALL WRNBYT
MOV R0,#MTD
ACALL ADD8
MOV R0,#WRBUF
ACALL ADD8
DJNZ R7,LOOP
MOV R7,#2
MOV MTD,#00H
MOV RDBUF,#50H
LOOP1:ACALL RDNBYT
MOV R0,#MTD
ACALL ADD8
MOV R0,#RDBUF
ACALL ADD8
DJNZ R7,LOOP1
SJMP $
ADD8:MOV A,@R0
ADD A,#8
MOV @R0,A
RET

你当是人是反编译器啊……