freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

編譯原理課程設(shè)計-for語句的翻譯程序設(shè)計簡單優(yōu)先法、輸出三地址碼-文庫吧資料

2025-06-12 12:19本頁面
  

【正文】 achine { } bool Scanner() { } private: stackToken, vectorToken TokenStack。 class SyntaxScanner { public: SyntaxScanner()。 //如果是狀態(tài)保存格子里的內(nèi)容 string action。 }。 //Token structure struct Token { //單詞種別 int num。 //定義圖,字符串與數(shù)字下表對應(yīng) map string, int map_。學(xué)習(xí)是個不斷提升自我的過程。這次課內(nèi)實踐終于順利完成了,在設(shè)計中遇到了很多問題,最后終于游逆而解。在課內(nèi)過程中,我不斷發(fā)現(xiàn)錯誤,不斷改正,不斷領(lǐng)悟,不斷獲取。但是程序中存在著很大的不足:程序可擴展性差。因此本系統(tǒng)的一大特點是不易擴展和變更。語法分析和語義分析也應(yīng)改為自動生成簡單優(yōu)先文法生成器。 在完成這些功能的基礎(chǔ)上,我認(rèn)為此系統(tǒng)仍然不能算一個合格的產(chǎn)品,還有很多需要改進之處。 return 0。 ()。 //詞法分析完成后會將 Token 序列輸出到中間文件 //語法分析 SyntaxScanner()。 } } 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 11 主控模塊 int main() { (d:\\, ios::out)。 } //(tokens[i].lexeme)。 endl。 cout begin S1。 cout OVER: if iE3 THEN endl。 cout AGAIN:i=i+E2 endl。 cout goto OVER endl。 } else { if (!strcmp((), ())) { (F1)。 } if (priorityTable[map_[()]][map_[top]] == 2) { //error cout error2 endl。 ()。 while (priorityTable[map_[()]][map_[top]]==0) { top = ()。 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 10 tempStr = () + tempStr。 string tempStr = 。 system(pause)。amp。 i++。 while (strcmp(,tokens[i].())!=0) { while (priorityTable[map_[()]][map_[tokens[i].()]]1) { (tokens[i].lexeme)。 } cout endl。j 15。i 15。 priorityTable[map_[S]][map_[]] = 1。 priorityTable[map_[E2]][map_[until]] = 1。 priorityTable[map_[]][map_[for]] = 1。 priorityTable[map_[]][map_[F2]] = 1。 priorityTable[map_[]][map_[S]] = 1。 priorityTable[map_[do]][map_[F1]] = 1。 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 9 priorityTable[map_[do]][map_[F3]] = 1。 priorityTable[map_[F3]][map_[do]] = 0。 priorityTable[map_[F2]][map_[until]] = 0。 priorityTable[map_[F1]][map_[step]] = 0。 priorityTable[map_[i]][map_[=]] = 0。 (mapstring, int::value_type(, 14))。 //(mapstring, int::value_type(, 13))。 (mapstring, int::value_type(E2, 11))。 (mapstring, int::value_type(=, 9))。 (mapstring, int::value_type(do, 7))。 (mapstring, int::value_type(step, 5))。 (mapstring, int::value_type(F3, 3))。 (mapstring, int::value_type(F1, 1))。 } } ()。j 15。i 15。 stackstring tokenStack。 string product3 = F2untilE3。 string product1 = fori=E1。i++) { cout tokens[i].lexeme 。 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 8 for (int i = 0。 = 100。 } 語法、語義分析模塊 void Semantic() { Token t1。)。 } //掃描 } while (ch != 39。 //空格略過 else { fseek(fp, 1, 1)。 39。) break。 if (ch == 39。 //格式化輸出到流 //錯誤打印到屏幕上 exit(1)。fp, d:\\, rb)。 char ch。詞法分析模塊為語法分析模塊以及語義分析模塊提供單詞序列。 }。 產(chǎn)生式結(jié)構(gòu): struct Term { //1為狀態(tài), 2 為產(chǎn)生式 int kind。 //詞素(單詞的值) string lexeme。 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 6 對于本程序的具體三地址碼輸出,預(yù)計顯示結(jié)果如下: 給定輸入程序 for i=0 step 1 until 10 do {j=b+c。 重復(fù)( 1)( 2)( 3),直到歸約完輸入符號串,數(shù)組中只剩文法的開始符號為止。 ( 3)數(shù)組當(dāng)前符號 ai為句柄尾,由此向左在數(shù)組中找句柄的頭符號 ak,即找到 ak1ak為止。 三種優(yōu)先關(guān)系及其判定方法如下所示: ( 1) X=Y 表示 X 和 Y 的優(yōu)先關(guān)系相等,當(dāng)且僅當(dāng) G中存在產(chǎn)生式規(guī)則 A→? XY?; ( 2) XY表示 X的優(yōu)先性比 Y的優(yōu)先性小,當(dāng)且僅當(dāng) G 中存在產(chǎn)生式規(guī)則 A→? XB?,且 B Y?; ( 3) XY 表示 X的優(yōu)先性比 Y的優(yōu)先性大,當(dāng)且僅當(dāng) G 中存在產(chǎn)生式規(guī)則 A→? BD?,且 B ? X 和 D Y?; 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 4 ( 4)對任何 X,若文法開始符號 S→ X?,則 X,若 S→? X則 X。 簡單優(yōu)先分析法的基本思想史對一個文法按照一定原則求出該文法所有符號即包括終結(jié)符和非終結(jié)符之間的優(yōu)先關(guān)系確定歸約過程中的句柄,它的歸約實際上是一種規(guī)范歸約。 )/*goto AGAIN*/ backpatch(,)。)/*轉(zhuǎn)離循環(huán) */} S F3 do Stmt {emit (39。 emit(39。 q+2)。 , 39。 , 39。 emit(39。} F3 F2 until E3 { = 。 )。 39。 emit( 39。/*保存 AGAIN 的地址 */} F2 F1 step E2 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 3 { = 。)。 emit(39。 = entry(i)。 = 39。設(shè)計好并且進行編譯, 設(shè)計若干輸入輸出用例(包括正確的輸入和錯誤的輸入,用來檢查程序的完整性)。 學(xué) 號: 0121410870922 課 程 設(shè) 計 課 程 編譯原理 題 目 For語句的翻譯程序設(shè)計(簡單優(yōu)先法、輸出三地址碼) 學(xué) 院 計算機科學(xué)與技術(shù) 學(xué)院 專 業(yè) 計算機科學(xué)與技術(shù) 班 級 計算機 1404 姓 名 王承禹 指導(dǎo)教師 林泓 2021 年 12 月 27 日 武漢理工大學(xué)《 編譯原理 》 課內(nèi)實踐 說明書 1 目錄 1 系統(tǒng)描述 ........................................................................................................................................ 2 .............................................................................................................................. 2 ........................................
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1