KeilC51使用详解 (二)
3. 标准输入输出文件
putchar.cputchar.c是一个低级字符输出子程,开发人员可修改后应用到自己的硬件系统上,例如向CLD或LEN输出字符。缺省:putchar.c是向串口输出一个字符XON|XOFF是流控标志,换行符“/*n”自动转化为回车/换行“/r/n”。getkey.cgetkey函数是一个低级字符输入子程,该程序可用到自己硬件系统,如矩阵键盘输入中,缺省时通过串口输入字符。
4. 其它文件
还包括对Watch-Dog有独特功能的INIT.A51函数以及对8×C751适用的函数,可参考源代码。
第四节 段名协定与程序优化
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)。
KeilC51使用详 相关文章:
- KeilC51使用详解 (一)(11-18)
- KeilC51使用详解 (三)(11-18)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)