卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

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

網(wǎng)友解答: 根據(jù)我所知道的回答一下這個問題。在學生時代,我用過C語言編程也用過JAVA語言編程,工作之后都還給老師了,但是基本的概念還是知道一些。C語言和JAVA語言同樣是高級語言,但是

網(wǎng)友解答:

根據(jù)我所知道的回答一下這個問題。

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

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

C語言

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

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

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

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

JAVA語言

JAVA是面向?qū)ο蟮母呒壵Z言,說直白點兒就是,編程時,首先要把所有的東西抽象成類,這個類包含了各種屬性和方法,然后封裝起來,更加接近人類世界;

JAVA的運行需要解釋器,轉(zhuǎn)換成字節(jié)碼,然后在JAVA虛擬機上運行,相比與C語言是不需要的虛擬機的,編譯成機器語言,直接在硬件上運行。

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

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

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

單片機使用C語言就不一樣了,C語言編譯后直接轉(zhuǎn)換成機器語言,直接對硬件進行控制,效率要高很多,而且很節(jié)省CPU和內(nèi)存空間。


對于C語言和JAVA語言的使用區(qū)別,大家有什么看法呢,歡迎在評論區(qū),留言討論。

如需更多幫助,請私信關(guān)注,謝謝。

網(wǎng)友解答:

這兩種語言的運行機制不一樣。

C語言是直接編譯成二進制格式的機器可運行代碼。比如在windows平臺上的exe文件,雙擊可直接運行。

而JAVA不同,JAVA是運行在各種版本的JAVA虛擬機之上的。JAVA虛擬機,可以理解為運行在各個平臺之上的可執(zhí)行文件,這個程序負責給windows等各個平臺翻譯編譯后的JAVA語言。

舉個例子,C語言就好比你精通各國語言,直接和老外交流,而JAVA則是帶個翻譯(JAVA虛擬機)來和系統(tǒng)交流的。執(zhí)行效率肯定是C語言更高一些了。

51單片機,機器運行資源相對比較緊湊,在上面跑個JAVA虛擬機的話開銷有些大。另外,JAVA官方也沒有提供51平臺的虛擬機。

另外,C可以直接操作內(nèi)存,可以調(diào)用匯編指令,操作起來更加靈活。而JAVA受虛擬機功能限制,可完成的工作就比較局限了。

從JAVA語言誕生之日起,JAVA就是為了大規(guī)模開發(fā)應(yīng)運而生的。C則擅長直接和硬件打交道。所以,從各方面看,JAVA都不適合開發(fā)單片機程序。

標簽: