无线传感器网络路由协议的调查分析
摘要
Keil C 简介
Keil Software 的 8051 开发工具提供以下程序,你可以用它们来编译你的 C 源码, 汇编你的汇编源程序,连接和重定位你的目标文件和库文件,创建 HEX 文件,调试你的目标程序。
Windows 应用程序 UVision2 是一个集成开发环境,它把项目管理,源代码编辑,程序调试等集成到一个功能强大的环境中。
C51 美国标准优化 C 交叉编译器从你的 C 源代码产生可重定位的目标文件。 A51 宏汇编器从你的 8051 汇编源代码产生可重定位的目标文件。
BL51 连接/重定位器组合你的由 C51 和 A51 产生的可重定位的目标文件, 生成绝对目标文件。
LIB51 库管理器组合你的目标文件,生成可以被连接器使用的库文件。
OH51 目标文件到 HEX 格式的转换器从绝对目标文件创建 Intel HEX 格式的文件。 RTX-51 实时操作系统简化了复杂和对时间要求敏感的软件项目。 软件开发流程
当你使用 Keil Software 工具时, 你的项目开发流程和其它软件开发项目的流程极其相似。
1. 创建一个项目,从器件库中选择目标器件,配置工具设置。 2. 用 C 语言或汇编语言创建源程序。 3. 用项目管理器实现你的应用。 4. 修改源程序中的错误。 5. 测试,连接应用。 UVision2 IDE
UVision2 集成开发环境集成了一个项目管理器,一个功能丰富、有错误提示的编辑 器,以及设置选项,生成工具,在线帮助。利用 UVision2 创建你的源代码并把它们组织到一个能确定你的目标应用的项目中去。UVision2 自动编译,汇编,连接你的嵌入式应用,并为你的开发提供一个单一的焦点。 C51 编译器和 A51 汇编器
源代码由 UVision2 IDE 创建,并被 C51 编译或 A51 汇编。编译器和汇编器从源代码生成可重定位的目标文件。Keil C51 编译器完全遵照 ANSI C 语言标准,支持 C 语言的所有标准特性。另外,直接支持 8051 结构的几个特性被添加到里面。Keil A51 宏汇编器支持 8051 及其派生系列的全部指令集。 LIB51 库管理器
LIB51 库管理器允许你从由编译器或汇编器生成的目标文件创建目标库。 库是一种被特别地组织过并在以后可以被连接重用的对象模块。 当连接器处理一个库时, 仅仅那些被使用的目标模块才被真正使用。 BL51 连接器/定位器
BL51 连接器/定位器利用从库中提取的目标模块和由编译器或汇编器生成的目标模 块创建一个绝对地址的目标模块。 一个绝对地址目标模块或文件包含不可重定位的代码和数据。所有的代码和数据被安置在固定的存储器单元中。此绝对地址目标文件可以用来:
写入 EPROM 或其它存储器件。
由 UVision2 调试器使用来模拟和调试。 由仿真器用来测试程序。 UVision2 调试器
UVision2 源代码级调试器是一个理想地快速,可靠的程序调试器。此调试器包含一 个高速模拟器,能够让你模拟整个 8051 系统,包括片上外围器件和外部硬件。当你从器件库中选择器件时,这个器件的特性将自动配置。
UVision2 调试器为你在实际目标板上测试你的程序提供了几种方法: 安装 MON51 目标监控器到你的目标系统并且通过 Monitor-51 接口下载你的程序 利用高级的 GDI(AGDI)接口,把 UVision2 调试器绑定到你的目标系统。 Monitor-51
UVision2 调试器支持用 Monitor-51 进行目标板调试。此监控程序驻留在你的目标板的存储器里,它利用串口和 UVision2 调试器进行通信。利用 Monitor-51,UVision2 调试器可以对你的目标硬件实行源代码级的调试。 RTX51 实时操作系统
RTX51 实时操作系统是一个针对 8051 系列的多任务核。RTX51 实时内核从本质上简化了对实时事件反应速度要求高的复杂应用系统的设计,编程和调试。RTX51 实时内
核是完全集成到 C51 编译器中的, 从而方便使用。 任务描述表和操作系统的连接由 BL51连接器/定位器自动控制。 C51 优化的 C 语言交叉编译器
Keil C51 交叉编译器是一个基于 ANSI C 标准的针对 8051 系列 MCU 的 C 编译器,生成的可执行代码快速、紧凑,在运行效率和速度上可以和汇编程序得到的代码相媲美。和汇编语言相比,用 C 语言这样的高级语言有很多优势,比如: 对处理器的指令集不必了解,8051 CPU 的基本结构可以了解,但不是必须的。 寄存器的分配以及各种变量和数据的寻址都由编译器完成。
程序拥有了正式的结构(由 C 语言带来的),并且能被分成多个单独的子函数。这使这 个应用系统的结构变得清晰,同时让源代码变得可重复使用。 选择特定的操作符来操作变量的能力提高了源代码的可读性。 可以运用和人的思维很接近的词汇和算法表达式。 编写程序和调试程序的时间得到很大程度的缩短。
C 运行连接库包含一些标准的子程序,如:格式化输出,数字转换,浮点运算。 由于程序的模块结构技术,使得现有的程序段可以很容易的包含到新的程序中去。 ANSI 标准的 C 语言是一种丰常方便的,获得广泛应用的,在绝大部分系统中都能够很 容易得到的语言。
因此,如果需要,现有的程序可以很快地移植到其他的处理器上,节省投资。 代码优化
C51 是一个杰出的优化编译器, 它通过很多步骤以确保产生的代码是最有效率的 (最小和/或最快)。编译器通过分析初步的代码 产生最终的最有效率的代码序列,以此来保证你的 C 语言程序占用最少空间的同时运行的快而有效。
C51 编译器提供 9 个优化级别。每个高一级的优化级别都包括比它低的所有优化级 别的优化内容。以下列出的是目前 C51 编译器提供的所有优化级别的内容: 常量折叠:在表达式及寻址过程中出现的常量被综合为一个单个的常量。 跳转优化:采用反转跳转或直接指向最终目的的跳转,从而提升了程序的效率。 哑码消除:永远不可能执行到的代码将自动从程序中剔除。
寄存器变量:只要可能,局部变量和函数参数被放在 CPU 寄存器中,不需要为这些变量再分配存储器空间。
通过寄存器传递参数:最多三个参数通过寄存器传递。
消除全局公用的子表达式: 只要可能, 程序中多次出现的相同的子表达式或地址计算表达式将只计算一次。
合并相同代码:利用跳转指令,相同的代码块被合并。
重复使用入口代码:需要多次使用的共同代码被移到子程序的前面以缩减代码长度。 公共块子程序: 需要重复使用的多条指令被提取组成子程序。 指令被重新安排以最大化一个共用子程序的长度。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库Keil C 简介外文文献原文及译文 -(2)在线全文阅读。
相关推荐: