tfree.lst
来自「单片及c语言轻松入门的随书光盘」· LST 代码 · 共 55 行
LST
55 行
C51 COMPILER V7.06 TFREE 06/20/2006 09:07:39 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE TFREE
OBJECT MODULE PLACED IN tfree.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE tfree.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg52.h>
2 #include <stdlib.h>
3 #include <absacc.h>//为使用init_mempool函数中的XBYTE定义而加入该头文件
4 #include <stdio.h> /*为使用printf函数而加入*/
5 void tst_free (void) {
6 1 void xdata *mbuf;
7 1 init_mempool (&XBYTE [0x2000], 0x1000); //初始化存储器,指定开始地址及大小
8 1 //去掉该行程序会有连接警告
9 1 //当前执行结果是"Memory free"
10 1 //如果将参数0x1000改为0x100后再编译、调试可以观察到"Unable to allocate memory"
11 1 printf ("Allocating memory\n");
12 1 mbuf = malloc (1000);
13 1 if (mbuf == NULL)
14 1 {
15 2 printf ("Unable to allocate memory\n");
16 2 }
17 1 else
18 1 {
19 2 free (mbuf);
20 2 printf ("Memory free\n");
21 2 }
22 1 }
23 void main()
24 { SCON = 0x50; /*SCON:工作模式1,8-bit UART,允许接收*/
25 1 TMOD |= 0x20; /*TMOD:定时器T1,工作模式2, 8位自动重载方式*/
26 1 TH1 = 0xf3; /*当波特率为2400时,定时器初值*/
27 1 TR1 = 1; /*定时器T1开始运行*/
28 1 TI = 1; /*允许发送数据*/
29 1 for(;;)
30 1 tst_free();
31 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 80 ----
CONSTANT SIZE = 59 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 2
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?