学C51的一些疑问
1.很多人说汇编语言更难,但我怎么觉得C语言更难?2.看过几次C51教程,一开始说得挺好,C51容易学会,不必学最基础的东西。可是以定时器为例,汇编语言要设置相关选项,C语言也要设置,既然如此,为什么不直接用汇编语言呢?
还有矿坛以前有些基础教程,现在找不到了。 2个都要的。
学会了,就不会有这个疑问了。
有各种各样的疑问的工夫,不如先去学一点。学这个的人都有过类似的疑问,没啥可讨论的。 曾经学Win32汇编时,觉得汇编无敌
然后Win64出现了……
代码需要编译到Linux了……
现在对于这个问题比较直观,如非必要别去使用底层语言开发
比如你写内核,驱动,需要针对性能优化,否则别去碰汇编 总结:汇编再熟悉平台变了等于白学,除非你只搞一个平台 汇编需要扎实的CPU底层的功底,用C语言不一定需要知道这些,
C语言代码直观,利于维护,功能算法上的阅读性,移植性扩展性都比汇编强,程序做大了很容易
有了C语言,可为升级C++打下坚实的基础,可以转行学习其它C++类的更高级编程语言 C语言比汇编更抽象些,它将许多常用的操作(如循环、判断等)封装好了,使用者只需要按其格式设定好直接调用就行,不象汇编那样需要自己用伪代码去实现。楼主觉得C语言更难,也许是因为C语言的命令数量比汇编更多些吧。
既然楼主是初学,建议跳过8位机、直接学习32位机的编程,这样也许会更实用些。 最好 2个都会。
但还是建议你跳过51,
直接学习esp32。 如果只是做一些定时器控制之类的,汇编语言和C语言差不多.
但是如果程序很复杂,带着数据处理,各种菜单外设 ,几千行的程序,汇编很难写,写了也很难调试,找BUG.
另外,如果从8051转ARM 开发, C语言几乎直接转换无难度 ,而ARM实际操作中是无法用汇编来编程序的 . 回各位,C语言我学了几次了,没学会,这几天又开始学。 不知道你是怎么学的
玩单片机要实际操作才好,光看书看教程,如果不实践基本很难有进展的,什么东西都是在用的过程中学才会比较快 xiaocake1 发表于 2025-4-23 20:50
不知道你是怎么学的
玩单片机要实际操作才好,光看书看教程,如果不实践基本很难有进展的,什么东西都是在 ...
约15年的时候看过郭天祥的教程,后来又学过几次,没学会。 C的优势在于复杂运算,比如32bit整形四则运算、浮点四则运算、math库涉及的初等函数。 我当初学习C语言,是通过改了别人的一个程序就学的差不多了。 自己找个感兴趣的项目,再找一个差不多的例程,修修改改,项目成了,应该差不多学会了。 最适合学 c 的系统是 linux
可以先写些电脑跑的命令行程序(譬如我写的 cdnet_tun 开源程序可以把串口数据映射成本地 udp 通讯,这样多个程序可以通过 udp 通讯访问一个串口)
而 windows 上用 c 写程序不会有成就感的,因为 windows 的习惯是一上来就要有图形界面
进阶可以 gtk 写图形界面
然后再搞 mcu 就轻松了
页:
[1]
2