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

📄 jishuan.lst

📁 单片机应用下的计算器
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.07   JISHUAN                                                               04/05/2009 16:58:31 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE JISHUAN
OBJECT MODULE PLACED IN jishuan.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE jishuan.c DEBUG OBJECTEXTEND LISTINCLUDE SYMBOLS

stmt level    source

   1                          #include <AT89X51.H> 
   1      =1  /*--------------------------------------------------------------------------
   2      =1  AT89X51.H
   3      =1  
   4      =1  Header file for the low voltage Flash Atmel AT89C51 and AT89LV51.
   5      =1  Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  #ifndef __AT89X51_H__
  10      =1  #define __AT89X51_H__
  11      =1  
  12      =1  /*------------------------------------------------
  13      =1  Byte Registers
  14      =1  ------------------------------------------------*/
  15      =1  sfr P0      = 0x80;
  16      =1  sfr SP      = 0x81;
  17      =1  sfr DPL     = 0x82;
  18      =1  sfr DPH     = 0x83;
  19      =1  sfr PCON    = 0x87;
  20      =1  sfr TCON    = 0x88;
  21      =1  sfr TMOD    = 0x89;
  22      =1  sfr TL0     = 0x8A;
  23      =1  sfr TL1     = 0x8B;
  24      =1  sfr TH0     = 0x8C;
  25      =1  sfr TH1     = 0x8D;
  26      =1  sfr P1      = 0x90;
  27      =1  sfr SCON    = 0x98;
  28      =1  sfr SBUF    = 0x99;
  29      =1  sfr P2      = 0xA0;
  30      =1  sfr IE      = 0xA8;
  31      =1  sfr P3      = 0xB0;
  32      =1  sfr IP      = 0xB8;
  33      =1  sfr PSW     = 0xD0;
  34      =1  sfr ACC     = 0xE0;
  35      =1  sfr B       = 0xF0;
  36      =1  
  37      =1  /*------------------------------------------------
  38      =1  P0 Bit Registers
  39      =1  ------------------------------------------------*/
  40      =1  sbit P0_0 = 0x80;
  41      =1  sbit P0_1 = 0x81;
  42      =1  sbit P0_2 = 0x82;
  43      =1  sbit P0_3 = 0x83;
  44      =1  sbit P0_4 = 0x84;
  45      =1  sbit P0_5 = 0x85;
  46      =1  sbit P0_6 = 0x86;
  47      =1  sbit P0_7 = 0x87;
  48      =1  
  49      =1  /*------------------------------------------------
  50      =1  PCON Bit Values
  51      =1  ------------------------------------------------*/
  52      =1  #define IDL_    0x01
  53      =1  
  54      =1  #define STOP_   0x02
C51 COMPILER V7.07   JISHUAN                                                               04/05/2009 16:58:31 PAGE 2   

  55      =1  #define PD_     0x02    /* Alternate definition */
  56      =1  
  57      =1  #define GF0_    0x04
  58      =1  #define GF1_    0x08
  59      =1  
  60      =1  #define SMOD_   0x80
  61      =1  
  62      =1  /*------------------------------------------------
  63      =1  TCON Bit Registers
  64      =1  ------------------------------------------------*/
  65      =1  sbit IT0  = 0x88;
  66      =1  sbit IE0  = 0x89;
  67      =1  sbit IT1  = 0x8A;
  68      =1  sbit IE1  = 0x8B;
  69      =1  sbit TR0  = 0x8C;
  70      =1  sbit TF0  = 0x8D;
  71      =1  sbit TR1  = 0x8E;
  72      =1  sbit TF1  = 0x8F;
  73      =1  
  74      =1  /*------------------------------------------------
  75      =1  TMOD Bit Values
  76      =1  ------------------------------------------------*/
  77      =1  #define T0_M0_   0x01
  78      =1  #define T0_M1_   0x02
  79      =1  #define T0_CT_   0x04
  80      =1  #define T0_GATE_ 0x08
  81      =1  #define T1_M0_   0x10
  82      =1  #define T1_M1_   0x20
  83      =1  #define T1_CT_   0x40
  84      =1  #define T1_GATE_ 0x80
  85      =1  
  86      =1  #define T1_MASK_ 0xF0
  87      =1  #define T0_MASK_ 0x0F
  88      =1  
  89      =1  /*------------------------------------------------
  90      =1  P1 Bit Registers
  91      =1  ------------------------------------------------*/
  92      =1  sbit P1_0 = 0x90;
  93      =1  sbit P1_1 = 0x91;
  94      =1  sbit P1_2 = 0x92;
  95      =1  sbit P1_3 = 0x93;
  96      =1  sbit P1_4 = 0x94;
  97      =1  sbit P1_5 = 0x95;
  98      =1  sbit P1_6 = 0x96;
  99      =1  sbit P1_7 = 0x97;
 100      =1  
 101      =1  /*------------------------------------------------
 102      =1  SCON Bit Registers
 103      =1  ------------------------------------------------*/
 104      =1  sbit RI   = 0x98;
 105      =1  sbit TI   = 0x99;
 106      =1  sbit RB8  = 0x9A;
 107      =1  sbit TB8  = 0x9B;
 108      =1  sbit REN  = 0x9C;
 109      =1  sbit SM2  = 0x9D;
 110      =1  sbit SM1  = 0x9E;
 111      =1  sbit SM0  = 0x9F;
 112      =1  
 113      =1  /*------------------------------------------------
 114      =1  P2 Bit Registers
 115      =1  ------------------------------------------------*/
 116      =1  sbit P2_0 = 0xA0;
C51 COMPILER V7.07   JISHUAN                                                               04/05/2009 16:58:31 PAGE 3   

 117      =1  sbit P2_1 = 0xA1;
 118      =1  sbit P2_2 = 0xA2;
 119      =1  sbit P2_3 = 0xA3;
 120      =1  sbit P2_4 = 0xA4;
 121      =1  sbit P2_5 = 0xA5;
 122      =1  sbit P2_6 = 0xA6;
 123      =1  sbit P2_7 = 0xA7;
 124      =1  
 125      =1  /*------------------------------------------------
 126      =1  IE Bit Registers
 127      =1  ------------------------------------------------*/
 128      =1  sbit EX0  = 0xA8;       /* 1=Enable External interrupt 0 */
 129      =1  sbit ET0  = 0xA9;       /* 1=Enable Timer 0 interrupt */
 130      =1  sbit EX1  = 0xAA;       /* 1=Enable External interrupt 1 */
 131      =1  sbit ET1  = 0xAB;       /* 1=Enable Timer 1 interrupt */
 132      =1  sbit ES   = 0xAC;       /* 1=Enable Serial port interrupt */
 133      =1  sbit ET2  = 0xAD;       /* 1=Enable Timer 2 interrupt */
 134      =1  
 135      =1  sbit EA   = 0xAF;       /* 0=Disable all interrupts */
 136      =1  
 137      =1  /*------------------------------------------------
 138      =1  P3 Bit Registers (Mnemonics & Ports)
 139      =1  ------------------------------------------------*/
 140      =1  sbit P3_0 = 0xB0;
 141      =1  sbit P3_1 = 0xB1;
 142      =1  sbit P3_2 = 0xB2;
 143      =1  sbit P3_3 = 0xB3;
 144      =1  sbit P3_4 = 0xB4;
 145      =1  sbit P3_5 = 0xB5;
 146      =1  sbit P3_6 = 0xB6;
 147      =1  sbit P3_7 = 0xB7;
 148      =1  
 149      =1  sbit RXD  = 0xB0;       /* Serial data input */
 150      =1  sbit TXD  = 0xB1;       /* Serial data output */
 151      =1  sbit INT0 = 0xB2;       /* External interrupt 0 */
 152      =1  sbit INT1 = 0xB3;       /* External interrupt 1 */
 153      =1  sbit T0   = 0xB4;       /* Timer 0 external input */
 154      =1  sbit T1   = 0xB5;       /* Timer 1 external input */
 155      =1  sbit WR   = 0xB6;       /* External data memory write strobe */
 156      =1  sbit RD   = 0xB7;       /* External data memory read strobe */
 157      =1  
 158      =1  /*------------------------------------------------
 159      =1  IP Bit Registers
 160      =1  ------------------------------------------------*/
 161      =1  sbit PX0  = 0xB8;
 162      =1  sbit PT0  = 0xB9;
 163      =1  sbit PX1  = 0xBA;
 164      =1  sbit PT1  = 0xBB;
 165      =1  sbit PS   = 0xBC;
 166      =1  sbit PT2  = 0xBD;
 167      =1  
 168      =1  /*------------------------------------------------
 169      =1  PSW Bit Registers
 170      =1  ------------------------------------------------*/
 171      =1  sbit P    = 0xD0;
 172      =1  sbit FL   = 0xD1;
 173      =1  sbit OV   = 0xD2;
 174      =1  sbit RS0  = 0xD3;
 175      =1  sbit RS1  = 0xD4;
 176      =1  sbit F0   = 0xD5;
 177      =1  sbit AC   = 0xD6;
 178      =1  sbit CY   = 0xD7;
C51 COMPILER V7.07   JISHUAN                                                               04/05/2009 16:58:31 PAGE 4   

 179      =1  
 180      =1  /*------------------------------------------------
 181      =1  Interrupt Vectors:
 182      =1  Interrupt Address = (Number * 8) + 3
 183      =1  ------------------------------------------------*/
 184      =1  #define IE0_VECTOR      0  /* 0x03 External Interrupt 0 */
 185      =1  #define TF0_VECTOR      1  /* 0x0B Timer 0 */
 186      =1  #define IE1_VECTOR      2  /* 0x13 External Interrupt 1 */
 187      =1  #define TF1_VECTOR      3  /* 0x1B Timer 1 */
 188      =1  #define SIO_VECTOR      4  /* 0x23 Serial port */
 189      =1  
 190      =1  #endif
 191      =1  
 192      =1  
   2          #include<stdio.h>
   1      =1  /*--------------------------------------------------------------------------
   2      =1  STDIO.H
   3      =1  
   4      =1  Prototypes for standard I/O functions.
   5      =1  Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  #ifndef __STDIO_H__
  10      =1  #define __STDIO_H__
  11      =1  
  12      =1  #ifndef EOF
  13      =1   #define EOF -1
  14      =1  #endif
  15      =1  
  16      =1  #ifndef NULL
  17      =1   #define NULL ((void *) 0)
  18      =1  #endif
  19      =1  
  20      =1  #ifndef _SIZE_T
  21      =1   #define _SIZE_T
  22      =1   typedef unsigned int size_t;
  23      =1  #endif
  24      =1  
  25      =1  #pragma SAVE
  26      =1  #pragma REGPARMS
  27      =1  extern char _getkey (void);
  28      =1  extern char getchar (void);
  29      =1  extern char ungetchar (char);
  30      =1  extern char putchar (char);
  31      =1  extern int printf   (const char *, ...);
  32      =1  extern int sprintf  (char *, const char *, ...);
  33      =1  extern int vprintf  (const char *, char *);
  34      =1  extern int vsprintf (char *, const char *, char *);
  35      =1  extern char *gets (char *, int n);
  36      =1  extern int scanf (const char *, ...);
  37      =1  extern int sscanf (char *, const char *, ...);
  38      =1  extern int puts (const char *);
  39      =1  
  40      =1  #pragma RESTORE
  41      =1  
  42      =1  #endif
  43      =1  
   3          #include<math.h>
   1      =1  /*--------------------------------------------------------------------------
   2      =1  MATH.H
   3      =1  
C51 COMPILER V7.07   JISHUAN                                                               04/05/2009 16:58:31 PAGE 5   

   4      =1  Prototypes for mathematic functions.
   5      =1  Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  #ifndef __MATH_H__
  10      =1  #define __MATH_H__
  11      =1  
  12      =1  #pragma SAVE
  13      =1  #pragma REGPARMS
  14      =1  extern char  cabs  (char  val);
  15      =1  extern int    abs  (int   val);
  16      =1  extern long  labs  (long  val);
  17      =1  extern float fabs  (float val);
  18      =1  extern float sqrt  (float val);
  19      =1  extern float exp   (float val);
  20      =1  extern float log   (float val);
  21      =1  extern float log10 (float val);
  22      =1  extern float sin   (float val);
  23      =1  extern float cos   (float val);
  24      =1  extern float tan   (float val);
  25      =1  extern float asin  (float val);
  26      =1  extern float acos  (float val);
  27      =1  extern float atan  (float val);
  28      =1  extern float sinh  (float val);
  29      =1  extern float cosh  (float val);
  30      =1  extern float tanh  (float val);
  31      =1  extern float atan2 (float y, float x);
  32      =1  
  33      =1  extern float ceil  (float val);
  34      =1  extern float floor (float val);
  35      =1  extern float modf  (float val, float *n);
  36      =1  extern float fmod  (float x, float y);
  37      =1  extern float pow   (float x, float y);
  38      =1  
  39      =1  #pragma RESTORE
  40      =1  
  41      =1  #endif
   4          #include<absacc.h>
   1      =1  /*--------------------------------------------------------------------------
   2      =1  ABSACC.H
   3      =1  
   4      =1  Direct access to 8051, extended 8051 and Philips 80C51MX memory areas.
   5      =1  Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  #ifndef __ABSACC_H__
  10      =1  #define __ABSACC_H__
  11      =1  
  12      =1  #define CBYTE ((unsigned char volatile code  *) 0)
  13      =1  #define DBYTE ((unsigned char volatile data  *) 0)
  14      =1  #define PBYTE ((unsigned char volatile pdata *) 0)
  15      =1  #define XBYTE ((unsigned char volatile xdata *) 0)
  16      =1  
  17      =1  #define CWORD ((unsigned int volatile code  *) 0)
  18      =1  #define DWORD ((unsigned int volatile data  *) 0)
  19      =1  #define PWORD ((unsigned int volatile pdata *) 0)
  20      =1  #define XWORD ((unsigned int volatile xdata *) 0)
  21      =1  
  22      =1  
  23      =1  #ifdef __CX51__
C51 COMPILER V7.07   JISHUAN                                                               04/05/2009 16:58:31 PAGE 6   

           =1 #define FVAR(object, addr)   (*((object volatile far *) (addr)))
           =1 #define FARRAY(object, base) ((object volatile far *) (base))
           =1 #define FCVAR(object, addr)   (*((object const far *) (addr)))
           =1 #define FCARRAY(object, base) ((object const far *) (base))
           =1 #else
  29      =1  #define FVAR(object, addr)    (*((object volatile far *) ((addr)+0x10000L)))
  30      =1  #define FCVAR(object, addr)   (*((object const far *) ((addr)+0x810000L)))
  31      =1  #define FARRAY(object, base)  ((object volatile far *) ((base)+0x10000L))
  32      =1  #define FCARRAY(object, base) ((object const far *) ((base)+0x810000L))
  33      =1  #endif
  34      =1  
  35      =1  #endif
   5          
   6            
   7          
   8          unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 
   9          
  10          0x7f,0x6f,0x00}; 

⌨️ 快捷键说明

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