當前位置:首頁 » 編程軟體 » 被編譯

被編譯

發布時間: 2022-01-12 05:26:06

① 請教個問題,很好奇代碼到底是怎麼被編譯

開關經過基本組合, 已經可以成為某些行為或是數學運算, 這些基礎的行為的組合成果, 就是我們所稱的CPU. 而因為都是以0/1(開/關), 來進行"行為"及"運算"之過程, 所以, 固定的運作行為, 是需要被設計出來的, 也就成了一般所稱的指令與資料.

CPU能夠看得懂(識別)的指令與資料, 是以0/1組合而成, 我們稱為機器語言.
為了讓人方便記憶與使用, 所以用很近似的方式, 發展了匯編語言. 此時匯編語言跟機器語言的差異不大, 很大部分是一比一替代.
之後為了能更有效應用, 語言開始進化, 產生了高階語言的概念. 此時, 高階語言語法, 代表的是一種概念, 需要編譯器, 翻譯出適當可完整實現此概念的機器語言, 讓CPU可以運作.

基本概念是這樣, 有興趣的話, 可以閱讀一些關於 computer architecture 的資訊.

② 源程序A被編譯成101010101000,可以倒翻譯過來嗎

比如源程序A被編譯成101010101000
=========================
個人覺得這個假設是不成立的,具體編譯成什麼應該是由每個編譯器的實現有關,每個編譯器對於代碼的優化都不一樣。
所以A不一定會編譯成101010101000,具體是什麼是由具體的編譯器決定的。這個不存在一一對應關系。
就個人目前理解,編譯實際是就是把你編的代碼變成CPU懂的方式(CPU就是一堆電路而已),並且要保證兩者在邏輯上的等價。
以上都是瞎說的,因為我還沒學編譯原理....

③ 「文件被編譯」換句話是什麼

在U盤上安裝個pe吧。 第一:將U盤做成啟動盤(建議老毛桃PE系統) 第二:下載最新系統,解壓後將裡面的X.gho文件復制到你的U盤里。 第三:用U盤啟動電腦進入PE系統,利用克隆工具還原U盤里的X.gho文件。

④ 編寫java代碼不能被編譯 這是怎麼回事

需要配置環境變數 參照http://jingyan..com/article/f96699bb8b38e0894e3c1bef.html

代碼也寫錯了 System.out.println(""); 不是逗號 String[]後面有空格

⑤ 變數名會被編譯嗎

對於變數名,會根據變數類型 開辟不同大小的內存空間 然後個相對地址記錄下來。 對於編譯後, 不存在變數名,只有對應的相對地址。

⑥ UNIX操作系統是怎麼被編譯的

unix下一般用gcc編譯c語言,g++編譯c++
編譯其實是四個過程:預處理、編譯、匯編、鏈接
由gcc這個程序執行。
gcc只是個程序,程序也就是一堆二進制碼構成的東西罷了!
寫個字元串變成二進制碼的程序不沖突呀!

⑦ 為什麼存在的java類沒有被編譯

是不是類編譯都沒通過?所以沒生成class文件。你檢查下那個類編寫的語法吧,是不是哪有問題?
如果編譯能通過 ,那麼通過eclipse的project-clean 清理下文件所在的工程

⑧ JAVA的源程序是怎樣被編譯和運行的

java
程序
編譯是根據「類庫」
也就是
jvm了
解釋編譯。
在用到的時候必須要有識別「解釋後的java程序的類庫
兩個過程
java原程序-----java.class
文件====
解釋執行
這兩個過程中都要用到
類庫

⑨ 編譯器是怎麼被編譯出來的

我們要在Y系統上做一個C語言的編譯器,假定:X與Y是不同的兩種計算機,其指令系統不兼容。考慮以下幾種情況:
Case 1: Y上沒有C語言編譯器,但X系統上有。
那麼我們可以先在X系統上開發一個針對Y系統的C語言交叉編譯器。然後用這個交叉編譯器重新編譯已有的這個C編譯器的源代碼,就可以得到能在Y系統上運行的C語言編譯器了。(交叉編譯器:在X系統上運行的編譯器,但編譯出來的目標代碼在Y系統上運行。嵌入式平台上的程序基本都是交叉編譯得到的,因為嵌入式平台上很少會有自己的編譯器)
Case 2: X,Y上都沒有C語言編譯器,但有另一種語言的編譯器。
a.我們可以先劃出C語言的一個子集,這個子集必須滿足兩個條件:首先,必須足夠簡單,簡單到可以用另一種語言來編寫接受這個子集的編譯器;其次,必須足夠強大,強大到用這個語言子集就可以編寫出接受C語言的編譯器。(你一定奇怪為什麼一個語言的子集就能寫出接收整個語言的編譯器,呵呵。我猜是因為一個語言的很多復雜特性都是由簡單特性構成的,就像一個struct結構完全可以用幾個定義在一起的簡單變數代替實現;而且,編譯器的實現往往不會用到這個語言的高級特性,需要用的都加到那個子集里就行。)
b.再用另一種語言編寫一個能接受這個C語言子集的編譯器,只要保證可以在Y系統上正確運行就行,並不對其效率作要求,因為基本上它只被用一次。
c.然後,用C語言的子集編寫一個在Y系統上的C語言編譯器,用上一步得到的編譯器編譯得到可用的Y系統上的C編譯器。

⑩ 請問c語言的源程序被編譯後的代碼是機器碼嗎

首先語言和被編譯成的代碼沒有直接關系。有把Java編譯成機器碼的編譯器也有把C語言編譯成Java位元組碼的編譯器。

機器碼只是CPU直接認讀的編碼,不等於和硬體打交道的。操作硬體是你通過程序操作CPU做到的。操作系統只不過是別人寫的程序而已,說到底還是程序。

熱點內容
筆記本什麼配置能流暢運行cf 發布:2024-09-20 00:14:19 瀏覽:951
實測華為編譯器 發布:2024-09-19 23:50:52 瀏覽:821
linux匯總 發布:2024-09-19 23:46:39 瀏覽:452
阿里雲伺服器環境搭建教程 發布:2024-09-19 23:21:58 瀏覽:837
黃色文件夾圖標 發布:2024-09-19 23:19:22 瀏覽:684
mysql資料庫導出導入 發布:2024-09-19 23:00:47 瀏覽:183
lua腳本精靈 發布:2024-09-19 23:00:41 瀏覽:659
任務欄文件夾圖標 發布:2024-09-19 22:54:25 瀏覽:101
解壓來一波 發布:2024-09-19 22:46:36 瀏覽:933
mysqlpythonubuntu 發布:2024-09-19 22:46:27 瀏覽:501