定義
無論是符號語言還是高級語言,都需要一種翻譯程式把它翻譯成機器語言。
翻譯符號語言的程式稱為符號彙編程式或彙編程式。對於彙編程式來說,輸入是符號語言程式,輸出是機器語言程式。翻譯工作此較簡單,其主要的工作是代真,即把符號代換成機器碼。
翻譯高級語言的程式稱為編譯程式。對編譯程式來說,輸入是高級語言程式,輸出是機器語言程式。對高級語言來說,它與機器語言不是一一對應的。編譯程式所產生的機器語言與高級語言是多一對應的,即每一條高級語言的語句,等價於多條機器指命。
無論對於彙編程式還是編譯程式,都有一個輸入程式和一個輸出程式。這個輸入程式就稱為源程式,做為輸入的語言就稱為源語言。對於彙編程式來說,源程式是符號語言程式;對於編譯程式來說,源程式是高級語言程式。
目標語言
翻譯程式的輸出稱目標程式。一般說,目標程式都是機器語言程式,輸出的語言就稱為目標語言。
目標語言是由源碼編譯或彙編所得的語言。它是自動編碼程式輸出的一種語言。在將信息從一種語言轉換成另一種語言時,原來的語言被稱為源語言,而輸出的語言則被稱為目標語言。通常,目標語言與機器語言可以是相同的,但當編碼程式是由一系列步驟才能完成時,則目標語言中的一個步驟可以是下一步的源語言。
自展技術
先用目標機的彙編語言或機器語言書寫源語言的一個子集的編譯程式,然後再用這個子集作為書寫語言,實現源語言的編譯程式。如果把這個過程根據情況分成若干步,像滾雪球一樣直到生成源語言的編譯程式為止。我們把這樣的實現方式稱之為編譯程式的自展技術。