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

📄 main.ls1

📁 《Proteus在MCS-51&ARM7系统中的应用百例》逆向之 Chapter 4 《Proteus在MCS-51&ARM7系统中的应用百例》MCS-51例子的C语言版本。
💻 LS1
📖 第 1 页 / 共 2 页
字号:
A51 MACRO ASSEMBLER  MAIN                                                                 05/18/2007 11:58:16 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/18/2007 11:58:16 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
  00B1                65     CLK     BIT     0B0H.1
  00B0                66     DIN     BIT     0B0H.0
  0083                67     DPH     DATA    083H
  0082                68     DPL     DATA    082H
  009C                69     REN     BIT     098H.4
  00B0                70     RXD     BIT     0B0H.0
  00B1                71     TXD     BIT     0B0H.1
  00D5                72     F0      BIT     0D0H.5
  00D0                73     PSW     DATA    0D0H
                      74     ?PR?DELAY?MAIN       SEGMENT CODE 
                      75     ?DT?DELAY?MAIN       SEGMENT DATA OVERLAYABLE 
                      76     ?PR?_DISP?MAIN       SEGMENT CODE 
                      77     ?PR?KEY?MAIN         SEGMENT CODE 
                      78     ?PR?main?MAIN        SEGMENT CODE 
                      79     ?CO?MAIN             SEGMENT CODE 
                      80     ?DT?MAIN             SEGMENT DATA 
                      81             EXTRN   CODE (?C_STARTUP)
                      82             PUBLIC  TEMP
                      83             PUBLIC  DBUF
                      84             PUBLIC  SEGTAB
                      85             PUBLIC  K0TAB
                      86             PUBLIC  main
                      87             PUBLIC  KEY
                      88             PUBLIC  _DISP
                      89             PUBLIC  DELAY
                      90     
----                  91             RSEG  ?DT?DELAY?MAIN
0000                  92     ?DELAY?BYTE:
0000                  93               j?040:   DS   1
                      94     
----                  95             RSEG  ?DT?MAIN
0000                  96                DBUF:   DS   1
0001                  97                TEMP:   DS   1
                      98     
----                  99             RSEG  ?CO?MAIN
0000                 100     K0TAB:
0000 FE              101             DB      0FEH
0001 FD              102             DB      0FDH
0002 FB              103             DB      0FBH
0003 F7              104             DB      0F7H
0004 EF              105             DB      0EFH
0005 DF              106             DB      0DFH
0006 BF              107             DB      0BFH
0007 7F              108             DB      07FH
                     109     
0008                 110     SEGTAB:
0008 3F              111             DB      03FH
0009 06              112             DB      006H
000A 5B              113             DB      05BH
000B 4F              114             DB      04FH
000C 66              115             DB      066H
000D 6D              116             DB      06DH
000E 7D              117             DB      07DH
000F 07              118             DB      007H
0010 7F              119             DB      07FH
0011 6F              120             DB      06FH
                     121     
                     122     ; #include <reg51.h>
                     123     ; typedef unsigned char BYTE;
A51 MACRO ASSEMBLER  MAIN                                                                 05/18/2007 11:58:16 PAGE     3

                     124     ; 
                     125     ; sbit DIN=P3^0;
                     126     ; sbit CLK=P3^1;
                     127     ; 
                     128     ; BYTE DBUF;
                     129     ; BYTE TEMP;
                     130     ; 
                     131     ; BYTE code K0TAB[]={ 0xFE,0xFD,0xFB,0xF7,       
                     132     ;                                       0xEF,0xDF,0xBF,0x7F};
                     133     ; 
                     134     ; BYTE code SEGTAB[]={0x3F,0x06,0x5B,0x4F,0x66,         
                     135     ;                                       0x6D,0x7D,0x07,0x7F,0x6F};
                     136     ; 
                     137     ; 
                     138     ; void DELAY()
                     139     
----                 140             RSEG  ?PR?DELAY?MAIN
0000                 141     DELAY:
                     142             USING   0
                     143                             ; SOURCE LINE # 17
                     144     ; {
                     145                             ; SOURCE LINE # 18
                     146     ;       BYTE i=0x02;
                     147                             ; SOURCE LINE # 19
                     148     ;---- Variable 'i?041' assigned to Register 'R7' ----
0000 7F02            149             MOV     R7,#02H
0002                 150     ?C0003:
                     151     ;        
                     152     ;       do
                     153     ;       {
                     154                             ; SOURCE LINE # 22
                     155     ;               BYTE j=0xF8;
                     156                             ; SOURCE LINE # 23
0002 7500F8   F      157             MOV     j?040,#0F8H
                     158     ;               do
                     159     ;               {}while(--j);
                     160                             ; SOURCE LINE # 25
0005                 161     ?C0004:
0005 D500FD   F      162             DJNZ    j?040,?C0004
                     163     ;       }while(--i);
                     164                             ; SOURCE LINE # 26
0008 DFF8            165             DJNZ    R7,?C0003
                     166     ; }
                     167                             ; SOURCE LINE # 27
000A 22              168             RET     
                     169     ; END OF DELAY
                     170     
                     171     ; 
                     172     ; 
                     173     ; void DISP(BYTE in)
                     174     
----                 175             RSEG  ?PR?_DISP?MAIN
0000                 176     _DISP:
                     177             USING   0
                     178                             ; SOURCE LINE # 30
                     179     ;---- Variable 'in?142' assigned to Register 'R7' ----
                     180     ; {
                     181                             ; SOURCE LINE # 31
                     182     ;       BYTE num=8;
                     183                             ; SOURCE LINE # 32
                     184     ;---- Variable 'num?143' assigned to Register 'R6' ----
0000 7E08            185             MOV     R6,#08H
                     186     ; 
                     187     ;       DBUF=in;
                     188                             ; SOURCE LINE # 34
0002 8F00     F      189             MOV     DBUF,R7
A51 MACRO ASSEMBLER  MAIN                                                                 05/18/2007 11:58:16 PAGE     4

                     190     ; 
                     191     ;       TEMP=SEGTAB[DBUF];
                     192                             ; SOURCE LINE # 36
0004 EF              193             MOV     A,R7
0005 900000   F      194             MOV     DPTR,#SEGTAB
0008 93              195             MOVC    A,@A+DPTR
0009 F500     F      196             MOV     TEMP,A
                     197     ;       ACC=TEMP;
                     198                             ; SOURCE LINE # 37
000B                 199     ?C0010:
                     200     ; 
                     201     ;       do
                     202     ;       {
                     203                             ; SOURCE LINE # 40
                     204     ;               #pragma asm
                     205     ;                       RLC A
000B 33              206               RLC A
                     207     ;               #pragma endasm
                     208     ; 
                     209     ;               DIN=CY;
                     210                             ; SOURCE LINE # 45
000C 92B0            211             MOV     DIN,C
                     212     ;               CLK=0;
                     213                             ; SOURCE LINE # 46
000E C2B1            214             CLR     CLK
                     215     ;               CLK=1;
                     216                             ; SOURCE LINE # 47
0010 D2B1            217             SETB    CLK
                     218     ;       }while(--num);  
                     219                             ; SOURCE LINE # 48
0012 DEF7            220             DJNZ    R6,?C0010
                     221     ; }
                     222                             ; SOURCE LINE # 49
0014 22              223             RET     
                     224     ; END OF _DISP
                     225     

⌨️ 快捷键说明

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