同樣是高級語言C語言可以編寫51單片機程序,JAVA卻不能編寫?

在學生時代,我用過C語言編程也用過JAVA語言編程,工作之後都還給老師了,但是基本的概念還是知道一些。

C語言和JAVA語言同樣是高級語言,但是還是不同的,C語言要更低級一些,對硬件的控制更加直接,JAVA語言的運行需要使用JAVA虛擬機。下面分別對C語言和JAVA語言說一說。

同樣是高級語言C語言可以編寫51單片機程序,JAVA卻不能編寫?

C語言

  • C語言是我大學時的必修課,記得那時還是用的譚浩強老師的C語言教材,現在回想起來歷歷在目;

  • C語言更加接近機器語言,可以使用指針等直接對內存的地址進行操作;

  • C語言是面向過程的編程語言,說的直白點兒,使用C語言編程,腦海中首先得有一個流程圖,第一步幹什麼、第二步幹什麼,直到把這個事情做完;

  • C語言需要使用編譯器編譯成機器語言,然後就可以運行了,不需要運行在虛擬機上,JAVA是運行在虛擬機上的,所以運行速率有點兒慢,但是跨平臺效果好。

同樣是高級語言C語言可以編寫51單片機程序,JAVA卻不能編寫?

JAVA語言

  • JAVA是面向對象的高級語言,說直白點兒就是,編程時,首先要把所有的東西抽象成類,這個類包含了各種屬性和方法,然後封裝起來,更加接近人類世界;

  • JAVA的運行需要解釋器,轉換成字節碼,然後在JAVA虛擬機上運行,相比與C語言是不需要的虛擬機的,編譯成機器語言,直接在硬件上運行。

單片機為什麼用C語言而不用JAVA

  • 單片機的性能一般不是很好,CPU、內存可以說是“寸土寸金”,要省著點而用;

  • 假如單片機使用JAVA語言,那麼首先需要運行一個JAVA虛擬機,性能不是很好的單片機是“跑”不起來的;


  • 單片機使用C語言就不一樣了,C語言編譯後直接轉換成機器語言,直接對硬件進行控制,效率要高很多,而且很節省CPU和內存空間。

同樣是高級語言C語言可以編寫51單片機程序,JAVA卻不能編寫?


最後,如果你想學C/C++可以私信小編“01”獲取素材資料以及開發工具和聽課權限哦!


分享到:


相關文章: