当然要先学好标准c,因为你先要学习的不仅是语法,而是c的架构和编程习惯与思想。c与汇编当然不同,就像不学123怎么学微积分
所以静下心找个周末好好看看书,我当年期末考试突击c语言,看了两天得了85,准备c语言二级等级考试的时候看了两个星期,笔试得了91,当然你不能像我一样只为考试,看两个星期没必要,看两天就上机实践才是真正的程序员应该做的。不动就上网查,基本不用问别人,两周就能初步了解并使用
用keil和proteus进行联调以辅助实践,看书必选谭浩强的c程序设计,关于联调请上网查询
C语言也不难,如果阁下肯花20小时,把C语言最基本的东西弄懂,肯定没有什么问题。
我觉得单片机开发中C语言用到最多的几个部分
基础知识:比如数据类型,运算符,格式转换
顺序控制 if语句 switch语句
循环控制 while语句 for语句
数组
指针
其他一些C语言中的东西单片机上用不了,也就大概了解一下就行了。。。
应该先学标准C,一般单片机的C语言语法部分同标准C,单由于应用环境不同,所以增加了一部分内容。两者是不兼容的
C 的确是没有汇编快,不过像你所说的,开发复杂逻辑用 C 比较方便。并且你在开发产品的时候,除非运行效率不达标,不然建议用 C。这使得你的开发效率和维护效率会大大提升,更何况在 C 里也可以嵌入汇编。如果你想在某些逻辑上使用汇编还是可以的。
你的情况和我初学时是一样的,当时只会用汇编编写程序,反正是业余吗,感觉很好,但后来发现汇编的可读性和移值性太差,刚写完的程序就不知是什么意思了,我开始学C51编程,我没有系统的学习C语言,我只是完整的学完了<电子制作>某一年的(好像是06年)连载讲座,而后我从网上下了许多C51源程序,进行研究并进行改写移植,很快我掌握了C语言的编程方法。而且尝到了C语言编程的甜头了。
另外说明一下,之前我对C语言一窍不通,英语水平基本不懂。