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

正文內(nèi)容

編譯原理報(bào)告(9)-展示頁

2025-04-01 12:06本頁面
  

【正文】 ~WordAnaly()。\039。} WORD_ANALY_RESULT。 int sum。我的源程序如下::ifndef COMPILE_COMMON_H_INCLUDEDdefine COMPILE_COMMON_H_INCLUDED//詞法分析返回的結(jié)果鏈表節(jié)點(diǎn)結(jié)構(gòu)typedef struct WORD_ANALY_RESULT_{ int syn。同時(shí),我的程序還可以檢測(cè)數(shù)字輸入錯(cuò)誤。同時(shí),我的詞法分析程序?qū)⑻幚淼慕Y(jié)果放在一個(gè)鏈表中,并且在程序結(jié)束后返回鏈條頭。掃描子程序主要部分流程如圖 12所示。(2) 程序中需要用到的主變量為syn,token和sum。關(guān)鍵字表為一個(gè)字符串?dāng)?shù)組,其描述如下。關(guān)鍵字作為特殊標(biāo)識(shí)符處理,把他們預(yù)先安排在一張表格中(成為關(guān)鍵字表),當(dāng)掃描程序識(shí)別出標(biāo)識(shí)符時(shí),查關(guān)鍵字表。1. 主程序示意圖主程序示意圖如圖 11所示。 end 的源文件,經(jīng)詞法分析后輸出如下序列:(1,begin)(10,’x’)(18,:=)(11,9)(26,。例如:對(duì)源程序begin x:=9。2614(27*15)28/1603. 詞法分析程序的功能輸入:所給文法的源程序字符串。2. 各種單詞符號(hào)對(duì)應(yīng)的種別碼。(2) 運(yùn)算符和界符::= + * / = = = ; ( ) (3) 其他單詞是標(biāo)識(shí)符(ID)和整形常數(shù)(NUM),通過以下正規(guī)式定義:ID = letter(letter | digit)*NUM = digit digit*(4) 空格由空白、制表符和換行符組成。課 程 設(shè) 計(jì) 報(bào) 告課程名稱: 編譯原理 專業(yè)班級(jí): 信息安全 1302 班 學(xué) 號(hào): 姓 名: 指導(dǎo)教師: 報(bào)告日期: 2015年11月8日 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院目錄1 實(shí)驗(yàn)一 詞法分析 1 實(shí)驗(yàn)?zāi)康?1 實(shí)驗(yàn)要求 1 實(shí)驗(yàn)原理 1 算法實(shí)現(xiàn) 1 測(cè)試結(jié)果 12 實(shí)驗(yàn)二 語法分析 1 實(shí)驗(yàn)?zāi)康?1 實(shí)驗(yàn)要求 1 實(shí)驗(yàn)原理 1 算法實(shí)現(xiàn) 13 總結(jié)與體會(huì) 1I1 實(shí)驗(yàn)一 詞法分析 實(shí)驗(yàn)?zāi)康脑O(shè)計(jì)、編制并調(diào)試一個(gè)詞法分析程序,加深對(duì)詞法分析原理的理解。 實(shí)驗(yàn)要求1. 待分析的簡(jiǎn)單語言的詞法(1) 關(guān)鍵字begin if then while do end所有的關(guān)鍵字都是小寫。空格一般用來分隔ID、NUM、運(yùn)算符、界符和關(guān)鍵字,詞法分析階段通常被忽略。單詞符號(hào)種別碼單詞符號(hào)種別碼begin1:17if2:=18then320while421do5=22end623letter (letter | digit)*10=24digit digit*11=25+13。輸出:二元組(syn, token 或 sum)構(gòu)成的序列其中:syn為單詞種別碼;token為存放的單詞自身字符串;sum為整形常數(shù)。 if x0 then x:= 2 * x + 1 / 3 。)(2,if)… 實(shí)驗(yàn)原理算法的基本任務(wù)是從字符串表示的源程序中識(shí)別出具有獨(dú)立意義的單詞符號(hào),其基本思想是根據(jù)掃描到單詞符號(hào)的第一個(gè)字符的種類,拼出相應(yīng)的單詞符號(hào)。其中初值包括如下兩個(gè)方面:(1) 關(guān)鍵字表的初值。如能查到匹配的單詞,則該單詞為關(guān)鍵字,否則為一般標(biāo)識(shí)符。 char * rwtab[6] = {“begin”,”if”,”then”,”while”,”do”,”end”}。2. 掃描子程序的算法思想首先設(shè)置三個(gè)變量:token用來存放構(gòu)成單詞符號(hào)的字符串;sum用來存放整形單詞;syn用來存放單詞符號(hào)的種別碼。圖 11 此法分析主程序示意圖圖 12 詞法分析程序流程 算法實(shí)現(xiàn)在我的程序使用C++語言編制,在其中我使用了類這個(gè)工具來封裝整個(gè)詞法分析代碼,并且把所有的全局變量都封裝到類或者類的功能函數(shù)中,這樣可以使得程序代碼更加有序,簡(jiǎn)化后續(xù)的調(diào)試和改進(jìn)工作。這樣設(shè)計(jì)可以減少后續(xù)語法分析程序的編寫難度。如果輸入了非法的數(shù)字,程序就會(huì)提示錯(cuò)誤。 char * word。 struct WORD_ANALY_RESULT_ * next, * prev。endif // COMPILE_COMMON_H_INCLUDED:ifndef WORD_ANALY_H_INCLUDEDdefine WORD_ANALY_H_INCLUDEDinclude//輸入一個(gè)以39。結(jié)尾的源程序字符緩沖區(qū)//輸出它的詞法分析結(jié)果,就是一個(gè)二元組鏈表class WordAnaly{public: WordAnaly()=default。 //詞法分析功能函數(shù) WORD_ANALY_RESULT * scanner( char * source_buffer )。 //可以直接接在數(shù)字之后的符號(hào) char after_num[15] = { 39。 ,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,’)’ }。 //為鏈表節(jié)點(diǎn)分配空間 WORD_ANALY_RESULT * AllocMem()。 //檢查字符是否是數(shù)字 inline int is_number( char ch )。 //檢查字符串是否是空格 inline int is_space( char ch )。endif // WORD_ANALY_H_INCLUDED:includeincludeincludeincludeWORD_ANALY_RESULT * WordAnaly::scanner( char * source_buffer){ //字符 char token[33]。 //當(dāng)前token字符串的位置 int token_pointer = 0。 //返回的結(jié)果鏈表頭及其臨時(shí)指針 WORD_ANALY_RESULT * pWAR_head, * pWAR_p, * pWAR_q, * pWAR_r。 pWAR_p = pWAR_head。 temp_ch = source_buffer[source_buffer_pointer++]。 if( thisis_l
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1