當前位置:首頁 » 編程語言 » java磁碟

java磁碟

發布時間: 2024-01-10 03:10:47

① 求問大神 既然硬碟上儲存程序代碼已經是二進制的,為什麼不能直接執行,還需要再編譯一下呢

我的理解是:計算機能夠執行的是機器指令。程序本身雖然是以二進制文件的形式存儲在磁碟中,但是這里存儲的只是程序中字面量轉換成二進制的形式存儲。所以需要通過程序對應的編譯器將其編譯成對應的機器指令文件。而執行就是執行機器指令文件了。
#就拿java語言來說:
源文件是以**.java的文件形式存儲在磁碟中的。但是這樣的文件相當於只是將其中的文本轉換成了二進制。計算機根本不知道該如何執行。
通過Java的編譯器將其轉換成**.class文件後,class文件雖然也是二進制存儲,但是有自己的結構:魔數,副版本號,主版本號,常量池計數器,常量池,訪問標志位,類索引,父類索引等等。但是這個東西計算機不能直接執行的,需要通過Java虛擬機去執行。而Java虛擬機相當於是模擬計算機,也有個程序計數器啥的。我個人認為應該是將.class文件中的位元組碼通過jvm中的執行引擎轉換成對應的虛擬機指令。然後才能執行。而在真正執行的時候虛擬機中對應的虛擬機指令也是要轉換成對應的機器指令才能執行

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:577
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:870
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:566
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:749
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:668
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:993
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:239
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:98
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:790
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:696