本文目录一览

1,嵌入式系统c语言编程该怎么学

目前所有嵌入式系统,包括ecos,ucos,以及linux系列等,均是由C语言配合少量汇编语言书写的。所以从编程语言角度来说,只会C语言就足够了。由于C语言可以直接操作硬件的特性,被大量使用于操作系统,驱动及其它硬件相关代码的编写。嵌入式系统或编程的学习,最基础的就是C语言了。不过要学好嵌入式,除了C语言,还需要一定的硬件知识及操作系统相关的理论知识,如进程调度,内存池等。这些可以在学习嵌入式系统的过程中逐步学习,并非前提。

嵌入式系统c语言编程该怎么学

2,嵌入式C 在什么地方用

嵌入式C++,用在嵌入式单片机中:就是ARM系列的单片机。不过目前C++的嵌入式开发系统不常见,主流的是C语言的开发环境。并且嵌入式不是在Windows下开发的,是在linux下开发的。
嵌入式领域的开发其实分为好多的方向, 不从产品考虑,单从开发的程序处于架构中的位置上考虑的话, 可以这么分: 1. 比较下层的: ?drivet的开发 ?基于具体芯片组(例如高通amss系列)的pf的开发 ?基于通用协议的上层协议的开发 等等,这一些基本上不会用到c++,一般用c,汇编比较多 2. 基于oem层的开发: ?一些中间层架构的开发 ?通用中间件的开发 ?一些算法的开发(暂时放到这个分类下吧) 等等,这一些基本上不会用到c++,一般用c,当然也有基于jvm的 汇编也有应用(特别是一些算法,编解码什么的) 3.基于上层应用app的开发,或者是ota的开发 这一层的开发就百家争鸣了,c/c++/java都有

嵌入式C 在什么地方用

3,嵌入式C语言

首先回答你的第一个问题:学习嵌入式C语言,以后是不是停留在比较底层的了,如果转而向高层发展是不是就比较难了?学习嵌入式C,并不一定会停留在底层,你也可以转向高层发展,不过高层就是指操作系统和应用程序了。而且你要是搞懂了底层,转而去发展操作系统工程师和应用程序工程师也是相对要简单很多,而且你做出来的系统和应用程序会比直接做系统和应用程序的工程师效率更高,错误更少。因为底层是他们的基础,你都知道底层的实现了,还不能把他们应用好么?第二个问题:一般来说,学习嵌入式,是不是相对要了解的知识比较多?是的,嵌入式是个很庞大的方向,可以说它能在IT行业里面任何一个领域通杀。现在的任何一款电子产品,都是离不开嵌入式的。因此,要学习嵌入式,要了解的东西就会非常多:包括了技术层面(嵌入式的各种底层驱动程序,各种设计机制,各种总线通讯等)和行业背景的知识(比如汽车行业、手机行业、pad行业、金融行业等)。第三个问题:然后想问一下,嵌入式C语言的前景?嵌入式C语言的前景是不错的,包括两个方面:第一就是当前已经没有多少人用汇编语言来编写底层代码了,绝大部分都是用的C语言,而当前与硬件联系最紧密的就是C语言了。第二就是嵌入式方向,以后社会的发展前景是电子产品将会越来越多,功能越来越强大,所需要的底层功能器件也越来越多,所以嵌入式是只会越来越需求。前景都是很不错的。另外,嵌入式系统方向是一个很庞大也很难的领域,需要很长一段时间的积累和沉淀,这都需要以牺牲时间和精力为代价的。
完全是错误。树越大,其根基也必然更大,房子越高,需要的地基也更大。自己好好想吧,做事情怕困难最好不做。要是想达到境界,不学C语言才是不可能。只不过,要真正学会C语言至少一二十年。我学了20多年仅懂些皮毛,以上纯属个人观点。
学C语言主要还是做底层开发,但是C基础打好了,学其他的语言都比较容易了。
C语言是基础,学好了C,再学习其他的语言相对来说很容易了,所以对于以后底层或者上层应用都起到关键的作用,好好学就对了 西嵌。
嵌入式很挣钱,但是很难学

嵌入式C语言

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

这是两个不同的概念嵌入式系统是一种针对性很强的的专用计算机系统,软件系统被固化在rom中,一般没有操作系统,独占cpu运行,因容量,cpu性能,功耗等限制,嵌入式系统规模都比较小。比如全自动洗衣机,智能微波炉,电磁炉,智能冰箱这些电器里的系统就是嵌入式系统。而面向过程和面向对象是两种编程思想,面向过程指的是编程时以实现方法为中心,面向对象指的是编程时以数据为中心
嵌入式c语言和c语言是完全一样的,写代码上完全没有区别。下面由卓跃教育为您介绍它们两者间的区别。区别在于嵌入式的c语言是跑在嵌入式的开发板上的,cpu和我们电脑不一样,所以编译器也是不一样的,生成的可执行程序也是不一样的。首先c语言,这个是毋庸置疑的,不管是做嵌入式软件还是硬件开发的人员,对c语言的掌握这个是必需的,特别是对于以后致力于嵌入式后,就该写代码了,动手才是最重要的,当你动手了,遇到问题了,再反过来学习,反过来查查课本,那时的收获就不是你死看书能得到的。其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助。应该把系统的管理理解一下,比如进程、线程,系统验,会有更好的理解的。还有应该学习嵌入式系统,如linux或者wince下的编程,这些对以后做应用的编程很有帮助,当然,如果做手机的话,那可以学习mtk、塞班、android等操作系统,android是以后发展的趋势,现在很热门,android也是基于linux系统封装的,所以建议先学习下linux。还有,应该学习下单片机或者arm或者mips,很多人说我没有单片机的经验,直接学arm可以吗?我觉得那完全没有问题的,当然如果你学习过单片机,那最好不过了,以后学习arm就更简单了。最后如果你把以上的知识都有所了解后,就该去阅读阅读一些优秀的代码,比如结合arm芯片手册学习去学习下uboot的源代码,了解下最小的系统开发,那对你整个嵌入式开发的非常有帮助的,可以的话,还可以学习下linux的源代码,当然如果你直接阅读2.6的代码,我想你会很痛苦的,可以先看看linux代码早期的版本,比如0.12的代码等等,麻雀虽小,五脏俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程师。最后,希望这篇文章对热爱嵌入式,想致力于嵌入式开发的朋友有所帮助。

5,嵌入式系统需要的语言是什么

主要是C语言,部分底层代码会用到汇编语言汇编语言有助于理解硬件,利于优化代码的理解,所以就学习而言,应该先掌握汇编语言再精通嵌入式C语言。需要注意的是嵌入式C语言和C语言是有区别的,前者与硬件有关。
对于嵌入式系统来说,目前最常见的、应用最广泛的是c语言。另外c++和汇编也有一定比例上的使用。所以从适用性上来说,学习c语言是最好的。另外在学习c语言的同时,推荐学习嵌入式系统编程时用得比较多的知识,比如单片机原理、数据结构算法、常见的外设及驱动、嵌入式操作系统,这在将来工作中也会带来不小的益处。c语言简介:c语言是一门通用计算机编程语言,应用广泛。c语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管c语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的c语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称mcu)以及超级电脑等作业平台。基本特性1、高级语言2、结构式语言3、代码级别的跨平台4、使用指针特有特点c语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。c语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。不同的变量类型可以用结构体(struct)组合在一起。只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。部份的变量类型可以转换,例如整型和字符型变量。通过指针(pointer),c语言可以容易的对存储器进行低级控制。预编译处理(preprocessor)让c语言的编译更具有弹性。优点1、简洁紧凑、灵活方便2、运算符丰富3、数据类型丰富4、表达方式灵活实用5、允许直接访问物理地址,对硬件进行操作6、生成目标代码质量高,程序执行效率高7、可移植性好8、表达力强缺点1、 c语言的缺点主要表现在数据的封装性上,这一点使得c在数据的安全性上有很大缺陷,这也是c和c++的一大区别。2、 c语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,c语言比其他高级语言较难掌握。也就是说,对用c语言的人,要求对程序设计更熟练一些。
C语言和汇编

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

我是个嵌入式程序员。嵌入式开发分为驱动开发和应用开发。驱动开发难度较高,除了精通嵌入式芯片工作原理(寄存器设定...),操作系统原理(存储空间分配...等)外,还需要了解基本的数字电路的知识(端子电位...等)。这部分主要用C语言和汇编,这种开发薪金较高,不是随便上个培训班就能胜任的。嵌入式应用开发,其实基本已经和普通软件开发没什么区别了,只是使用的工具不同,因为各种不同已经在驱动层和操作系统层屏蔽了,直接调用各种接口函数编写程序。是在嵌入式驱动开发的基础上做的进一步开发。这部分用C\C++,Java,C#都有,Java多一些,因为Java语言对不同平台间的兼容性较好,不管什么系统,装个Java虚拟器就可以跑Java程序。早些年嵌入式开发指的都是嵌入式驱动开发,现在很多培训班混淆视听,把应用开发也归类为嵌入式,会嵌入式应用开发的人一点都不缺乏。这也和市场需求有关,目前人才需求大部分都是嵌入式应用开发,国内很少有公司有财力和物力自己做驱动开发。一个合格的嵌入式驱动开发程序员再怎么也月薪上万。一个合格的嵌入式应用开发程序员最多四五千。懂得应用开发的,根本不懂驱动开发,因为不懂硬件;懂得驱动开发的人轻松做应用开发,因为那些接口函数都是他们自己做的。你真正要选择的不是C语言还是Java,而是驱动还是做应用。做驱动绝对是有挑战的。高投入,高回报。
我现在刚从 嵌入式的培训机构出来,虽然培训机构没有帮我找到工作,但我自己找到了,现在在做嵌入式。只要肯学,培训可以学到很多东西。 至于究竟是要学习java、c语言、还是嵌入式,看个人的兴趣,c语言的不一定比java的混的好。我们部门是c语言、c++的嵌入式方面的,但经理是java做起来的。 北京的好的培训机构还很多,华清远见、顶嵌等。 如果你是it小白,基础为0,我建议你不要去培训嵌入式,你会很头疼。 嵌入式大概是要培训c语言,c++的,但主要是linux编程、wince方面的,开发板一般是arm系列的,还得学习arm/thumb指令。 培训主要看个人能力,搞培训机构找工作,很可能会失望。
就拿手机来说,C主要是做底层设备驱动或内核的,比如比较流行的WinCE,Linux, Android的内核都是C/C++写的。Java主要是上层应用程序,像计算器、通信录之类的,优点是开发相对容易,但是运行相对较慢,所以像手机浏览器之类运算量大或比较重要的app很多用C++写的。我较着,你要是本科生就学java,要是研究生就学C的嵌入式。当然如果个人有偏好,学什么都一样,只要努力。
嵌入式开发分为驱动开发和应用开发。驱动开发难度较高,除了精通嵌入式芯片工作原理(寄存器设定...),操作系统原理(存储空间分配...等)外,还需要了解基本的数字电路的知识(端子电位...等)。这部分主要用C语言和汇编,这种开发薪金较高,但是相对来说,学习的难度比较大。嵌入式应用开发,其实基本已经和普通软件开发没什么区别了,只是使用的工具不同,开发环境不同,因为各种不同已经在驱动层和操作系统层屏蔽了,直接调用各种接口函数编写程序。是在嵌入式驱动开发的基础上做的进一步开发。这部分用C\C++,Java,C#都有,Java多一些,因为Java语言对不同平台间的兼容性较好,不管什么系统,装个Java虚拟器就可以跑Java程序。早些年嵌入式开发指的都是嵌入式驱动开发,目前的嵌入式开发主要是针对嵌入式应用开发,这也和市场需求有关,目前人才需求大部分都是嵌入式应用开发,国内很少有公司有财力和物力自己做驱动开发。

文章TAG:嵌入式  c语言  语言  嵌入式系统  嵌入式c语言  
下一篇