单片机为什么一直用C语言,不用其他编程语言?只有学过的知道!
單片機為什么還在用C語言編程?答案是:C語言是最適合單片機編程的高級語言。
這個問題的意思應該是:現在有很多很好用的高級語言,如java,python,VC等等,為什么這些語言不能用來編寫單片機程序呢?那么這個問題的答案就是:不能不能,而是不合適。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
一、單片機編程的特點
對單片機編程來說,首先要考慮的是單片機的程序空間和數據空間都是有限的,所以要讓程序盡量短小精悍,以節省程序占用的存儲空間。
第二、單片機編程的一個主要對象是對單片機的端口和內部寄存器的操作和配置,這個需要比較精確的時序控制。
第三、單片機算法運算中,盡量使用加法、減法、移位運算,因為乘法和除法運算會非常費時間,尤其是除法,會耗費很多時間,這對于速度本身就有限制的單片機來說,是一個很大的負擔。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
二、高級語言編寫單片機程序的缺陷
高級語言可以實現更為優化的算法,更為方便的執行方案,但是,高級語言對程序存儲空間的占用要比匯編和C語言多很多。這是最致命的一點,單片機有限的存儲空間需要靠精打細算來設計程序,根本經不起高級語言臃腫的代碼體積。
高級語言無法實現精確的時序控制。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
三、C語言是一個折中選擇
其實用C語言開發單片機也是一個折中方案,因為最適合單片機開發的編程語言實在太過晦澀難懂,并且每一種單片機的匯編指令有很大區別,所以想把一個程序從這種單片機移植到另一種單片機簡直是癡心妄想,還不如重新寫一遍程序。
而C語言代碼執行效率高,也比較精簡,更便于移植......所以在現今的單片機編程語言中,C語言才會占據絕對主導地位
作者丨悟空問答:老馬識途單片機
“我是一名從事了10年開發的老程序員,最近我花了一些時間整理關于C語言、C++,自己有做的材料的整合,一個完整的學習C語言、C++的路線和工具。如果感覺自學C/C++編程有困難的話可以湫湫掃下方二維碼。這里是編程愛好者的聚集地,歡迎初學和進階中的小伙伴。希望你也能憑自己的努力,成為下一個優秀的程序員。
?
總結
以上是生活随笔為你收集整理的单片机为什么一直用C语言,不用其他编程语言?只有学过的知道!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 加载exe的PE信息并输出相关PE信息的
- 下一篇: 程序员想进大公司?学会这门编程知识,决定