⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.ls1

📁 《Proteus在MCS-51&ARM7系统中的应用百例》逆向之 Chapter 7 《Proteus在MCS-51&ARM7系统中的应用百例》MCS-51例子的C语言版本。
💻 LS1
📖 第 1 页 / 共 2 页
字号:
                     246                             ; SOURCE LINE # 50
                     247     ;               BYTE num2=8;
                     248                             ; SOURCE LINE # 51
0018 750008   F      249             MOV     num2?142,#08H
                     250     ;               ACC=*p;
                     251                             ; SOURCE LINE # 52
001B A807            252             MOV     R0,AR7
001D E6              253             MOV     A,@R0
001E                 254     ?C0016:
                     255     ;               do
A51 MACRO ASSEMBLER  MAIN                                                                 05/21/2007 09:04:47 PAGE     5

                     256     ;               {
                     257                             ; SOURCE LINE # 54
                     258     ;                       #pragma asm
                     259     ;                               RLC     A                       
001E 33              260               RLC   A                       
                     261     ;                               MOV     DIN,C
001F 92B0            262               MOV   DIN,C
                     263     ;                       #pragma endasm
                     264     ; 
                     265     ;                       CLK=0;
                     266                             ; SOURCE LINE # 60
0021 C2B1            267             CLR     CLK
                     268     ;                       CLK=1;
                     269                             ; SOURCE LINE # 61
0023 D2B1            270             SETB    CLK
                     271     ;                                       
                     272     ;               }while(--num2);
                     273                             ; SOURCE LINE # 63
0025 D500F6   F      274             DJNZ    num2?142,?C0016
                     275     ;               p++;
                     276                             ; SOURCE LINE # 64
0028 0F              277             INC     R7
                     278     ;       }while(--num);
                     279                             ; SOURCE LINE # 65
0029 DDED            280             DJNZ    R5,?C0013
                     281     ; }
                     282                             ; SOURCE LINE # 66
002B 22              283             RET     
                     284     ; END OF DISP1
                     285     
                     286     ; 
                     287     ; main()
                     288     
----                 289             RSEG  ?PR?main?MAIN
0000                 290     main:
                     291             USING   0
                     292                             ; SOURCE LINE # 68
                     293     ; {                              
                     294                             ; SOURCE LINE # 69
0000                 295     ?C0018:
                     296     ;       while(1)
                     297                             ; SOURCE LINE # 70
                     298     ;       {
                     299                             ; SOURCE LINE # 71
                     300     ;               BYTE data *point=DBUF0;
                     301                             ; SOURCE LINE # 72
0000 750000   F      302             MOV     point?246,#LOW (DBUF0)
                     303     ;               BYTE xdata *x_point;
                     304     ;               BYTE temp;
                     305     ; 
                     306     ;               *point++=0x0A;
                     307                             ; SOURCE LINE # 76
0003 AF00     F      308             MOV     R7,point?246
0005 0500     F      309             INC     point?246
0007 A807            310             MOV     R0,AR7
0009 760A            311             MOV     @R0,#0AH
                     312     ;               *point++=0x0D;
                     313                             ; SOURCE LINE # 77
000B AF00     F      314             MOV     R7,point?246
000D 0500     F      315             INC     point?246
000F A807            316             MOV     R0,AR7
0011 760D            317             MOV     @R0,#0DH
                     318     ;               *point++=0x10;
                     319                             ; SOURCE LINE # 78
0013 AF00     F      320             MOV     R7,point?246
0015 0500     F      321             INC     point?246
A51 MACRO ASSEMBLER  MAIN                                                                 05/21/2007 09:04:47 PAGE     6

0017 A807            322             MOV     R0,AR7
0019 7610            323             MOV     @R0,#010H
                     324     ; 
                     325     ;               x_point=0xFEF3;
                     326                             ; SOURCE LINE # 80
001B 7500FE   F      327             MOV     x_point?247,#0FEH
001E 7500F3   F      328             MOV     x_point?247+01H,#0F3H
                     329     ;               *x_point=0;
                     330                             ; SOURCE LINE # 81
0021 850082   F      331             MOV     DPL,x_point?247+01H
0024 850083   F      332             MOV     DPH,x_point?247
0027 E4              333             CLR     A
0028 F0              334             MOVX    @DPTR,A
0029                 335     ?C0020:
                     336     ;               while(!P33);
                     337                             ; SOURCE LINE # 82
0029 30B3FD          338             JNB     P33,?C0020
002C                 339     ?C0021:
                     340     ;               temp=*x_point;
                     341                             ; SOURCE LINE # 83
002C 850082   F      342             MOV     DPL,x_point?247+01H
002F 850083   F      343             MOV     DPH,x_point?247
0032 E0              344             MOVX    A,@DPTR
0033 F500     F      345             MOV     temp?248,A
                     346     ;               P1=temp;
                     347                             ; SOURCE LINE # 84
0035 F590            348             MOV     P1,A
                     349     ; 
                     350     ;               *point=_crol_(temp,4)&0x0F;
                     351                             ; SOURCE LINE # 86
0037 AF00     F      352             MOV     R7,temp?248
0039 7804            353             MOV     R0,#04H
003B EF              354             MOV     A,R7
003C 08              355             INC     R0
003D 8001            356             SJMP    ?C0024
003F                 357     ?C0023:
003F 23              358             RL      A
0040                 359     ?C0024:
0040 D8FD            360             DJNZ    R0,?C0023
0042 540F            361             ANL     A,#0FH
0044 A800     F      362             MOV     R0,point?246
0046 F6              363             MOV     @R0,A
                     364     ;               point++;
                     365                             ; SOURCE LINE # 87
0047 0500     F      366             INC     point?246
                     367     ;               *point=temp&0x0F;
                     368                             ; SOURCE LINE # 88
0049 E500     F      369             MOV     A,temp?248
004B 540F            370             ANL     A,#0FH
004D A800     F      371             MOV     R0,point?246
004F F6              372             MOV     @R0,A
                     373     ;               DISP1();
                     374                             ; SOURCE LINE # 89
0050 120000   F      375             LCALL   DISP1
                     376     ;               DELAY();
                     377                             ; SOURCE LINE # 90
0053 120000   F      378             LCALL   DELAY
                     379     ;       }       
                     380                             ; SOURCE LINE # 91
0056 80A8            381             SJMP    ?C0018
                     382     ; END OF main
                     383     
                     384             END
A51 MACRO ASSEMBLER  MAIN                                                                 05/21/2007 09:04:47 PAGE     7

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

?C0003 . . . . . .  C ADDR   0002H   R   SEG=?PR?DELAY?MAIN
?C0006 . . . . . .  C ADDR   0005H   R   SEG=?PR?DELAY?MAIN
?C0010 . . . . . .  C ADDR   0006H   R   SEG=?PR?DISP1?MAIN
?C0013 . . . . . .  C ADDR   0018H   R   SEG=?PR?DISP1?MAIN
?C0016 . . . . . .  C ADDR   001EH   R   SEG=?PR?DISP1?MAIN
?C0018 . . . . . .  C ADDR   0000H   R   SEG=?PR?MAIN?MAIN
?C0020 . . . . . .  C ADDR   0029H   R   SEG=?PR?MAIN?MAIN
?C0021 . . . . . .  C ADDR   002CH   R   SEG=?PR?MAIN?MAIN
?C0023 . . . . . .  C ADDR   003FH   R   SEG=?PR?MAIN?MAIN
?C0024 . . . . . .  C ADDR   0040H   R   SEG=?PR?MAIN?MAIN
?CO?MAIN . . . . .  C SEG    0012H       REL=UNIT
?C_STARTUP . . . .  C ADDR   -----       EXT
?DELAY?BYTE. . . .  D ADDR   0000H   R   SEG=?DT?DELAY?MAIN
?DISP1?BYTE. . . .  D ADDR   0000H   R   SEG=?DT?DISP1?MAIN
?DT?DELAY?MAIN . .  D SEG    0001H       REL=UNIT
?DT?DISP1?MAIN . .  D SEG    0001H       REL=UNIT
?DT?MAIN . . . . .  D SEG    0008H       REL=UNIT
?DT?MAIN?MAIN. . .  D SEG    0004H       REL=UNIT
?MAIN?BYTE . . . .  D ADDR   0000H   R   SEG=?DT?MAIN?MAIN
?PR?DELAY?MAIN . .  C SEG    000EH       REL=UNIT
?PR?DISP1?MAIN . .  C SEG    002CH       REL=UNIT
?PR?MAIN?MAIN. . .  C SEG    0058H       REL=UNIT
AC . . . . . . . .  B ADDR   00D0H.6 A   
ACC. . . . . . . .  D ADDR   00E0H   A   
AR6. . . . . . . .  D ADDR   0006H   A   
AR7. . . . . . . .  D ADDR   0007H   A   
B. . . . . . . . .  D ADDR   00F0H   A   
CLK. . . . . . . .  B ADDR   00B0H.1 A   
CY . . . . . . . .  B ADDR   00D0H.7 A   
DBUF0. . . . . . .  D ADDR   0004H   R   SEG=?DT?MAIN
DELAY. . . . . . .  C ADDR   0000H   R   SEG=?PR?DELAY?MAIN
DIN. . . . . . . .  B ADDR   00B0H.0 A   
DISP1. . . . . . .  C ADDR   0000H   R   SEG=?PR?DISP1?MAIN
DPH. . . . . . . .  D ADDR   0083H   A   
DPL. . . . . . . .  D ADDR   0082H   A   
EA . . . . . . . .  B ADDR   00A8H.7 A   
ES . . . . . . . .  B ADDR   00A8H.4 A   
ET0. . . . . . . .  B ADDR   00A8H.1 A   
ET1. . . . . . . .  B ADDR   00A8H.3 A   
EX0. . . . . . . .  B ADDR   00A8H.0 A   
EX1. . . . . . . .  B ADDR   00A8H.2 A   
F0 . . . . . . . .  B ADDR   00D0H.5 A   
IE . . . . . . . .  D ADDR   00A8H   A   
IE0. . . . . . . .  B ADDR   0088H.1 A   
IE1. . . . . . . .  B ADDR   0088H.3 A   
INT0 . . . . . . .  B ADDR   00B0H.2 A   
INT1 . . . . . . .  B ADDR   00B0H.3 A   
IP . . . . . . . .  D ADDR   00B8H   A   
IT0. . . . . . . .  B ADDR   0088H.0 A   
IT1. . . . . . . .  B ADDR   0088H.2 A   
J?040. . . . . . .  D ADDR   0000H   R   SEG=?DT?DELAY?MAIN
MAIN . . . . . . .  C ADDR   0000H   R   SEG=?PR?MAIN?MAIN
NUM2?142 . . . . .  D ADDR   0000H   R   SEG=?DT?DISP1?MAIN
OV . . . . . . . .  B ADDR   00D0H.2 A   
P. . . . . . . . .  B ADDR   00D0H.0 A   
P0 . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
P33. . . . . . . .  B ADDR   00B0H.3 A   
A51 MACRO ASSEMBLER  MAIN                                                                 05/21/2007 09:04:47 PAGE     8

PCON . . . . . . .  D ADDR   0087H   A   
POINT?246. . . . .  D ADDR   0000H   R   SEG=?DT?MAIN?MAIN
PS . . . . . . . .  B ADDR   00B8H.4 A   
PSW. . . . . . . .  D ADDR   00D0H   A   
PT0. . . . . . . .  B ADDR   00B8H.1 A   
PT1. . . . . . . .  B ADDR   00B8H.3 A   
PX0. . . . . . . .  B ADDR   00B8H.0 A   
PX1. . . . . . . .  B ADDR   00B8H.2 A   
RB8. . . . . . . .  B ADDR   0098H.2 A   
RD . . . . . . . .  B ADDR   00B0H.7 A   
REN. . . . . . . .  B ADDR   0098H.4 A   
RI . . . . . . . .  B ADDR   0098H.0 A   
RS0. . . . . . . .  B ADDR   00D0H.3 A   
RS1. . . . . . . .  B ADDR   00D0H.4 A   
RXD. . . . . . . .  B ADDR   00B0H.0 A   
SBUF . . . . . . .  D ADDR   0099H   A   
SCON . . . . . . .  D ADDR   0098H   A   
SEGTAB . . . . . .  C ADDR   0000H   R   SEG=?CO?MAIN
SM0. . . . . . . .  B ADDR   0098H.7 A   
SM1. . . . . . . .  B ADDR   0098H.6 A   
SM2. . . . . . . .  B ADDR   0098H.5 A   
SP . . . . . . . .  D ADDR   0081H   A   
T0 . . . . . . . .  B ADDR   00B0H.4 A   
T1 . . . . . . . .  B ADDR   00B0H.5 A   
TB8. . . . . . . .  B ADDR   0098H.3 A   
TCON . . . . . . .  D ADDR   0088H   A   
TEMP . . . . . . .  D ADDR   0000H   R   SEG=?DT?MAIN
TEMP?248 . . . . .  D ADDR   0003H   R   SEG=?DT?MAIN?MAIN
TF0. . . . . . . .  B ADDR   0088H.5 A   
TF1. . . . . . . .  B ADDR   0088H.7 A   
TH0. . . . . . . .  D ADDR   008CH   A   
TH1. . . . . . . .  D ADDR   008DH   A   
TI . . . . . . . .  B ADDR   0098H.1 A   
TL0. . . . . . . .  D ADDR   008AH   A   
TL1. . . . . . . .  D ADDR   008BH   A   
TMOD . . . . . . .  D ADDR   0089H   A   
TR0. . . . . . . .  B ADDR   0088H.4 A   
TR1. . . . . . . .  B ADDR   0088H.6 A   
TXD. . . . . . . .  B ADDR   00B0H.1 A   
WR . . . . . . . .  B ADDR   00B0H.6 A   
X_POINT?247. . . .  D ADDR   0001H   R   SEG=?DT?MAIN?MAIN


REGISTER BANK(S) USED: 0 

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -