shangjiao6.m為主程序;pcode.m為產(chǎn)生偽碼的子程序;bu.m為進(jìn)行補(bǔ)0的子程序(為了使得進(jìn)行FFT和IFFT的點(diǎn)數(shù)滿足2的N次方個(gè)) c_b.m為數(shù)據(jù)進(jìn)行串并轉(zhuǎn)換的子程序。
標(biāo)簽: shangjiao pcode 程序 IFFT
上傳時(shí)間: 2015-12-15
上傳用戶:GHF
PL/0語言是Pascal語言的一個(gè)子集,我們這里分析的PL/0的編譯程序包括了對PL/0語言源程序進(jìn)行分析處理、編譯生成類pcode代碼,并在虛擬機(jī)上解釋運(yùn)行生成的類pcode代碼的功能。 PL/0語言編譯程序采用以語法分析為核心、一遍掃描的編譯方法。詞法分析和代碼生成作為獨(dú)立的子程序供語法分析程序調(diào)用。語法分析的同時(shí),提供了出錯(cuò)報(bào)告和出錯(cuò)恢復(fù)的功能。在源程序沒有錯(cuò)誤編譯通過的情況下,調(diào)用類pcode解釋程序解釋執(zhí)行生成的類pcode代碼。以下源程序是以清華大學(xué)出版社《編譯原理》中的源代碼為基礎(chǔ)作了少量改動而成。 程序在Turbo Pascal 7.0上編譯運(yùn)行通過。
上傳時(shí)間: 2015-04-24
上傳用戶:SimonQQ
設(shè)計(jì)文檔基本內(nèi)容如下: 1) 整體框架 2) 詞法分析 Class CTokenizer Class CScaner C關(guān)鍵字表 標(biāo)識符詞法 3) 語法分析 Class CParser Grammar 基本樹形結(jié)構(gòu) 支持的語句及運(yùn)算 4) 建立符號表 Class LineListRec Class BucketListRec Class CSymbolTable Class CFunArgsCheck 5) 類型檢測 Class CAnalyzer 類型匹配 函數(shù)調(diào)用參數(shù)檢測 6) 代碼生成 pcode 80X86 ASM 7) 總結(jié) 詳細(xì)內(nèi)容請閱讀本文提供的設(shè)計(jì)文檔與全部源代碼。
標(biāo)簽: Class CTokenizer CScaner 分
上傳時(shí)間: 2014-01-11
上傳用戶:qiaoyue
在本編譯程序中,源語言為PL/0語言,目標(biāo)語言為假想棧式計(jì)算機(jī)的匯編語言.PL/0語言是Pascal語言的一個(gè)子集,PL/0的編譯程序包括了對PL/0語言源程序進(jìn)行分析處理、編譯生成類pcode代碼,并在虛擬機(jī)上解釋運(yùn)行生成的類pcode代碼的功能。 PL/0語言編譯程序采用以語法分析為核心、一遍掃描的編譯方法。詞法分析和代碼生成作為獨(dú)立的子程序供語法分析程序調(diào)用。語法分析的同時(shí),提供了出錯(cuò)報(bào)告功能。在源程序沒有錯(cuò)誤編譯通過的情況下,調(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
上傳時(shí)間: 2015-06-22
上傳用戶:hanli8870
1. PL/0 語言介紹 ●PL/0 程序設(shè)計(jì)語言是一個(gè)較簡單的語言,它以賦值語句為基礎(chǔ),構(gòu)造概念有順序、條件和重復(fù)(循環(huán))三種。PL/0 有子程序概念,包括過程定義(可以嵌套)與調(diào)用且有局部變量說明。PL/0語言編譯程序采用以語法分析為核心、一遍掃描的編譯方法。詞法分析和代碼生成作為獨(dú)立的子程序供語法分析程序調(diào)用。語法分析的同時(shí),提供了出錯(cuò)報(bào)告和出錯(cuò)恢復(fù)的功能。在源程序沒有錯(cuò)誤編譯通過的情況下,調(diào)用類pcode解釋程序解釋執(zhí)行生成的類pcode代碼。 ●保留字(關(guān)鍵字):所謂保留字是指在Pascal語言中具有特定的含義。標(biāo)準(zhǔn)Pascal語言中的保留字一共有35個(gè),Turbo Pascal語言一共有51個(gè)。下面是Pascal語言的保留字:AND,ARRAY,BEGIN,CASE,CONST,DIV,DO,DOWNTO,ELSE,END,F(xiàn)ILE,F(xiàn)OR,F(xiàn)UNTION,GOTO,IF,IN,LABEL,MOD,NIL,NOT,OF,OR,PACKED,PROCEDURE,PROGRAM,RECORD,REPEAT,SET,THEN,TO,TYPE,UNTIL,VAR,WHILE,WITH,EXPORTS,SHR,STRING,ASM,OBJECT,UNIT,CONSTRUCTOR,IMPLEMENTATION,DESTRUCTOR,USES,INHERITED,INLINE,INTERFACE,LIBRARY,XOR,SHL
標(biāo)簽: PL 語言 程序設(shè)計(jì)語言
上傳時(shí)間: 2015-07-17
上傳用戶:zm7516678
《PL/0的編譯器》:PL/0語言是Pascal語言的一個(gè)子集,《PL/0的編譯器》實(shí)現(xiàn)了把客戶用PL/0語言編寫的程序編譯成類pcode代碼,并能虛擬機(jī)上解釋運(yùn)行生成的類pcode代碼的功能。《PL/0的編譯器》采用以語法分析為核心、一遍掃描的編譯方法。詞法分析和代碼生成作為獨(dú)立的子程序供語法分析程序調(diào)用。語法分析的同時(shí),提供了出錯(cuò)報(bào)告和出錯(cuò)恢復(fù)的功能。
上傳時(shí)間: 2013-12-19
上傳用戶:busterman
C語言寫的PL0文法編譯器,編譯得到虛擬機(jī)代碼(pcode)并解釋執(zhí)行。
上傳時(shí)間: 2016-03-24
上傳用戶:lixinxiang
本程序是簡單的c編譯器源碼,可以直接生成pcode,然后跑在虛擬機(jī)中
上傳時(shí)間: 2013-12-15
上傳用戶:思琦琦
PL0編譯器 PL/0編譯器的源語言是PL/0語言,目標(biāo)語言類pcode代碼,用C語言編寫而實(shí)現(xiàn)的。PL/0語言功能簡單、結(jié)構(gòu)清晰、可讀性強(qiáng)、具有一般高級語言的特點(diǎn)。PL/0語言語句類型豐富,適應(yīng)各種程序結(jié)構(gòu),賦值語句為其基礎(chǔ)。 本PL/0編譯器是在Visual C++6.0軟件環(huán)境下,用C語言實(shí)現(xiàn),在Window XP平臺下運(yùn)行通過的。
上傳時(shí)間: 2016-08-25
上傳用戶:小草123
C0文法編譯器,實(shí)現(xiàn)語言是cpp,生成pcode目標(biāo)碼。
標(biāo)簽: 編譯器
上傳時(shí)間: 2017-04-07
上傳用戶:亞亞娟娟123
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1