編譯器是將匯編或高級計算機(jī)語言翻譯為二進(jìn)制機(jī)器語言代碼的計算機(jī)程序。編譯器將源程序(source language) 編寫的程序作為輸入,翻譯產(chǎn)生目標(biāo)語言(target language )機(jī)器代碼的等價程序。通常地,源程序為高級語言(high-level language ),像C或C + +、漢語語言程序等,而目標(biāo)則是機(jī)器語言的目標(biāo)代碼 (object code,有時也稱作機(jī)器代碼(machine code )),也就是可以在計算機(jī)硬件中運(yùn)行的機(jī)器代碼軟件程序。這一過程可以表示為:
源程序→編譯器 →目標(biāo)機(jī)器代碼程序
編譯原理和技術(shù)介紹了計算機(jī)高級語言編譯程序的基本原理和技術(shù),主要內(nèi)容包括詞法分析、語法分析、語法制導(dǎo)翻譯的語義分析與中間代碼生成、符號表與運(yùn)行時存儲空間的組織、代碼優(yōu)化以及目標(biāo)代碼的生成。