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

📄 fsmsmall.lst

📁 有限状态机事件分发构件
💻 LST
字号:
C51 COMPILER V7.20   FSMSMALL                                                              10/09/2007 16:59:20 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE FSMSMALL
OBJECT MODULE PLACED IN FsmSmall.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE FsmSource\FsmSmall.c BROWSE DEBUG OBJECTEXTEND CODE PRINT(.\FsmSmall.lst) O
                    -BJECT(FsmSmall.obj)

line level    source

   1          /***************************************************************************
   2          **Filename   : FsmSmall.C
   3          * Programmer : Haven
   4          **Date       : 2007.9.24
   5          **DESCRIPTION: 事件分发函数
   6          **
   7          **************************************************************************
   8          */
   9          #include "FsmSmall.h" 
  10          
  11          void QFsm_dispatch(QFsm *me) Q_REENTRANT 
  12          {
  13   1          QState  s = me->State__;
  14   1          (*s)(me);             /* process the event in the current state handler */
  15   1          if (me->Sig_ == (QSignal)0) {
  16   2             
  17   2              me->Sig_ = (QSignal)Q_EXIT_SIG;
  18   2              (*s)(me); //源状态执行退出动作/* exit the source */
  19   2      
  20   2              me->Sig_ = (QSignal)Q_ENTRY_SIG;
  21   2              (*me->State__)(me);//目标状态执行进入动作 /* enter the target */
  22   2          }
  23   1      }
C51 COMPILER V7.20   FSMSMALL                                                              10/09/2007 16:59:20 PAGE 2   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION _?QFsm_dispatch (BEGIN)
                                           ; SOURCE LINE # 11
0000 1500        E     DEC     ?C_IBP
0002 1500        E     DEC     ?C_IBP
0004 1500        E     DEC     ?C_IBP
0006 A800        E     MOV     R0,?C_IBP
0008 A603              MOV     @R0,AR3
000A 08                INC     R0
000B A602              MOV     @R0,AR2
000D 08                INC     R0
000E A601              MOV     @R0,AR1
0010 1500        E     DEC     ?C_IBP
0012 1500        E     DEC     ?C_IBP
0014 1500        E     DEC     ?C_IBP
                                           ; SOURCE LINE # 13
0016 E500        E     MOV     A,?C_IBP
0018 2403              ADD     A,#03H
001A F8                MOV     R0,A
001B 8603              MOV     AR3,@R0
001D 08                INC     R0
001E E6                MOV     A,@R0
001F FA                MOV     R2,A
0020 08                INC     R0
0021 E6                MOV     A,@R0
0022 F9                MOV     R1,A
0023 900001            MOV     DPTR,#01H
0026 120000      E     LCALL   ?C?PLDOPTR
0029 A800        E     MOV     R0,?C_IBP
002B A603              MOV     @R0,AR3
002D 08                INC     R0
002E A602              MOV     @R0,AR2
0030 08                INC     R0
0031 A601              MOV     @R0,AR1
                                           ; SOURCE LINE # 14
0033 E500        E     MOV     A,?C_IBP
0035 2403              ADD     A,#03H
0037 F8                MOV     R0,A
0038 8603              MOV     AR3,@R0
003A 08                INC     R0
003B E6                MOV     A,@R0
003C FA                MOV     R2,A
003D 08                INC     R0
003E E6                MOV     A,@R0
003F F9                MOV     R1,A
0040 C002              PUSH    AR2
0042 A800        E     MOV     R0,?C_IBP
0044 08                INC     R0
0045 E6                MOV     A,@R0
0046 FA                MOV     R2,A
0047 08                INC     R0
0048 E6                MOV     A,@R0
0049 F582              MOV     DPL,A
004B 8A83              MOV     DPH,R2
004D D002              POP     AR2
004F 120000      E     LCALL   ?C?ICALL2
                                           ; SOURCE LINE # 15
0052 E500        E     MOV     A,?C_IBP
0054 2403              ADD     A,#03H
0056 F8                MOV     R0,A
C51 COMPILER V7.20   FSMSMALL                                                              10/09/2007 16:59:20 PAGE 3   

0057 8603              MOV     AR3,@R0
0059 08                INC     R0
005A E6                MOV     A,@R0
005B FA                MOV     R2,A
005C 08                INC     R0
005D E6                MOV     A,@R0
005E F9                MOV     R1,A
005F 120000      E     LCALL   ?C?CLDPTR
0062 7069              JNZ     ?C0002
                                           ; SOURCE LINE # 17
0064 7402              MOV     A,#02H
0066 120000      E     LCALL   ?C?CSTPTR
                                           ; SOURCE LINE # 18
0069 E500        E     MOV     A,?C_IBP
006B 2403              ADD     A,#03H
006D F8                MOV     R0,A
006E 8603              MOV     AR3,@R0
0070 08                INC     R0
0071 E6                MOV     A,@R0
0072 FA                MOV     R2,A
0073 08                INC     R0
0074 E6                MOV     A,@R0
0075 F9                MOV     R1,A
0076 C002              PUSH    AR2
0078 A800        E     MOV     R0,?C_IBP
007A 08                INC     R0
007B E6                MOV     A,@R0
007C FA                MOV     R2,A
007D 08                INC     R0
007E E6                MOV     A,@R0
007F F582              MOV     DPL,A
0081 8A83              MOV     DPH,R2
0083 D002              POP     AR2
0085 120000      E     LCALL   ?C?ICALL2
                                           ; SOURCE LINE # 20
0088 E500        E     MOV     A,?C_IBP
008A 2403              ADD     A,#03H
008C F8                MOV     R0,A
008D 8603              MOV     AR3,@R0
008F 08                INC     R0
0090 E6                MOV     A,@R0
0091 FA                MOV     R2,A
0092 08                INC     R0
0093 E6                MOV     A,@R0
0094 F9                MOV     R1,A
0095 7401              MOV     A,#01H
0097 120000      E     LCALL   ?C?CSTPTR
                                           ; SOURCE LINE # 21
009A E500        E     MOV     A,?C_IBP
009C 2403              ADD     A,#03H
009E F8                MOV     R0,A
009F 8603              MOV     AR3,@R0
00A1 08                INC     R0
00A2 E6                MOV     A,@R0
00A3 FA                MOV     R2,A
00A4 08                INC     R0
00A5 E6                MOV     A,@R0
00A6 F9                MOV     R1,A
00A7 C003              PUSH    AR3
00A9 C002              PUSH    AR2
00AB C001              PUSH    AR1
00AD E500        E     MOV     A,?C_IBP
C51 COMPILER V7.20   FSMSMALL                                                              10/09/2007 16:59:20 PAGE 4   

00AF 2403              ADD     A,#03H
00B1 F8                MOV     R0,A
00B2 8603              MOV     AR3,@R0
00B4 08                INC     R0
00B5 E6                MOV     A,@R0
00B6 FA                MOV     R2,A
00B7 08                INC     R0
00B8 E6                MOV     A,@R0
00B9 F9                MOV     R1,A
00BA 900001            MOV     DPTR,#01H
00BD 120000      E     LCALL   ?C?PLDOPTR
00C0 8982              MOV     DPL,R1
00C2 8A83              MOV     DPH,R2
00C4 D001              POP     AR1
00C6 D002              POP     AR2
00C8 D003              POP     AR3
00CA 120000      E     LCALL   ?C?ICALL2
                                           ; SOURCE LINE # 22
                                           ; SOURCE LINE # 23
00CD         ?C0002:
00CD E500        E     MOV     A,?C_IBP
00CF 2406              ADD     A,#06H
00D1 F500        E     MOV     ?C_IBP,A
00D3 22                RET     
             ; FUNCTION _?QFsm_dispatch (END)



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    212    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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