电路驿站 EDAdesign.com.cn 网站创建日期:2004年10月1日

 
首页
| 设计与应用
| 驿站大卖场
| 驿站课堂
| 代客设计
| 服务与支持
| 留言本
单片机C51基础教程

>首页驿站课堂C51基础教程第四章 Keil C51高级编程

∷ 51教程导航
·
Keil C51开发系统基本知识
·
Keil C51软件使用详解
·
Keil C51 vs 标准C
·
Keil C51高级编程
·
Keil C51库函数参考
·
Keil C51例子:Hello.c
·
Keil C51的代码效率
·
Keil C51 软件使用方法
 
 
 
C51基础教程
来源:http://www.51c51.net 作者: 资料整理:电子虫虫
·
第四章 Keil C51高级编程
 
第一节
绝对地址访问
第二节
Keil C51与汇编的接口
第三节
C51软件包中的通用文件
第四节
段名转换与程序优化
   
 
1 2 3 4

  第四节 段名转换与程序优化
 

1. 段名协定(Segment Naming Conventions)
C51编译器生成的目标文件存放于许多段中,这些段是代码空间或数据空间的一些单元,一个段可以是可重定位的,也可以是绝对段,每一个可重定位的段都有一个类型和名字,C51段名有以下规定:

每个段名包括前缀与模块名两部分,前缀表示存储类型,模块名则是被编译的模块的名字,例如:

?CO?main1 :表示main1模块中的代码段中的常数部分

?PR?function1?module 表module模块中函数function1的可执行段,具体规定参阅手册。

2. 程序优化
C51编译器是一个具有优化功能的编译器,它共提供六级优化功能。确保生成目标代码的最高效率(代码最少,运行速度最快)。具体六级优化的内容可参考帮助。

在C51中提供以下编译控制指令控制代码优化:

OPTIMIZE(SJXE):尽量采用子程序,使程序代码减少。

NOAREGS:不使用绝对寄存器访问,程序代码与寄存器段独立。

NOREGPARMS:参数传递总是在局部数据段实现,程序代码与低版本C51兼容。

OPTIMIZE(SIZE)AK OPTIMIZE(speed)提供6级优化功能,缺省为: OPTIMIZE(6,SPEED)。

   
 

关于驿站 | 驿站声明 | 网站介绍 | 网站推广 | 联系我们 | 友情链接
Copyright@2004-2008 EDAdesign.com.cn 版权所有 不得转载 沪ICP备05000346号
版主:威特 E-Mail:edadesign@tom.com 联系站长! QQ:306963535 QQ群:10116628