您的位置:

嵌入式与c语言的区别,c和嵌入式的区别

本文目录一览:

单片机,C语言,嵌入式技术有什么关系

为了让你更容易理解,我就讲得直白一些了。

单片机,就是一个可编程的控制芯片,内部集合了很多数字门电路,可以通过编程,对外部输出信号,实现控制外部电路的目的;

C语言,就是一门早前的高级编程语言,可以用来编写电脑软件,也可以用来编写单片机控制程序,还可以用来编写嵌入式的程序。

嵌入式,这个不好解释,比如现在的智能手机,就是一个嵌入式设备。嵌入式,在软件上主要指可以运行于单片机或ARM等更高级芯片的系统,在硬件上主要指包含了单片机或ARM等高级控制芯片的设备。主要应用领域,包括可以用来做智能手机,做家居智能控制,做工业自动化控制等。

-完-

嵌入式c语言和c语言的异同

嵌入式编程用的最多的也是C语言,和普通的windows下的C编程不同的就是,比如应用层开发,嵌入式开发出来的应用程序最终不是要运行在PC上

的,而是目标板。所以嵌入式开发就一定会有交叉编译这个环节(简单一点理解就是,在PC下编程,然后交叉编译一下,让程序能运行在PC外的其他平台上,比

如ARM开发板什么的)

稍微做一下类比:

普通编程开发=====CPU(比如奔腾)=====windows操作系统

嵌入式开发=====嵌入式处理器(比如ARM)=====嵌入式操作系统(比如嵌入式linux、wince、vxworks等)

PC上如果没有windows操作系统,那它就是一个DOS机。

嵌入式开发中如果没有嵌入式操作系统,那它就是通常所说的单片机开发,嵌入式开发最初就是从单片机开发走过来的。

现在所说的嵌入式开发,通常都是指有嵌入式操作系统的那种,产品功能复杂了,单片机开发无法实现,需要用到嵌入式操作系统,也能体现出嵌入式操作系

统的优势。

当然现在所讲嵌入式开发和单片机开发的区别不仅仅在是否有嵌入式操作系统上,嵌入式开发所使用的嵌入式处理器(比如ARM

/

MIPS等)在内核体系结构、指令系统、工作模式等方面与单片机都有很大不同。

嵌入式产品在航空、医疗、家电、消费电子、汽车电子、移动等众多领域都可以看到,应用领域极为广泛,所以现在嵌入式开发相当热门,并且具备非常好的发展前景!!

嵌入式系统开发中的C语言编程和普通C语言编程有何区别?

无区别,只是你操作的层面不一样。普通编程层次较高些(一般而言),而嵌入式操作的大部分偏底层,如管理内存映射,设置中断系统等。

看来deep_pro也很了解。不过他也挺赞同我的:1、承认嵌入式系统开发中的C语言编程和普通C语言编程无区别;2、补充只是编译器有较大区别,这对程序员来说基本是透明的;3、基本赞同我“嵌入式开发中的C语言大多数情况下需对硬件底层操作(因为你别指望嵌入式上能跑起一个庞大的操作系统),而普通C编程则不然(相信基本没有程序员在PC上编程时还去控制PC上的内存映射)。”

综上所述,我要谢谢deep_pro赞同我。

c语言嵌入式与java嵌入式有哪些区别

我是个嵌入式程序员。

嵌入式开发分为驱动开发和应用开发。

驱动开发难度较高,除了精通嵌入式芯片工作原理(寄存器设定...),操作系统原理(存储空间分配...等)外,还需要了解基本的数字电路的知识(端子电位...等)。

这部分主要用C语言和汇编,这种开发薪金较高,不是随便上个培训班就能胜任的。

嵌入式应用开发,其实基本已经和普通软件开发没什么区别了,只是使用的工具不同,因为各种不同已经在驱动层和操作系统层屏蔽了,直接调用各种接口函数编写程序。是在嵌入式驱动开发的基础上做的进一步开发。

这部分用C\C++,Java,C#都有,Java多一些,因为Java语言对不同平台间的兼容性较好,不管什么系统,装个Java虚拟器就可以跑Java程序。

早些年嵌入式开发指的都是嵌入式驱动开发,现在很多培训班混淆视听,把应用开发也归类为嵌入式,会嵌入式应用开发的人一点都不缺乏。这也和市场需求有关,目前人才需求大部分都是嵌入式应用开发,国内很少有公司有财力和物力自己做驱动开发。

一个合格的嵌入式驱动开发程序员再怎么也月薪上万。

一个合格的嵌入式应用开发程序员最多四五千。

懂得应用开发的,根本不懂驱动开发,因为不懂硬件;懂得驱动开发的人轻松做应用开发,因为那些接口函数都是他们自己做的。

你真正要选择的不是C语言还是Java,而是驱动还是做应用。

做驱动绝对是有挑战的。高投入,高回报。

嵌入式C语言和通用C语言有什么区别

语法上没什么区别,就是普通的c编程是在OS之上,有很多的标准库函数可以调用,分配的内存就是PC机的内存,处理器就是PC的CPU。

而嵌入式C编程的话会涉及到操作硬件,所以底层没有库函数调用,需要自己编写操作硬件的函数,另外编译的时候是用交叉编译器,内存是芯片上的ram,

处理器就是芯片带的处理器,例如ARM或者MIPS等等,而不是PC的x86

CPU,

还有就是在写程序的时候更注重程序的优化和效率,因为嵌入式硬件资源相对PC有限,实时性较强等等。

希望对你有帮助。

C语言的嵌入式和面向过程(对象)有什么区别

这是两个不同的概念

嵌入式系统是一种针对性很强的的专用计算机系统,软件系统被固化在rom中,一般没有操作系统,独占cpu运行,因容量,cpu性能,功耗等限制,嵌入式系统规模都比较小。比如全自动洗衣机,智能微波炉,电磁炉,智能冰箱这些电器里的系统就是嵌入式系统。

而面向过程和面向对象是两种编程思想,面向过程指的是编程时以实现方法为中心,面向对象指的是编程时以数据为中心