标题: 学习汇编语言是必要的吗? [打印本页]

作者: 3253087609ydrq    时间: 2024-3-20 01:34
标题: 学习汇编语言是必要的吗?
关于汇编语言的问题,谢谢大家
作者: Hephaestus    时间: 2024-3-20 03:34
有必要了解,没必要深入研究。
作者: STC庄伟    时间: 2024-3-20 08:55
大学老师也讲的  不作为重点
作者: 明日之星8    时间: 2024-3-20 09:01
汇编语言是玩“特技”用的,学起来也很枯燥。先学C语言吧,照样可以
把单片机玩的得很好。等把C语言玩得差不多的时候再学汇编也就不那么
枯燥了。
作者: newlined    时间: 2024-3-20 10:45
我当时是先学的汇编,也没有学好,但我还是认为学习汇编有必要,不然一些资源用超了怎么办?
作者: LGQNM    时间: 2024-3-20 11:03
看具体工作内容需要,如果是做逆向开发,汇编是必须的
作者: 明日之星8    时间: 2024-3-20 11:04
newlined 发表于 2024-3-20 10:45
我当时是先学的汇编,也没有学好,但我还是认为学习汇编有必要,不然一些资源用超了怎么办?

编译器在编译的时候会提示ROM和RAM的大小,尽量多设置局部变量,只设置必须的全局
变量。编译器在编译的时候还可以在RAM与ROM之间做平衡(你可以做出选择)。
作者: newlined    时间: 2024-3-20 11:14
明日之星8 发表于 2024-3-20 11:04
编译器在编译的时候会提示ROM和RAM的大小,尽量多设置局部变量,只设置必须的全局
变量。编译器在编译的 ...

谢谢您的回复,看来编译器还是比较智能的。
作者: dalaoshi    时间: 2024-3-20 11:24
这要看你的志向,如果人生只为谋生,那学C就够了,如果还想以后写出DEFGHIJK语言给其他人谋生,那就得学汇编了。
作者: gxsf    时间: 2024-3-20 15:24
以前一直入门不了,后来都忘记得差不多了
作者: willtang    时间: 2024-3-20 16:43
看价值 汇编都到淘汰的边缘,没有立即能产生回报,建议不要碰。
作者: Hephaestus    时间: 2024-3-20 17:15
明日之星8 发表于 2024-3-20 11:04
编译器在编译的时候会提示ROM和RAM的大小,尽量多设置局部变量,只设置必须的全局
变量。编译器在编译的 ...

了解汇编才知道怎么写更有效率。
作者: xiaobendan001    时间: 2024-3-20 17:19
Hephaestus 发表于 2024-3-20 17:15
了解汇编才知道怎么写更有效率。

也不一定,可以试试对比各种写法出来的编译结果的大小
作者: 明日之星8    时间: 2024-3-20 17:53
Hephaestus 发表于 2024-3-20 17:15
了解汇编才知道怎么写更有效率。

“效率”分几种情况,一种情况是RAM和ROM都比较小的单片机要用汇编
缩短代码,但是这加大了程序员的工作量。另一种情况是降低程序员的
难度而加大单片机的代码量,比如32位单片机的“库开发”,相比优化过
的C语言代码,那个库开发的代码增加了五倍以上,更别说和汇编相比了。
作者: jingder    时间: 2024-3-20 18:08
先学c语言,有时间了解汇编即可
作者: Hephaestus    时间: 2024-3-20 23:55
明日之星8 发表于 2024-3-20 17:53
“效率”分几种情况,一种情况是RAM和ROM都比较小的单片机要用汇编
缩短代码,但是这加大了程序员的工作 ...

别乱说了,HAL库是坨屎,但是标准库和LL库效率很高的,跟写寄存器没多少区别,还特别容易上手。
作者: Y_G_G    时间: 2024-3-21 00:15
不需要,甚至是连看都不用看的
我用过几年的汇编,现在都用C了
我不否认汇编在单片机学习中的作用和优点,不管是了解单片机运行,效率,单片机原理方面,都有一定的作用
但这所谓的好处带来的收益太少了,付出和收入不成正比,不到非用汇编不可的地步,最好不要学汇编
不会汇编的人多了去了,他们一样能写出优秀的代码
只要你了解了单片机原理,代码逻辑编写严格按照C语言的逻辑来写,这样写出来的代码,不会比汇编差的
作者: 1600277881    时间: 2024-3-21 11:27
如果说有一天你碰到一个项目,CPU的资源要用到80%以上,别人只能升级CPU,而你可以在不升级CPU的情况下完成项目,你就知道汇编的重要。





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1