最適合微控制器程式設計的高階語言究竟花落誰家?高階語言也分種類?
為什麼還在用C語言程式設計?答案是:C語言是最適合微控制器程式設計的高階語言。
這個問題的意思應該是:現在有很多很好用的高階語言,如java,python等等,為什麼這些語言不能用來編寫微控制器程式呢?那麼這個問題的答案就是:不是不能,而是不合適。
一、微控制器程式設計的特點
對微控制器程式設計來說;
首先要考慮的是微控制器的程式空間和資料空間都是有限的,所以要讓程式儘量短小精悍,以節省程式佔用的儲存空間。
第二、微控制器程式設計的一個主要物件是對微控制器的埠和內部暫存器的操作和配置,這個需要比較精確的時序控制。
第三、微控制器演算法運算中,儘量使用加法、減法、移位運算,因為乘法和除法運算會非常費時間,尤其是除法,會耗費很多時間,這對於速度本身就有限制的微控制器來說,是一個很大的負擔。
二、高階語言編寫微控制器程式的缺陷
高階語言可以實現更為優化的演算法,更為方便的執行方案,但是,高階語言對程式儲存空間的佔用要比彙編和C語言多很多。這是最致命的一點,微控制器有限的儲存空間需要靠精打細算來設計程式,根本經不起高階語言臃腫的程式碼體積。
高階語言無法實現精確的時序控制。
三、C語言是一個折中選擇
其實用C語言開發微控制器也是一個折中方案,因為最適合微控制器開發的程式語言實在太過晦澀難懂,並且每一種微控制器的彙編指令有很大區別,所以想把一個程式從這種微控制器移植到另一種微控制器簡直是痴心妄想,還不如重新寫一遍程式。
而C語言程式碼執行效率高,也比較精簡,更便於移植......所以在現今的微控制器程式語言中,C語言才會佔據絕對主導地位。
————————————
看到這裡你是不是對資料C語言又有了一點新的認知呢~
如果你喜歡這篇文章的話,動動小指,點個贊再走~
如果你想學程式設計,小編推薦一個C語言/C++程式設計學習基地【點選進入】!
一個活躍、高逼格、高層次的程式設計學習殿堂;程式設計入門只是順帶,思維的提高才有價值!
涉及:程式設計入門、遊戲程式設計、網路程式設計、Windows程式設計、Linux程式設計、Qt介面開發、黑客等等....