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

📄 c3.lst

📁 C language sample code for example function point how to use in fast mode
💻 LST
字号:
C51 COMPILER V7.10   C3                                                                    10/03/2007 11:01:30 PAGE 1   


C51 COMPILER V7.10, COMPILATION OF MODULE C3
OBJECT MODULE PLACED IN C3.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE C3.c OBJECTADVANCED OPTIMIZE(SIZE) BROWSE NOINTVECTOR DEBUG

line level    source

   1          #include <stdio.h>
   2          #include <absacc.h>
   3          
   4          //代刚ノ fnct
   5          void fnct0(void)
   6          {
   7   1              volatile char i;
   8   1              i=0;
   9   1      }
  10          void fnct1(void)
  11          {
  12   1              volatile char i;
  13   1              i=1;
  14   1      }
  15          void fnct2(void)
  16          {
  17   1              volatile char i;
  18   1              i=2;
  19   1      }
  20          /*
  21          void JmpTable(void)
  22          {
  23                  fnct0();
  24                  fnct1();
  25                  fnct2();
  26          }
  27          //ljmp instruction
  28          
  29          */
  30          typedef struct {
  31                          unsigned char OpCode;
  32                          unsigned int  Addr;
  33                          }LJMP_INST;
  34          //                                                                                 
  35          // von Neumann memory
  36          // X: 0xE000~0xFFFF
  37          //
  38          // or  xdata LJMP_INST LjmpTable _at_ JmpTable;
  39          //              
  40          //
  41          xdata LJMP_INST LjmpTable _at_ 0xE000;
  42          
  43          #define XXXFnct ((void (code *) (void)) 0xE000)
  44          LJMP_INST i;
  45          //
  46          // main()
  47          //
  48          void main(void)
  49          {
  50   1      
  51   1              // init
  52   1      
  53   1              LjmpTable.OpCode = 0x2;                 //ljmp-opcode
  54   1      
  55   1              LjmpTable.Addr   = (int)fnct2;  //switch2 fnct2
C51 COMPILER V7.10   C3                                                                    10/03/2007 11:01:30 PAGE 2   

  56   1              XXXFnct();
  57   1      
  58   1              LjmpTable.Addr   = (int)fnct1;  //switch2 fnct1
  59   1              XXXFnct();
  60   1      
  61   1              LjmpTable.Addr   = (int)fnct0;  //switch2 fnct0
  62   1              XXXFnct();
  63   1      
  64   1              
  65   1              while(1);
  66   1      
  67   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     58    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3       3
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
   EDATA SIZE       =   ----    ----
   HDATA SIZE       =   ----    ----
   XDATA CONST SIZE =   ----    ----
   FAR CONST SIZE   =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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