C语言在嵌入式系统中的应用

需积分: 10 1 下载量 44 浏览量 更新于2024-07-22 收藏 3.29MB PDF 举报
嵌入式系统的C语言 本文主要讲述了嵌入式系统中的C语言应用,涵盖了C语言的基础知识、优缺点、应用场景及注意事项。 一、C语言基础 C语言是一种中级计算机语言,由Dennis Ritchie在1971年为UNIX系统开发并实现的。C语言的最大优点是与任何特定的硬件或系统无关,使得用户写的程序可以在几乎所有的机器上运行。C语言将高级语言的要素与汇编语言的功能结合在一起,因此被称为中级计算机语言。 二、为什么用C? C语言非常灵活且可随心所欲,具有强大的功能。C语言是一个相对小的语言,但却经久耐用。C语言允许用户创建脑海中已有的任何任务,并保留了程序员知道正在做的事情的基本体系。C语言只需要程序员明白地表达其意图。 三、为什么不用C? 然而,在考虑转到C语言时,我们会遇到一些共同的问题,如产生大而低效的代码、标准IO程序的雍余代码、存贮器定位的使用、堆栈的使用等。这些问题可能会影响C语言的应用。 四、8位微控制器的ANSIC 对于嵌入式系统,纯粹的ANSIC并不方便,因为嵌入式系统与硬件打交道。ANSIC提供的在固定存贮空间用寄存器寻址的工具非常拙劣。几乎所有的嵌入式系统使用中断,而ANSIC有各种类型的促进规则,对8位机来说绝对是性能杀手。 五、打破一些C范例 当在低端的8位微控制器上用C语言,应想法使代码变小。这意味着打破一些编程规则,如开/关全局中断、使用GOTO语句、全局标号、全局寄存器段、指针支持。 六、嵌入式与桌面编程 嵌入式编程环境的主要特点包括有限的RAM、有限的ROM、有限的栈空间、面向硬件编程、严格的定时等。这些特点对C语言的应用产生了很大的影响。 七、汇编与C 编译器只是一个能干的优秀汇编程序员。写能够转换为高效率汇编代码的好的C代码,比手工写高效率的汇编代码容易得多。C语言是终极解决办法,但其本身也需要注意一些问题。 C语言在嵌入式系统中的应用非常广泛,但需要注意一些问题和限制。只有通过正确地使用C语言,才能发挥出其强大的功能。