當前位置:首頁 » 編程軟體 » 大編譯是什麼

大編譯是什麼

發布時間: 2023-05-17 11:19:50

① 什麼是編譯

編譯(compilation , compile) 1、利用編譯程序從源語言編寫的源程序產生目標程序的過程。 2、用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。 編譯程序把一個源程序翻譯成目標程序的工作過程分為五個階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優化;目標代碼生成。主要是進行詞法分析和語法分析,又稱為源程序分析,分析過程中發現有語法錯誤,給出提示信息。
編譯語言是一種以編譯器來實現的編程語言。它不像直譯語言一樣,由解釋器將代碼一句一句運行,而是以編譯器,先將代碼編譯為機器碼,再加以運行。理論上,任何編程語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程序的應用有關。

② 什麼叫做編譯

編譯是利用編譯程序從源語言編寫的源程序,產生目標程序的過程,用編譯程序產生目標程序的動作編譯就是把高級語言變成計算機可以識別的,二進制語言計算機只認識一和零編譯程序,把人們熟悉的語言換成二進制的編譯程序,把一個源程序翻譯成目標程序的工作,往往也要分成五個階段,講詞法的分析,語法的分析,包括語義檢查和中間代碼的生成,代碼的優化,目標代碼生成等等。

③ 小白求助,編譯是什麼,為什麼需要編譯

人與機器交流(即人讓計算機按照人的意願做事)依賴於語言
語言的層次是:自然語言->高級編程語言->匯編語言->機器碼
人最熟悉的肯定是自然語言(就是你平時說的話)。
而計算機的cpu只認識二進制的機器碼,機器碼指導計算機做什麼操作(如邏輯運算)。
高級編程語言跟自然語言的關系更近些,對人來說相當於自然語言的白痴版,如java中的對象與類的概念可能對應於現實世界的某種事物,如C語言中的函數可能對應了一個功能,比如列印文件,經過簡單的訓練,人也能大概的讀懂。
匯編語言和機器碼更接近些,每個匯編指令一般都會對應一條機器碼,而高級編程語言中的一個語句(如if else什麼的)可能會對應多條匯編指令,匯編指令一般就是算術運算(如add)、邏輯運算(如and)、數據傳送(如mov)、條件判斷、跳轉等,只能用這些簡單功能的匯編指令組合來完成一個復雜的功能。人看懂匯編就很吃力了,更別提用匯編來完成想要的功能,太吃力,這個過程還是交個編譯器比較好。
而機器碼對於一般的程序員來說,就是天書,也基本沒人願意去看。
自然語言最容易表述人們的要求,當用戶用自然語言表述了需要的功能後,從自然語言到高級語言的轉換過程由程序員來完成,而由高級編程語言到匯編、由匯編到機器碼的過程都由編譯器來完成,由編譯器完成的這個過程也就是編譯了。
高級編程語言的代碼經過編譯階段成為匯編代碼,匯編代碼經過匯編階段變成機器碼,機器碼文件經過鏈接階段變成可執行文件(.exe)。一般編譯是指的編譯階段和匯編階段的組合,編譯器的工作一般是編譯和鏈接。
這就是我的理解,希望你幫到你。

④ 編程完要編譯,編譯到底是什麼意思

編程就是編寫程序,也就是敲代碼
編輯應該也是寫代碼的意思吧
編譯一般都是在寫了一行代碼保存的時候,開發工具會編譯你寫的代碼是否有錯,然後會幫你生成一些其他文件

⑤ 編譯和解釋的區別是什麼

1.定義區別

①編譯原理旨在介紹編譯程序構造的一般原理和基本方法。內容包括語言和文法、詞法分析、語法分析、語法制導翻譯、中間代碼生成、存儲管理、代碼優化和目標代碼生成。

②匯編語言(assembly language)是一種用於電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。

2.處理方式區別

①編譯過程與解釋挺像,區別就在於編譯是將所有的源代碼指令一次性成翻目標代碼並執行。

②匯編過程就是把匯編指令一對一地翻譯成01機器碼的過程。而採用這種處理方式的語言只有一類:匯編語言。

3.特點區別

①編譯語言的特點就是不需要解釋器的參與,所以運行比較快,但是編譯好的程序只能在當前平台運行,是個局限性。

②匯編語言是當今世界上歷史最早,應用最廣,功能最強大,運行速度最快的編程語言。但是匯編語言開發工期長,可讀性差,並且不能跨平台編程。

⑥ 什麼是編譯程序

編譯程序(Compiler,compiling program),也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。編譯程序屬於採用生成性實現途徑實現的翻譯程序。

它以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出。編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。

編譯程序的特點

編譯程序必須分析源程序,然後綜合成目標程序。首先,檢查源程序的正確性,並把它分解成若干基本成分;其次,再根據這些基本成分建立相應等價的目標程序部分。為了完成這些工作,編譯程序要在分析階段建立一些表格,改造源程序為中間語言形式,以便在分析和綜合時易於引用和加工。

⑦ 編譯是什麼意思

你一定是指程序的編譯吧,如果是的話
編譯的意思就是把程序語言寫成機器可以運行的機器碼的過程。其中會用到編譯器。
編譯器是一種特殊的程序,它可以把以特定編程語言寫成的程序變為機器可以運行的機器碼。我們把一個程序寫好,這時我們利用的環境是文本編輯器。這時我程序把程序稱為源程序。在此以後程序員可以運行相應的編譯器,通過指定需要編譯的文件的名稱就可以把相應的源文件(通過一個復雜的過程)轉化為機器碼了。

⑧ 什麼是編譯原理

編譯原理是計算機專業的一門重要專業課,旨在介紹編譯程序構造的一般原理和基本方法。內容包括語言和文法、詞法分析、語法分析、語法制導翻譯、中間代碼生成、存儲管理、代碼優化和目標代碼生成。 編譯原理是計算機專業設置的一門重要的專業課程。雖然只有少數人從事編譯方面的工作,但是這門課在理論、技術、方法上都對學生提供了系統而有效的訓練,有利於提高軟體人員的素質和能力。
這門課程關注的是編譯器方面的產生原理和技術問題,似乎和計算機的基礎領域不沾邊,可是編譯原理卻一直作為大學本科的 必修課程,同時也成為了研究生入學考試的必考內容。編譯原理及技術從本質上來講就是一個演算法問題而已,當然由於這個問題十分復雜,其解決演算法也相對復雜。 我們學的數據結構與演算法分析也是講演算法的,不過講的基礎演算法,換句話說講的是演算法導論,而編譯原理這門課程講的就是比較專註解決一種的演算法了。在20世紀 50年代,編譯器的編寫一直被認為是十分困難的事情,第一Fortran的編譯器據說花了18年的時間才完成。在人們嘗試編寫編譯器的同時,誕生了許多跟 編譯相關的理論和技術,而這些理論和技術比一個實際的編譯器本身價值更大。就猶如數學家們在解決著名的哥德巴赫猜想一樣,雖然沒有最終解決問題,但是其間 誕生不少名著的相關數論。

⑨ 編譯程序是什麼意思編譯是什麼意思

編譯程序(Compiler,compiling program)也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。

解釋程序是一種語言處理程序,在詞法、語法和語義分析方面與編譯程序的工作原理基本相同,但在運行用戶程序時,它直接執行源程序或源程序的內部形式(中間代碼)。

(9)大編譯是什麼擴展閱讀:

結構:

編譯過程分為分析和綜合兩個部分,並進一步劃分為詞法分析、語法分析、語義分析、代碼優化、存儲分配和代碼生成等六個相繼的邏輯步驟。這六個步驟只表示編譯程序各部分之間的邏輯聯系,而不是時間關系。

編譯過程既可以按照這六個邏輯步驟順序地執行,也可以按照平行互鎖方式去執行。在確定編譯程序的具體結構時,常常分若干遍實現。對於源程序或中間語言程序,從頭到尾掃視一次並實現所規定的工作稱作一遍。每一遍可以完成一個或相連幾個邏輯步驟的工作。

可以把詞法分析作為第一遍;語法分析和語義分析作為第二遍;代碼優化和存儲分配作為第三遍;代碼生成作為第四遍。反之,為了適應較小的存儲空間或提高目標程序質量,也可以把一個邏輯步驟的工作分為幾遍去執行。

⑩ 編譯是什麼意思

問題一:編譯和解釋的區別是什麼? 後來為了方便記憶,就將用0、1序列表示的機器指令都用符號助記,這些與機器指令一一對應的助記符就成了匯編指令,從而誕生了匯編語言。無論是機器指令還是匯編指令都是面向機器的,統稱為低級語言。因為是針對特定機器的機器指令的助記符,所以匯編語言是無法獨立於機器(特定的CPU體系結構)的。但匯編語言也是要經過翻譯成機器指令才能執行的,所以也有將運行在一種機器上的匯編語言翻譯成運行在另一種機器上的機器指令的方法,那就是交叉匯編技術。高級語言是從人類的邏輯思維角度出發的計算機語言,抽象程度大大提高,需要經過編譯成特定機器上的目標代碼才能執行,一條高級語言逗遲的語句往往需要若干條機器指令來完成。高級語言獨立於機器的特性是靠編譯器為不同機器生成不同的目標代碼(或機器指令)來實現的。那具體的說,要將高級語言編譯到什麼程度呢,這又跟編譯的技術有關了,既可以編譯成直接可執行的目標代碼,也可以編譯成一種中間表示,然後拿到不同的機器和系統上去執行,這種情況通常又需要支撐環境,比如解釋器或虛擬機的支持,Java程序編譯成bytecode,再由不同平台上的虛擬機執行就是很好的例子。所以,說高級語言不依賴於機器,是指在不同的機器或平台上高級語言的程序本身不變,而通過編譯器編譯得到的目標代碼去適應不同的機器。從這個意義上來說,通過交叉匯編,一些匯消鍵編程序也可以獲得不同機器之間的可移植性,但這種途徑獲得的移植性遠遠不如高級語言來的方便和實用性大。二、編譯與解釋編譯是將源程序翻譯成可執行的目標代碼,翻譯與執行是分開的;而解釋是對源程序的翻譯與執行一次性完成,不生成可存儲的目標代碼。這只是表象,二者背後的最大區別是:對解釋執行而言,程序運行時的控制權在解釋器而不在用戶程序;對編譯執行而言,運行時的控制權在用戶程序。解釋具有良好的動態特性和可移植性,比如在解釋執行時可以動態改變變數的類型、對程序進行修改以及在程序中插入良好的調試診斷信息等,而將解釋器移植到不同的系統上,則程序不用改動就可以在移植了解釋器的系統上運行。同時解釋器山橋李也有很大的缺點,比如執行效率低,佔用空間大,因為不僅要給用戶程序分配空間,解釋器本身也佔用了寶貴的系統資源。編譯器是把源程序的每一條語句都編譯成機器語言,並保存成二進制文件,這樣運行時計算機可以直接以機器語言來運行此程序,速度很快;而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯後的程序運行的快的.1、編輯:用編輯軟體(EDIT.EXE或記事本)形成源程序(.ASM),如:LX.ASM; 2、匯編:用匯編程序(MASM.EXE)對源程序進行匯編,形成目標文件(.OBJ),格式如下:MASM LX.ASM; 3、連接:用連接程序(LINK.EXE)對目標程序進行連接,形成可執行文件(.EXE),格式如下:LINK LX.OBJ; 4、執行:如果結果在屏幕在顯示,則直接執行可執行文件。 5、調試:用調試程序(DEBUG.EXE)對可執行文件進行調試,格式如下:DEBUG LX.EXE1. 在具體計算機上實現一種語言,首先要確定的是表示該語言語義解釋的虛擬計算機,一個關鍵的問題是程序執行時的基本表示是實際計算機上的機器語言還是虛擬機的機器語言。這個問題決定了語言的實現。根據這個問題的回答,可以將程序設計語言劃分為兩大類:編譯型語言和解釋型語言。2. 由編譯型語言編寫的源程序需要經過編譯、匯編和鏈接才能輸出目標代碼,然後機器執行目標代碼,得出運行結果,目標代碼由機器指令組成,一般不能獨立運行,因為源程序中可能使用了某些......>>

問題二:函數的編譯是什麼意思??? 你說的這個問題,是把(不僅僅是數學上的函數式子)某個項目內容,進行編程。也就通過設計好了的運算程序,上百上千次進行與或非門運算。你想,電子,也就是通電斷電額事。寫成數字,就是010100001110000000111101111等等。
這需要專門的【編程員】大費腦筋的。有時候,需要好幾年。

問題三:編譯程序是什麼意思?編譯是什麼意思? 把用高級程序設計語言書寫的源程序,翻譯成等價的計算機匯編語言或機器語言書寫的目標程序的翻譯程序。編譯程序屬於採用生成性實現途徑實現的翻譯程序。它以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出。編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。編譯程序的實現演算法較為復雜。這是因為它所翻譯的語句與目標語言的指令不是一一對應關系,而是一多對應關系;同時也因為它要處理遞歸調用、動態存儲分配、多種數據類型,以及語句間的緊密依賴關系。但是,由於高級程序設計語言書寫的程序具有易讀、易移植和表達能力強等特點,編譯程序廣泛地用於翻譯規模較大、復雜性較高、且需要高效運行的高級語言書寫的源程序。

問題四:編譯時間是什麼意思? 在ROM發布的時候,會提供這個ROM的一些版本。
編譯時間能夠告訴用戶這個系統的發布時間。
有一些軟體會提供類似的編譯Revision。功能基本上相同。

問題五:編譯錯誤是什麼意思 編譯錯誤,一般指語法上的錯誤
運行錯誤,一般指程序上的bug

問題六:什麼是編譯原理 編譯:就是將程序語言進行翻譯,生成可供用戶直接執行的二進制代碼,即可執行文件。
任務是個比較模糊的概念,指的是操作系統中正在進行的工作,既可以指進程,也可以指程序。
程序指的是可以連續執行,並能夠完成一定任務的一條條指令的 *** 。
進程是程序在一個數據 *** 上運行的過程,它是傳統操作系統進行資源分配和調度的一個獨立單位。
線程是一個指令執行序列,是操作系統調度的最小單位。一個或多個線程構成進程,構成一個進激的線程之間共享資源。進程和線程之間的最大區別就是線程不能獨立擁有資源,進程擁有自己的資源。

問題七:編譯原理中V*是什麼意思 V是一個符號 *** ,假設V指的是三個符號a, b, c的 *** ,記為 V = {a, b, c }
V* 讀作「V的閉包」,它的數學定義是V自身的任意多次自身連接(乘法)運算的積,也是一個 *** 。
也就是說,用V中的任意符號進行意多次(包括0次)連接,得到的符號串,都是V*這個 *** 中的元素。
0次連接的結果是不含任何符號的空串,記為 ε
1次連接就是只有一個符號的符號串,比如,a,b, c
2次連接是兩個符號構成的符號串,比如,aa, ab, ac, ba, bb, bc,等等
……
n次連接是一個長度為n、由a、b、c三個符號構成的符號串,比如abaacbbac……
因此,V*包含一切由a,b,c三個符號連接而成的、任意長度的符號串(以及空串ε)

問題八:編譯和預編譯有什麼區別。 60分 預編譯又稱為預處理,是做些代碼文本的替換工作。
處理#開頭的指令,比如拷貝#include包含的文件代碼,#define宏定義的替換,條件編譯等
就是為編譯做的預備工作的階段
主要處理#開始的預編譯指令
編譯(pilation , pile) 1、利用編譯程序從源語言編寫的源程序產生目標程序的過程。 2、用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。

問題九:C語言中程序編譯的正確理解及其含義 預處理。首先程序會被送給預處理器了。預處理器執行以#開頭的命令(通常稱為指令)。預處理器有點類似於編輯器,它可以給程序添加內容,也可以對程序進行修改。

編譯。 修改後的程序現在可以進入編譯器了。編譯器會把程序編譯成機器指令(即目標代碼)。然而,這樣的程序是不可運行的。

鏈接。 在最後步驟中,鏈接器把編譯器產生的目標代碼和所需的其他附加代碼整合在一起,這樣才最終產生完全可執行的程序。這些附加代碼包括程序中用到的庫函數(如printf函數)

問題十:編譯和解釋的區別是什麼? 後來為了方便記憶,就將用0、1序列表示的機器指令都用符號助記,這些與機器指令一一對應的助記符就成了匯編指令,從而誕生了匯編語言。無論是機器指令還是匯編指令都是面向機器的,統稱為低級語言。因為是針對特定機器的機器指令的助記符,所以匯編語言是無法獨立於機器(特定的CPU體系結構)的。但匯編語言也是要經過翻譯成機器指令才能執行的,所以也有將運行在一種機器上的匯編語言翻譯成運行在另一種機器上的機器指令的方法,那就是交叉匯編技術。高級語言是從人類的邏輯思維角度出發的計算機語言,抽象程度大大提高,需要經過編譯成特定機器上的目標代碼才能執行,一條高級語言的語句往往需要若干條機器指令來完成。高級語言獨立於機器的特性是靠編譯器為不同機器生成不同的目標代碼(或機器指令)來實現的。那具體的說,要將高級語言編譯到什麼程度呢,這又跟編譯的技術有關了,既可以編譯成直接可執行的目標代碼,也可以編譯成一種中間表示,然後拿到不同的機器和系統上去執行,這種情況通常又需要支撐環境,比如解釋器或虛擬機的支持,Java程序編譯成bytecode,再由不同平台上的虛擬機執行就是很好的例子。所以,說高級語言不依賴於機器,是指在不同的機器或平台上高級語言的程序本身不變,而通過編譯器編譯得到的目標代碼去適應不同的機器。從這個意義上來說,通過交叉匯編,一些匯編程序也可以獲得不同機器之間的可移植性,但這種途徑獲得的移植性遠遠不如高級語言來的方便和實用性大。二、編譯與解釋編譯是將源程序翻譯成可執行的目標代碼,翻譯與執行是分開的;而解釋是對源程序的翻譯與執行一次性完成,不生成可存儲的目標代碼。這只是表象,二者背後的最大區別是:對解釋執行而言,程序運行時的控制權在解釋器而不在用戶程序;對編譯執行而言,運行時的控制權在用戶程序。解釋具有良好的動態特性和可移植性,比如在解釋執行時可以動態改變變數的類型、對程序進行修改以及在程序中插入良好的調試診斷信息等,而將解釋器移植到不同的系統上,則程序不用改動就可以在移植了解釋器的系統上運行。同時解釋器也有很大的缺點,比如執行效率低,佔用空間大,因為不僅要給用戶程序分配空間,解釋器本身也佔用了寶貴的系統資源。編譯器是把源程序的每一條語句都編譯成機器語言,並保存成二進制文件,這樣運行時計算機可以直接以機器語言來運行此程序,速度很快;而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯後的程序運行的快的.1、編輯:用編輯軟體(EDIT.EXE或記事本)形成源程序(.ASM),如:LX.ASM; 2、匯編:用匯編程序(MASM.EXE)對源程序進行匯編,形成目標文件(.OBJ),格式如下:MASM LX.ASM; 3、連接:用連接程序(LINK.EXE)對目標程序進行連接,形成可執行文件(.EXE),格式如下:LINK LX.OBJ; 4、執行:如果結果在屏幕在顯示,則直接執行可執行文件。 5、調試:用調試程序(DEBUG.EXE)對可執行文件進行調試,格式如下:DEBUG LX.EXE1. 在具體計算機上實現一種語言,首先要確定的是表示該語言語義解釋的虛擬計算機,一個關鍵的問題是程序執行時的基本表示是實際計算機上的機器語言還是虛擬機的機器語言。這個問題決定了語言的實現。根據這個問題的回答,可以將程序設計語言劃分為兩大類:編譯型語言和解釋型語言。2. 由編譯型語言編寫的源程序需要經過編譯、匯編和鏈接才能輸出目標代碼,然後機器執行目標代碼,得出運行結果,目標代碼由機器指令組成,一般不能獨立運行,因為源程序中可能使用了某些......>>

熱點內容
數據解鎖密碼有什麼用 發布:2025-07-15 03:35:27 瀏覽:195
騰訊公認的密碼是多少 發布:2025-07-15 03:34:44 瀏覽:625
代碼txt怎麼改腳本 發布:2025-07-15 03:30:20 瀏覽:288
聲道數增加存儲容量也相應 發布:2025-07-15 03:16:19 瀏覽:271
誇克緩存在哪裡 發布:2025-07-15 03:16:11 瀏覽:708
座機查通話記錄服務密碼是多少 發布:2025-07-15 03:14:46 瀏覽:342
大學gpa演算法 發布:2025-07-15 03:14:45 瀏覽:922
mx5是安卓哪個版本 發布:2025-07-15 03:05:07 瀏覽:59
linux文件夾剩餘空間 發布:2025-07-15 03:04:24 瀏覽:917
蘋果id密碼如何輸入 發布:2025-07-15 03:01:09 瀏覽:955