微控制器程式設計最早是彙編,然後從彙編轉為c語言,那麼,c 會不會替代c語言來進行微控制器程式設計 ?

時間 2021-05-31 08:28:44

1樓:蒙塔基的鋼蛋兒

做可以做,但是Cpp必須閹割,也就是只是C with class了,想用string?不存在的。不敢用的。

例如汽車行業中的ISO26262.這就完全限制了heap的使用。

2樓:configex if

個人認為僅用基本的OOP特性的話,C++更適合嵌入式開發,尤其是涉及大量外設的情況。

其實Arduino已經這樣做了,雖然它叫Processing,但分明就是去掉STL的C++。

把UART IIC等資源封裝成類,加速度計等外設也封裝成類,把資料和操作(函式)封裝在一起,簡直太爽了。比c裡面用struct儲存各個外設的狀態和資料,舒服多了。使用第三方庫也很方便。

但是Arduino也有混亂的地方,尤其是牽扯中斷/定時器的時候,不同的庫經常衝突。要想找到既易用又不失靈活性的方法,恐怕要實現乙個統一的框架來管理各種資源,這差不多像乙個作業系統了。

個人認為,如果僅用基本的oop特性,比如類,捨棄stl和其他不必要的功能,這樣乙個精簡的C++很適合處理大量外部裝置的情況,適合微控制器的應用。

3樓:MingH

KEIL MDK 和 IAR for ARM/MSP430已經支援 c++。。。

正在轉過去……

不用C++一些複雜的特性,效率差別不大的!

以前amobbs論壇裡有個壇友做過測試!

同樣的功能,C++跟C差別不大,編譯器又不是吃素的!

github有個專案 micropython 在 stm32f103上跑的溜溜的,看名字就知道了,感興趣去看看!

4樓:繁星雨夜

現在微控制器的範圍也很大了,已經不是停留在幾年前的51上了。C++以後可能會適用與一些高階的微控制器開發。現在大部分微控制器的開發環境的新版都開始支援了,因為微控制器的效能已經提公升到差不多可以用了。

但是低端應用還會是C

C語言並沒有完全取代彙編,只是替代了大部分。不管是裸機還是RTOS,都有一小部分彙編在執行。同理C++不會完全取代C,可能慢慢的C++會取代掉C所做的工作裡面更適合C++的部分,不過仍然是有一部分是C來幹比較合適的,而這部分不會被C++取代。

這世界不是線性的,各取所長去合作才能達到最佳效果。所以世界上不會只剩下一種程式語言而把其他的都取代

5樓:餘昌黔

1.對於大多控制系統而言,面向過程的概念用起來更加順手。既然這樣,大家就沒必要用C++了,不然就是在用C++寫C

2.關鍵是現在很多編譯器不太支援C++的特性啊,什麼過載,物件導向都木用啊!!雖然程式設計效率會提高但是不能用啊!!!

所有微控制器使用的組合語言是統一的嗎?

人工智慧 這個問題應該從編譯器,指令集和彙編的語法整體來說,對於同一的構架,具有相同的指令集,彙編的語言是可以統一的,但是針對同一構架,不同公司開發的編譯器可能導彙編語法不一樣,例如ARM公司開發的彙編器與GNU彙編器在編譯同一arm構架就存在彙編語法的差異,採用gnu風格編寫的彙編碼是沒有辦法在A...

如何評價 組合語言和編譯原理無非是微控制器技術 的說法?

江湖小蝦公尺 1,核心開發人員都是微控制器愛好者咯?2,微控制器都是lowB咯?沒有微控制器,你拿你電腦遙控你家電視機啊?你以為做個遙控很簡單麼,微控制器開發才是 全棧工程 初音未來 微控制器優勢在於開發周期短,開發成本低。搞微控制器的你告訴我有多少是死磕彙編的?換個晶元就重新查手冊看暫存器?別的不...

微控制器是自學還是培訓靠譜?

Alan 作為過來人,我可以很負責任的告訴你,即使你已經參加了培訓,難道後續就不自學了嗎?不可能的。在實際工作中會碰到各種各樣的問題,有些問題可能會在培訓機構中,老師有講解 但是我覺得更多的還是沒有現成拿來的,這個時候就要求你有很高的自學能力。而且隨著未來的新技術 新事物的出現,要求人類適應新事物 ...