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

📄 main.ls1

📁 《Proteus在MCS-51&ARM7系统中的应用百例》逆向之 Chapter 3 《Proteus在MCS-51&ARM7系统中的应用百例》MCS-51例子的C语言版本。
💻 LS1
字号:
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 18:09:37 PAGE     1


MACRO ASSEMBLER A51 V8.00d
OBJECT MODULE PLACED IN main.OBJ
ASSEMBLER INVOKED BY: D:\Program Files\Keil 8.08\C51\BIN\A51.EXE main.src PR(.\main.ls1) EP DEBUG

LOC  OBJ            LINE     SOURCE

                       1     ; .\main.SRC generated from: main.c
                       2     ; COMPILER INVOKED BY:
                       3     ;        D:\Program Files\Keil 8.08\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND SRC(.\
                             main.SRC)
                       4     
                       5     $nomod51 
                       6     
                       7     NAME    MAIN
                       8     
  0080                 9     P0      DATA    080H
  0090                10     P1      DATA    090H
  00A0                11     P2      DATA    0A0H
  00B0                12     P3      DATA    0B0H
  00B4                13     T0      BIT     0B0H.4
  00D6                14     AC      BIT     0D0H.6
  00B5                15     T1      BIT     0B0H.5
  00AF                16     EA      BIT     0A8H.7
  00A8                17     IE      DATA    0A8H
  00B7                18     RD      BIT     0B0H.7
  00AC                19     ES      BIT     0A8H.4
  00B8                20     IP      DATA    0B8H
  0098                21     RI      BIT     098H.0
  00B2                22     INT0    BIT     0B0H.2
  00D7                23     CY      BIT     0D0H.7
  0099                24     TI      BIT     098H.1
  00B3                25     INT1    BIT     0B0H.3
  00BC                26     PS      BIT     0B8H.4
  0081                27     SP      DATA    081H
  00D2                28     OV      BIT     0D0H.2
  00B6                29     WR      BIT     0B0H.6
  0099                30     SBUF    DATA    099H
  0087                31     PCON    DATA    087H
  0098                32     SCON    DATA    098H
  0089                33     TMOD    DATA    089H
  0088                34     TCON    DATA    088H
  0089                35     IE0     BIT     088H.1
  008B                36     IE1     BIT     088H.3
  00F0                37     B       DATA    0F0H
  00E0                38     ACC     DATA    0E0H
  00A9                39     ET0     BIT     0A8H.1
  00AB                40     ET1     BIT     0A8H.3
  008D                41     TF0     BIT     088H.5
  008F                42     TF1     BIT     088H.7
  009A                43     RB8     BIT     098H.2
  008C                44     TH0     DATA    08CH
  00A8                45     EX0     BIT     0A8H.0
  0088                46     IT0     BIT     088H.0
  008D                47     TH1     DATA    08DH
  009B                48     TB8     BIT     098H.3
  00AA                49     EX1     BIT     0A8H.2
  008A                50     IT1     BIT     088H.2
  00D0                51     P       BIT     0D0H.0
  009F                52     SM0     BIT     098H.7
  008A                53     TL0     DATA    08AH
  009E                54     SM1     BIT     098H.6
  008B                55     TL1     DATA    08BH
  009D                56     SM2     BIT     098H.5
  00B9                57     PT0     BIT     0B8H.1
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 18:09:37 PAGE     2

  00BB                58     PT1     BIT     0B8H.3
  00D3                59     RS0     BIT     0D0H.3
  008C                60     TR0     BIT     088H.4
  00D4                61     RS1     BIT     0D0H.4
  008E                62     TR1     BIT     088H.6
  00B8                63     PX0     BIT     0B8H.0
  00BA                64     PX1     BIT     0B8H.2
  0083                65     DPH     DATA    083H
  0082                66     DPL     DATA    082H
  009C                67     REN     BIT     098H.4
  00B0                68     RXD     BIT     0B0H.0
  00B1                69     TXD     BIT     0B0H.1
  00D5                70     F0      BIT     0D0H.5
  00D0                71     PSW     DATA    0D0H
                      72     ?PR?main?MAIN        SEGMENT CODE 
                      73     ?DT?main?MAIN        SEGMENT DATA OVERLAYABLE 
                      74             EXTRN   CODE (?C_STARTUP)
                      75             PUBLIC  array
                      76             PUBLIC  main
                      77     
----                  78             DSEG  AT  030H
0030                  79               array:   DS   7
                      80     
----                  81             RSEG  ?DT?main?MAIN
0000                  82     ?main?BYTE:
0000                  83            temp?043:   DS   1
                      84     ; #include <reg51.h>
                      85     ; typedef unsigned char BYTE;
                      86     ; 
                      87     ; BYTE data array[7] _at_ 0x30;
                      88     ; 
                      89     ; main()
                      90     
----                  91             RSEG  ?PR?main?MAIN
0000                  92     main:
                      93             USING   0
                      94                             ; SOURCE LINE # 6
                      95     ; {
                      96                             ; SOURCE LINE # 7
                      97     ;       BYTE num=0x03;
                      98                             ; SOURCE LINE # 8
                      99     ;---- Variable 'num?040' assigned to Register 'R7' ----
0000 7F03            100             MOV     R7,#03H
                     101     ;       BYTE data *point_1=0x30;
                     102                             ; SOURCE LINE # 9
                     103     ;---- Variable 'point_1?041' assigned to Register 'R6' ----
0002 7E30            104             MOV     R6,#030H
                     105     ;       BYTE data *point_2=0x34;
                     106                             ; SOURCE LINE # 10
                     107     ;---- Variable 'point_2?042' assigned to Register 'R5' ----
0004 7D34            108             MOV     R5,#034H
                     109     ;       BYTE temp;
                     110     ; 
                     111     ;       array[0]=0x68;
                     112                             ; SOURCE LINE # 13
0006 753068          113             MOV     array,#068H
                     114     ;       array[1]=0x55;
                     115                             ; SOURCE LINE # 14
0009 753155          116             MOV     array+01H,#055H
                     117     ;       array[2]=0x98;
                     118                             ; SOURCE LINE # 15
000C 753298          119             MOV     array+02H,#098H
                     120     ;       
                     121     ;       array[4]=0x55;
                     122                             ; SOURCE LINE # 17
000F 753455          123             MOV     array+04H,#055H
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 18:09:37 PAGE     3

                     124     ;       array[5]=0x23;
                     125                             ; SOURCE LINE # 18
0012 753523          126             MOV     array+05H,#023H
                     127     ;       array[6]=0x64;
                     128                             ; SOURCE LINE # 19
0015 753664          129             MOV     array+06H,#064H
                     130     ; 
                     131     ;       
                     132     ; 
                     133     ;       point_1+=num;
                     134                             ; SOURCE LINE # 23
0018 EF              135             MOV     A,R7
0019 2E              136             ADD     A,R6
001A FE              137             MOV     R6,A
                     138     ;       point_2+=num;
                     139                             ; SOURCE LINE # 24
001B EF              140             MOV     A,R7
001C 2D              141             ADD     A,R5
001D FD              142             MOV     R5,A
                     143     ;       CY=0;
                     144                             ; SOURCE LINE # 25
001E C2D7            145             CLR     CY
0020                 146     ?C0003:
                     147     ; 
                     148     ;       do
                     149     ;       {
                     150                             ; SOURCE LINE # 28
                     151     ;               point_1--;
                     152                             ; SOURCE LINE # 29
0020 1E              153             DEC     R6
                     154     ;               point_2--;
                     155                             ; SOURCE LINE # 30
0021 1D              156             DEC     R5
                     157     ; 
                     158     ;               ACC=*point_1;
                     159                             ; SOURCE LINE # 32
                     160     ;               temp=*point_2; 
                     161                             ; SOURCE LINE # 33
0022 A805            162             MOV     R0,AR5
0024 E6              163             MOV     A,@R0
0025 F500     F      164             MOV     temp?043,A
                     165     ; 
                     166     ;               #pragma asm
                     167     ;                       ADDC    A,temp?043      
0027 3500     F      168               ADDC  A,temp?043      
                     169     ;                       DA              A               
0029 D4              170               DA            A               
                     171     ;               #pragma endasm
                     172     ; 
                     173     ;               *point_1=ACC;   
                     174                             ; SOURCE LINE # 40
002A A806            175             MOV     R0,AR6
002C F6              176             MOV     @R0,A
                     177     ;       }while(--num);
                     178                             ; SOURCE LINE # 41
002D DFF1            179             DJNZ    R7,?C0003
002F                 180     ?C0004:
                     181     ;       
                     182     ;       while(1);
                     183                             ; SOURCE LINE # 43
002F 80FE            184             SJMP    ?C0004
                     185     ; END OF main
                     186     
                     187             END
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 18:09:37 PAGE     4

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


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

?C0003 . . . . . .  C ADDR   0020H   R   SEG=?PR?MAIN?MAIN
?C0004 . . . . . .  C ADDR   002FH   R   SEG=?PR?MAIN?MAIN
?C_STARTUP . . . .  C ADDR   -----       EXT
?DT?MAIN?MAIN. . .  D SEG    0001H       REL=UNIT
?MAIN?BYTE . . . .  D ADDR   0000H   R   SEG=?DT?MAIN?MAIN
?PR?MAIN?MAIN. . .  C SEG    0031H       REL=UNIT
AC . . . . . . . .  B ADDR   00D0H.6 A   
ACC. . . . . . . .  D ADDR   00E0H   A   
AR5. . . . . . . .  D ADDR   0005H   A   
AR6. . . . . . . .  D ADDR   0006H   A   
ARRAY. . . . . . .  D ADDR   0030H   A   
B. . . . . . . . .  D ADDR   00F0H   A   
CY . . . . . . . .  B ADDR   00D0H.7 A   
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   
MAIN . . . . . . .  C ADDR   0000H   R   SEG=?PR?MAIN?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   
PCON . . . . . . .  D ADDR   0087H   A   
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   
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   
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 18:09:37 PAGE     5

TCON . . . . . . .  D ADDR   0088H   A   
TEMP?043 . . . . .  D ADDR   0000H   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   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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