嵌入式底层开发为什么选择C语言
嵌入式系统的编写语言主要是C语言,部分底层代码会用到汇编语言。
嵌入式(C/C++):在软件(嵌入式应用开发)和硬件(嵌入式硬件开发)中嵌入操作系统(嵌入式底层开发)。
而 操作系统(包括内核、驱动等)是使用C语言和汇编编写的,Windows,UNIX,Linux都是这样的。绝大部分是C语言,极少情况使用汇编写的。
C语言相对于其他语言有哪些特点:
1、有出色的可移植性
2、能够访问硬件
3、运行效率高
良好的移植性:C语言在不同的软件平台,拥有相同的语法。在不同的硬件平台下同样适用。所以C语言可以在不同的软硬平台,进行很好地移植。
直接访问硬件: C语言中,我们可以通过指针控制内存以及寄存器。
嵌入式软件一般需着重考虑三个方面:性能、安全性和开发效率(包括代码可移植性等)。
运行效率高:性能(运行效率)方面,汇编明显是最高的。但汇编在安全性和开发效率方面明显是最低的。所以除非是要求极端高性能的嵌入式平台(或者是系统实在是太简单而没办法支持高级语言),使用汇编语言的不多。我们一般进行初始化时会使用汇编语言。而其它高级语言的运行效率一般比较低(C程序运行效率可达汇编的80%,而其它程序可能只有C程序的80%),源代码和目标代码也可能会比较长。这样占用的内存也会比较大。嵌入式开发的编程是要在开发板上跑的,占用内存的增多必然会影响性能。这样一来,C语言的优势就会凸现出来啦。