这样的,算法的意义是在于优化程序使它拥有更高的运行效率和节省更多的内存空间,但是如今科技发展的速度让人很少去关注这个问题(之前本人问一个同学为什么用C语言写程序不用汇编,他鄙视了我)
需要用到大量的算法的程序一般都有着很大的运算要求(MC这种不科学的情况另谈),如果题主以后是打算从事嵌入式系统开发的话可以学一下,不用精,如果以后是从事嵌入式软件开发的话,就不用学了。
另外,嵌入式可以把注意力集中到C++(嵌统的当本人没说),学会调用别人的库后,一般都不会去考虑这个问题
C语言须学习的,最好结合汇编,把软件和硬件深刻理解.
从事嵌入式开发不需要太高深的算法,只要能利用软件很好的把硬件控制起来就行了;
须学习linux和操作系统,不然怎么实现移植和Driver开发?
我觉得你对嵌入式开发并不了解,还是先在网上多找点入门方面的建议,总结一下嵌入式开发是怎么一回事,了解了以后再根据自己的实际情况评估一下走这条路是否合适,毕竟嵌入式开发需要掌握的东西较多;
1、算法是最高深的应用之一,如果想做算法,那就选择一块内容去深入研究。嵌入式的领域相当广。C语言是嵌入式底层的基础,语法当然要知道。但是现在很多应用包括网页啊,数据库啊。上层的都使用其他语言开放的。
2、例如写驱动程序,要看在什么操作系统,什么平台上开发,现在比较流行的操作系统linux,比较流行的cpu平台arm,买个arm的开发板(淘宝),随开发板会有一些资料,回来研究研究。再买本《linux上的设备驱动程序》书看看,边学习边实践,慢慢走上linux嵌入式驱动编程之路。
嵌入式也分很多种的,据我所知,有硬件做芯片的(主要学FPGA VerilogHDL/VHDL语言),硬件设计电路的(模电+PCB+MCU(C语言)),软件做操作系统驱动的(C/C++语言),软件做操作系统应用的(C/C++语言),软件做BSP的(C/C++语言)。。。很多种,主要看你打算学哪些了,偏软件一定要学好C,C++也是必备。偏硬件的话C一般就行。