📄 text1.lst
字号:
C51 COMPILER V8.02 TEXT1 11/11/2008 21:20:09 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*------------------------------------------------------------------------------
2 本程序用来对一个数组求1次拟和系数
3 ------------------------------------------------------------------------------*/
4
5 #include <REG52.H> /* special function register declarations */
6 /* for the intended 8051 derivative */
7
8 #include <stdio.h> /* prototype declarations for I/O functions */
9 #include <stdlib.h>
10
11
12 #ifdef MONITOR51 /* Debugging with Monitor-51 needs */
char code reserve [3] _at_ 0x23; /* space for serial interrupt if */
#endif /* Stop Exection with Serial Intr. */
15 /* is enabled */
16
17 // xdata float XBuffer[40];
18 // xdata float YBuffer[40];
19 xdata float Y[40]={
20 53.1,55.1,57.0,58.9,60.3,
21 62.5,64.1,65.8,67.6,69.2,
22 70.5,72.1,73.5,74.7,75.7,
23 76.4,76.7,76.7,76.8,77.0,
24 77.5,78.0,78.5,78.9,79.2,
25 79.4,79.4,79.4,79.3,79.4,
26 79.5,79.7,79.9,80.0,80.0,
27 80.0
28 };
29 // xdata float X[20];
30 xdata float XSquareSum=0,XSumSquare=0,XSum=0,YSum=0,XYSum=0,Delta=0;
31 float a1,a0;
32 float f1;
33
34
35 /*------------------------------------------------
36 The main C function. Program execution starts
37 here after stack initialization.
38 ------------------------------------------------*/
39 void main (void) {
40 1
41 1 int n,i;
42 1
43 1 /*------------------------------------------------
44 1 Setup the serial port for 1200 baud at 16MHz.
45 1 ------------------------------------------------*/
46 1 #ifndef MONITOR51
47 1 SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */
48 1 TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */
49 1 TH1 = 221; /* TH1: reload value for 1200 baud @ 16MHz */
50 1 TR1 = 1; /* TR1: timer 1 run */
51 1 TI = 1; /* TI: set TI to send first char of UART */
52 1 #endif
53 1
54 1 n=40;
55 1 for(i=0;i<40;i++)
C51 COMPILER V8.02 TEXT1 11/11/2008 21:20:09 PAGE 2
56 1 {
57 2 XSum += i;
58 2 YSum += Y[i];
59 2 XSquareSum += i*i;
60 2 XYSum += i*Y[i];
61 2 }
62 1 Delta = n*XSquareSum - XSum * XSum;
63 1 a1 = ( n* XYSum - XSum* YSum)/Delta;
64 1 a0 = ( XSquareSum*YSum-XSum*XYSum)/ Delta;
65 1
66 1 printf("a0= %f , a1= %f \n",a0,a1);
67 1
68 1 for(i=0;i<n;i++)
69 1 {
70 2 f1 = Y[i]-(a0+a1*i);
71 2 printf("i= %d ,difference=%f\n",i,f1);
72 2 }
73 1
74 1 while(1);
75 1 }
76
77
78
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 790 ----
CONSTANT SIZE = 40 ----
XDATA SIZE = 184 ----
PDATA SIZE = ---- ----
DATA SIZE = 12 4
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 + -