在本編譯程序中,源語言為PL/0語言,目標(biāo)語言為假想棧式計算機(jī)的匯編語言.PL/0語言是Pascal語言的一個子集,PL/0的編譯程序包括了對PL/0語言源程序進(jìn)行分析處理、編譯生成類PCODE代碼,并在虛擬機(jī)上解釋運(yùn)行生成的類PCODE代碼的功能。
PL/0語言編譯程序采用以語法分析為核心、一遍掃描的編譯方法。詞法分析和代碼生成作為獨(dú)立的子程序供語法分析程序調(diào)用。語法分析的同時,提供了出錯報告功能。在源程序沒有錯誤編譯通過的情況下,調(diào)用類PCODE解釋程序解釋執(zhí)行生成的類PCODE代碼。
該軟件為PL/0語言編譯程序,所實(shí)現(xiàn)的擴(kuò)充功能如下:
1.增加單詞:保留字 ELSE,F(xiàn)OR,TO, DOWNTO
2.增加運(yùn)算 +=,-=,++,--
3.不等號# 改為 <>
4.增加條件語句的ELSE子句
5.擴(kuò)充語句:
①FOR <變量>:=<表達(dá)式> TO <表達(dá)式> DO <語句>
②FOR <變量>:=<表達(dá)式> DOWNTO<表達(dá)式> DO <語句>
其中,語句①的循環(huán)變量的步長為1,
語句②的循環(huán)變量的步長為-1。
概述
源文件: *.plo
目標(biāo)文件: *.COD
實(shí)現(xiàn)平臺:C++ Builder6.0
標(biāo)簽:
Pascal
語言
PL
編譯
上傳時間:
2015-06-22
上傳用戶:hanli8870