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

📄 main.ls1

📁 《Proteus在MCS-51&ARM7系统中的应用百例》逆向之 Chapter 8 《Proteus在MCS-51&ARM7系统中的应用百例》MCS-51例子的C语言版本。 最
💻 LS1
📖 第 1 页 / 共 2 页
字号:
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 12:48:49 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 12:48:49 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
  0095                63     SDA     BIT     090H.5
  00B8                64     PX0     BIT     0B8H.0
  00BA                65     PX1     BIT     0B8H.2
  0083                66     DPH     DATA    083H
  0082                67     DPL     DATA    082H
  0094                68     SCL     BIT     090H.4
  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?main?MAIN        SEGMENT CODE 
                      75     ?PR?IWRNBYTE?MAIN    SEGMENT CODE 
                      76     ?DT?IWRNBYTE?MAIN    SEGMENT DATA OVERLAYABLE 
                      77     ?PR?IRDNBYTE?MAIN    SEGMENT CODE 
                      78     ?DT?IRDNBYTE?MAIN    SEGMENT DATA OVERLAYABLE 
                      79     ?PR?START?MAIN       SEGMENT CODE 
                      80     ?PR?STOP?MAIN        SEGMENT CODE 
                      81     ?PR?MACK?MAIN        SEGMENT CODE 
                      82     ?PR?MNACK?MAIN       SEGMENT CODE 
                      83     ?PR?CACK?MAIN        SEGMENT CODE 
                      84     ?PR?_WRBYTE?MAIN     SEGMENT CODE 
                      85     ?PR?RDBYTE?MAIN      SEGMENT CODE 
                      86     ?DT?MAIN             SEGMENT DATA 
                      87     ?BI?MAIN             SEGMENT BIT 
                      88             EXTRN   CODE (?C_STARTUP)
                      89             PUBLIC  MTD
                      90             PUBLIC  MRD
                      91             PUBLIC  SLA
                      92             PUBLIC  ACK
                      93             PUBLIC  SUBA
                      94             PUBLIC  NUMBYTE
                      95             PUBLIC  RDBYTE
                      96             PUBLIC  _WRBYTE
                      97             PUBLIC  CACK
                      98             PUBLIC  MNACK
                      99             PUBLIC  MACK
                     100             PUBLIC  STOP
                     101             PUBLIC  START
                     102             PUBLIC  IRDNBYTE
                     103             PUBLIC  IWRNBYTE
                     104             PUBLIC  main
                     105     
----                 106             RSEG  ?DT?IRDNBYTE?MAIN
0000                 107     ?IRDNBYTE?BYTE:
0000                 108          offset?247:   DS   1
0001                 109             ORG  1
0001                 110             num?248:   DS   1
                     111     
----                 112             RSEG  ?DT?IWRNBYTE?MAIN
0000                 113     ?IWRNBYTE?BYTE:
0000                 114               i?145:   DS   1
0001                 115             ORG  1
0001                 116          offset?146:   DS   1
                     117     
----                 118             RSEG  ?DT?MAIN
0000                 119             NUMBYTE:   DS   1
0001                 120                SUBA:   DS   1
0002                 121                 SLA:   DS   1
0003                 122                 MRD:   DS   15
0012                 123                 MTD:   DS   15
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 12:48:49 PAGE     3

                     124     
----                 125             RSEG  ?BI?MAIN
0000                 126                 ACK:   DBIT   1
                     127     ; #include <reg51.h>
                     128     ; #include <intrins.h>
                     129     ; 
                     130     ; typedef unsigned char BYTE;
                     131     ; 
                     132     ; sbit SDA=P1^5;
                     133     ; sbit SCL=P1^4;
                     134     ; bit ACK;
                     135     ; BYTE SLA;
                     136     ; BYTE SUBA;
                     137     ; BYTE NUMBYTE;
                     138     ; 
                     139     ; BYTE MTD[0x0F];
                     140     ; BYTE MRD[0x0F];
                     141     ; 
                     142     ; 
                     143     ; void IWRNBYTE();
                     144     ; void IRDNBYTE();
                     145     ; void START();
                     146     ; void STOP();
                     147     ; void MACK();
                     148     ; void MNACK();
                     149     ; void CACK();
                     150     ; void WRBYTE(BYTE in);
                     151     ; BYTE RDBYTE();
                     152     ; 
                     153     ; 
                     154     ; 
                     155     ; main()
                     156     
----                 157             RSEG  ?PR?main?MAIN
0000                 158     main:
                     159             USING   0
                     160                             ; SOURCE LINE # 29
                     161     ; {
                     162                             ; SOURCE LINE # 30
                     163     ;       BYTE delay=0xF0;
                     164                             ; SOURCE LINE # 31
                     165     ;---- Variable 'delay?040' assigned to Register 'R7' ----
0000 7FF0            166             MOV     R7,#0F0H
                     167     ;       BYTE offset=0;
                     168                             ; SOURCE LINE # 32
                     169     ;---- Variable 'offset?041' assigned to Register 'R6' ----
0002 E4              170             CLR     A
0003 FE              171             MOV     R6,A
0004                 172     ?C0001:
                     173     ;       BYTE i,j,k;
                     174     ; 
                     175     ;       while(--delay);
                     176                             ; SOURCE LINE # 35
0004 DFFE            177             DJNZ    R7,?C0001
0006                 178     ?C0003:
                     179     ; 
                     180     ;       while(offset<0x10)
                     181                             ; SOURCE LINE # 37
0006 EE              182             MOV     A,R6
0007 C3              183             CLR     C
0008 9410            184             SUBB    A,#010H
000A 5008            185             JNC     ?C0004
                     186     ;       {
                     187                             ; SOURCE LINE # 38
                     188     ;               MTD[offset]=offset;     
                     189                             ; SOURCE LINE # 39
A51 MACRO ASSEMBLER  MAIN                                                                 05/22/2007 12:48:49 PAGE     4

000C 7400     F      190             MOV     A,#LOW (MTD)
000E 2E              191             ADD     A,R6
000F F8              192             MOV     R0,A
0010 A606            193             MOV     @R0,AR6
                     194     ;       }
                     195                             ; SOURCE LINE # 40
0012 80F2            196             SJMP    ?C0003
0014                 197     ?C0004:
                     198     ; 
                     199     ;       SLA=0xA0;
                     200                             ; SOURCE LINE # 42
0014 7500A0   F      201             MOV     SLA,#0A0H
                     202     ;       SUBA=0x30;
                     203                             ; SOURCE LINE # 43
0017 750030   F      204             MOV     SUBA,#030H
                     205     ;       NUMBYTE=16;
                     206                             ; SOURCE LINE # 44
001A 750010   F      207             MOV     NUMBYTE,#010H
                     208     ;       IWRNBYTE();
                     209                             ; SOURCE LINE # 45
001D 120000   F      210             LCALL   IWRNBYTE
                     211     ; 
                     212     ;       i=20;
                     213                             ; SOURCE LINE # 47
                     214     ;---- Variable 'i?042' assigned to Register 'R7' ----
0020 7F14            215             MOV     R7,#014H
0022                 216     ?C0007:
                     217     ; 
                     218     ;       do
                     219     ;       {
                     220                             ; SOURCE LINE # 50
                     221     ;               j=248;
                     222                             ; SOURCE LINE # 51
                     223     ;---- Variable 'j?043' assigned to Register 'R6' ----
0022 7EF8            224             MOV     R6,#0F8H
0024                 225     ?C0010:

⌨️ 快捷键说明

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