本文目錄一覽:
java的代碼是彙編語言嗎?
彙編是除了機器語言外的最底層的語言,java是面向對象的語言,是屬於最高級的語言之一了,與彙編語言差的太多。完全不是同一個東西,連相似的地方都幾乎沒有。
至於java的底層是用什麼實現的就不好說了,估計java 的底層應該也是使用的與彙編相似的語言寫的,那麼多複雜的類應該會有一種比較高效的機制來處理。
什麼是彙編語言?Java屬於哪一類?
Java屬於高級語言。
彙編語言是跟機器語言最接近的語言,用有意義的符號來替代難懂的機器指令的編程語言,基本上與機器指令 一 一對應的。不同的CPU其指令集不同,所以用彙編語言編寫的程序不能通用。學習彙編語言要懂得CPU結構等方面的硬體知識,而高級語言不需要,它是由編譯系統負責的。
如何將java語言轉變為彙編語言
流程:
Java詞法分析
最開始的時候,高級語言編寫的程序對編譯器來說只是一連串的單個字元組成的字元串。為了讓編譯器識別這一連串的字元串,需要逐個字元的讀取源程序,然後將其切分成有意義的單詞,這些被切分後的單詞在編譯器眼裡是以
標識,語義值對的形式存在。
為了從源程序字元串中依次找出單詞,編譯器需要具有掃描功能,通常這種掃描器可以用一組有限狀態機來實現。為了說明有限狀態機是怎麼一回事,下面給出一個實例。
下圖為一個識別數字的有限狀態機,數字由整數部分和可選的小數部分組成。因此,根據這個有限狀態機,250和3.14159都能被識別成一個有效的數字。
Java語法分析
完成了「詞法分析」後,接下來就是激動人心的「語法分析」階段。通過語法分析得到語法樹。
Java翻譯語法樹
首先,尋找最小表達式,接下來,將最小表達式與其周邊的表達式合併。最後,將所有的表達式有序的進行合併,得到最終的彙編語言描述。
至此,我們便將高級語言翻譯成了彙編語言。
彙編,C語言,java的區別,我是小白,請說的通俗易懂一點,謝謝。
彙編語言是一種符號語言,我們編寫的程序最終都會編譯成01代碼的形式,而彙編語言,你可以看成是把這些01代碼做了一個十分簡單的加工,他的每一條指令都可以用多為01組合去代替,因此是編譯效率最高的語言,而且程序員通過彙編語言直接操作的是計算機的內存和編譯器,是很底層的一門編程語言。
C語言和java語言都是高級語言,傳統意義的C語言是面向過程的編程語言,它的執行效率很高,大概只比彙編低20%,但是比彙編要簡單的多,通過很少的代碼量就能實現彙編語言的功能,他的精髓,也是內存操作。
而java語言是面向對象的編程語言,引入了類和對象的概念,這並不是語法和語言的革新,而是一種編程思想的革新。在此基礎上,java語言屏蔽了程序員對內存方面的操作,轉而由編譯器代替程序員進行內存的分配和回收,極大的降低了編程難度,這是java和C語言之間最大的區別。但是執行效率比C要低很多,而且系統很多資源C語言可以訪問,而java不能。
總結一下就是,彙編,C語言,java語言這三門語言後者比前者容易上手,開發更簡潔。但是前者比後者編譯效率高,而且訪問的許可權大。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/294018.html