編譯語言有用嗎
A. 如果不發明一種新語言,那學編譯原理有什麼用
編譯原理是計算機科學與技術中一個非常成熟的分支,非常完美地將原理與技術結合了起來,對於理解計算機的本質非常有幫助
編譯原理的很多設計思想可以在你設計的程序中運用
比如你想寫個程序對於某個文本作詞法分析和語法分析的處理,那麼編譯原理的知識完全可以幫助你來完成它
又或者你也可能寫個能自動生成菜單或者界面的程序,你需要自定義一個非常簡單的腳本語言並解析它,編譯原理也可以幫助你做到這一點
總之,編譯原理應用的領域十分廣泛,不要以為學編譯原理就僅僅是用來做編譯器的
另外,編譯原理包含了很多巧妙的設計構思,作為一名CS的學生,當然是很有必要來學習它的
B. 什麼是c編譯器有什麼用,可以用它來寫c語言嗎
c編譯器就是把你寫的c語言程序轉換成機器能理解及執行的代碼
C. 任何語言都需要編譯嗎
可以說是;
有種情況就是特殊的,那就是機器語言,因為計算機唯一能識別的語言就是機器語言。但是現在不會有人「聰明」到用機器語言編程的吧,所以可以不用考慮這種情況。
所以可以說任何語言都需要編譯,轉化成機器語言後電腦才能識別。只有這樣編程才有實際意義,否則任何語言都不過就是一些單詞^_^
D. 編譯登記 有什麼用
編譯登記,作用是在後面編譯過程中可校對遺漏問題。
登記,把有關事項寫在特備的表冊上以備查考。
編譯程序(Compiler,compiling program)也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。
編譯(compilation , compile)
1、利用編譯程序從源語言編寫的源程序產生目標程序的過程。
2、用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。
編譯程序把一個源程序翻譯成目標程序的工作過程分為五個階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優化;目標代碼生成。主要是進行詞法分析和語法分析,又稱為源程序分析,分析過程中發現有語法錯誤,給出提示信息。
編譯語言是一種以編譯器來實現的編程語言。它不像直譯語言一樣,由解釋器將代碼一句一句運行,而是以編譯器,先將代碼編譯為機器碼,再加以運行。理論上,任何編程語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程序的應用有關。
E. 中國大學學編譯原理有什麼用,也沒有人開發新的編程語言【編譯器】簡直是浪費時間
編譯原理可以了解源程序是怎麼轉換成計算機二進制代碼的,對於編寫高性能程序會有幫助。另外,編譯原理所涉及的一些演算法和數據結構,詞法分析什麼的,在一些軟體開發中都會用的著。
F. 我設計的單片機C語言編譯器,大家看有用嗎
我現在認為沒有什麼用,每家單片機晶元的廠家都是提供
編譯器
和燒寫軟體,可以嘗試一下,基本上跟電腦的原理有些類似,C語言轉化成匯編在轉換成二進制
G. 編譯程序的作用是
編譯程序指將某一種程序設計語言寫的程序翻譯成等價的另一種語言的程序的程序, 稱之為編譯程序
編譯程序也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。編譯程序屬於採用生成性實現途徑實現的翻譯程序。
它以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出。編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。
編譯程序的實現演算法較為復雜,這是因為它所翻譯的語句與目標語言的指令不是一一對應關系,而是一多對應關系,同時也因為它要處理遞歸調用、動態存儲分配、多種數據類型,以及語句間的緊密依賴關系。
由於高級程序設計語言書寫的程序具有易讀、易移植和表達能力強等特點,編譯程序廣泛地用於翻譯規模較大、復雜性較高、且需要高效運行的高級語言書寫的源程序。
(7)編譯語言有用嗎擴展閱讀:
編譯流程分為了四個步驟:
1.預處理,生成預編譯文件(.文件)
2.編譯,生成匯編代碼(.s文件)
3.匯編,生成目標文件(.o文件)
4.鏈接,生成可執行文件
H. 解釋性語言和編譯型語言的區別與不同
編譯型語言寫的程序執行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件,以後要運行的話就不用重新翻譯了,直接使用編譯的結果就行了(exe文件),因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高.
計算機不能直接理解高級語言,只能直接理解機器語言,所以必須要把高級語言翻譯成機器語言,計算機才能執行高級語言編寫的程序.翻譯的方式有兩種,一個是編譯,一個是解釋.兩種方式只是翻譯的時間不同.編譯型語言寫的程序執行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件,以後要運行的話就不用重新翻譯了,直接使用編譯的結果就行了(exe文件),因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高,但也不能一概而論,部分解釋型語言的解釋器通過在運行時動態優化代碼,甚至能夠使解釋型語言的性能超過編譯型語言.解釋則不同,解釋性語言的程序不需要編譯,省了道工序,解釋性語言在運行程序的時候才翻譯,比如解釋性basic語言,專門有一個解釋器能夠直接執行basic程序,每個語句都是執行的時候才翻譯.這樣解釋性語言每執行一次就要翻譯一次,效率比較低.解釋是一句一句的翻譯.編譯型與解釋型,兩者各有利弊.前者由於程序執行速度快,同等條件下對系統要求較低,因此像開發操作系統、大型應用程序、資料庫系統等時都採用它,像C/C++、Pascal/Object Pascal(Delphi)等都是編譯語言,而一些網頁腳本、伺服器腳本及輔助開發介面這樣的對速度要求不高、對不同系統平台間的兼容性有一定要求的程序則通常使用解釋性語言,如Java、JavaScript、VBScript、Perl、Python、Ruby、MATLAB 等等.但隨著硬體的升級和設計思想的變革,編譯型和解釋型語言越來越籠統,主要體現在一些新興的高級語言上,而解釋型語言的自身特點也使得編譯器廠商願意花費更多成本來優化解釋器,解釋型語言性能超過編譯型語言也是必然的.
I. 編譯器有什麼用
簡單講,編譯器就是將「一種語言(通常為高級語言)」翻譯為「另一種語言(通常為低級語言)」的程序。一個現代編譯器的主要工作流程:源代碼 (source code) → 預處理器 (preprocessor) → 編譯器 (compiler) → 目標代碼 (object code) → 鏈接器(Linker) → 可執行程序 (executables)
高級計算機語言便於人編寫,閱讀交流,維護。機器語言是計算機能直接解讀、運行的。編譯器將匯編或高級計算機語言源程序(Source program)作為輸入,翻譯成目標語言(Target language)機器代碼的等價程序。源代碼一般為高級語言 (High-level language), 如Pascal、C、C++、Java、漢語編程等或匯編語言,而目標則是機器語言的目標代碼(Object code),有時也稱作機器代碼(Machine code)。
對於C#、VB等高級語言而言,此時編譯器完成的功能是把源碼(SourceCode)編譯成通用中間語言(MSIL/CIL)的位元組碼(ByteCode)。最後運行的時候通過通用語言運行庫的轉換,編程最終可以被CPU直接計算的機器碼(NativeCode)。
J. 編譯原理與匯編語言對計算機科學與技術專業哪個更有用
這就跟吃飯和喝水哪個更重要的問題一樣不好回答
匯編語言現在用的少了 不過在某些領域還是很有用