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

正文內(nèi)容

c語(yǔ)言編譯器前端的設(shè)計(jì)與實(shí)現(xiàn)課程設(shè)計(jì)-wenkub.com

2025-06-01 22:17 本頁(yè)面
   

【正文】 if(sym!=period) getchdo。) { sys=geq。39。) { sym=leq。39。) { sym=bees。:39。)。amp。 k++。 num=0。amp。 else sym=ident。 if(strcmp(id,work[k])=0) j=k1。 strcpy(id,a)。ch=39。||ch=39。amp。 k++。ch=39。 if(ch=39。 } 18 附錄二 :語(yǔ)法分析核心代碼 int getsym() { int i,j,k。 fprintf(fal,\n)。 fprintf(fal,%c,ch)。 while(ch != 10) { if(EOF == fscanf(fin,%c,amp。 printf(%d,cx)。 [8] 李冬梅,施海虎 . 編譯原理 [M]. 人民郵電出版社, [9] 孫悅紅 . 編譯原理及實(shí)現(xiàn) [M]. 清華大學(xué)出版社 . [10]木林森 ,高峰霞 . Visual C++ 使用與開(kāi)發(fā) [M]. 清華大學(xué)出版社 , 17 附錄一:詞法分析核心代碼 int getch() { if(cc == ll) { if(feof(fin)) { printf(program incoplete)。 [4] 楊克玉 . [M].北京:機(jī)械工業(yè)出版社出版, 。由于時(shí)間緊,開(kāi)發(fā)任務(wù)重,系統(tǒng)有些功能尚未健全。一個(gè)好的系統(tǒng)分析、設(shè)計(jì)工作,會(huì)使以后的系統(tǒng)實(shí)施順利高效的進(jìn)行,從而達(dá)到事半功倍的效果,這也是我的一點(diǎn)心得體會(huì)吧。 類(lèi)型檢測(cè): Class CAnalyzer: 包括兩個(gè)部分: 類(lèi)型匹配 : 函數(shù)或變量聲明時(shí)檢測(cè)是否已聲明,如已聲明則拋出錯(cuò)誤;函數(shù)調(diào)用或變量使用時(shí)檢測(cè)是否已聲明,如未聲明則拋出錯(cuò)誤。 記錄每一個(gè)變量或函數(shù)名的具體情況。 int memloc。 建立符號(hào)表: 輔助類(lèi): Class LineListRec: 主要成員是 lineno,記錄某個(gè) Token(變量或函數(shù)名)聲明或使用時(shí)的行數(shù)。語(yǔ)法分析能夠發(fā)現(xiàn)程序語(yǔ)句中的各種語(yǔ)法錯(cuò)誤,如括號(hào)不匹配等。 語(yǔ)義分析程序是在詞法分析和語(yǔ)義分析之后,可以由語(yǔ)法分析程序直接調(diào)用相應(yīng)的語(yǔ)義子程序進(jìn)行語(yǔ)義處理,也可以先生成語(yǔ)法樹(shù)的某種表示方法,再進(jìn)行語(yǔ)義處理。 語(yǔ)義檢查。 ||, ! if 語(yǔ)句 表 達(dá)式 語(yǔ)句 語(yǔ)句 while 語(yǔ)句 表達(dá)式 語(yǔ)句 表達(dá)式 語(yǔ)句 表達(dá)式 for 語(yǔ)句 表達(dá)式 語(yǔ)句 復(fù)合語(yǔ)句 語(yǔ)句 語(yǔ)句 聲明 14 6) 支持函數(shù)的定義、調(diào)用 7) 支持復(fù)合語(yǔ)句 8) 注釋語(yǔ)句: C類(lèi)型的 /* */ 和 C++類(lèi)型的 // 語(yǔ)義分析模塊設(shè)計(jì) 語(yǔ)義分析的任務(wù)是根據(jù)語(yǔ)義規(guī)則對(duì)識(shí)別出的各種語(yǔ)法成分分析其含義,進(jìn)行初步翻譯。` return_stmt`return` `。` expression `。` expressionvar `=` expression | logic1_expression logic1_expressionlogic1_expression `||` logic2_expression | logic2_expression logic2_expression logic2_expression `amp。` `write` `(` expression `)` `。 通過(guò)文法及相應(yīng)規(guī)則建立語(yǔ)法樹(shù)。 CString szScope。 ExpKind exp。 // point to father node CTreeNode* sibling。其分析結(jié)果是識(shí)別 出無(wú)語(yǔ)法錯(cuò)誤的語(yǔ)法成分。一個(gè)字符串形式的源程序經(jīng)過(guò)詞法分析,即被轉(zhuǎn)換為一串單詞符號(hào)。amp。 define TT_CHAR 39。這部分程序主要包括兩個(gè)類(lèi): 包括兩個(gè)類(lèi): 輸入文件 開(kāi)始 詞法分析 語(yǔ)法分析 建立符號(hào)表 類(lèi)型檢查 輸出信息 語(yǔ)法樹(shù) 符號(hào)表 9 Class CTokenizer: 從一個(gè)字符串中(這個(gè)把一個(gè)文件看作是一個(gè)字符串, MFC 中 CFileCString)分離出一個(gè)一個(gè) token,配上簡(jiǎn)單的類(lèi)型通過(guò) NextToken()返回: define TT_EOL 39。 3) 過(guò)濾掉源程序中的注釋 。詞法分析器所 處理的對(duì)象即詞法分析程序的輸入數(shù)據(jù) ,實(shí)際上是源程序經(jīng)過(guò)編譯預(yù)處理 ,去掉多余的符號(hào)后而形成的代碼 ,這樣給詞法分析帶來(lái)方便。如果編譯器可以保證它接受的程序在運(yùn)行時(shí)刻不會(huì)發(fā)生類(lèi)型錯(cuò)誤,那么該語(yǔ)言的這個(gè)實(shí)現(xiàn)就被稱(chēng)為強(qiáng)類(lèi)型的。這些規(guī)則被稱(chēng)為源語(yǔ)言的類(lèi)型系統(tǒng)。對(duì)于詞法分析程序來(lái)說(shuō),只要求它 凡碰到標(biāo)識(shí)符就直接送出此標(biāo)識(shí)符自身即可。但在某些語(yǔ)言中,甚至在同一過(guò)程段里允許用同一標(biāo)識(shí)符標(biāo)識(shí)各種不同對(duì)象。 對(duì)于變量名、數(shù)組名和過(guò)程名而言,它們的信息欄中一般要求有下列信息: 變量 類(lèi)型(整、實(shí)、雙實(shí)、布爾、字符、復(fù)、標(biāo)號(hào)或指針等); 種屬(簡(jiǎn)單變量、數(shù)組或記錄結(jié)構(gòu)等); 長(zhǎng)度( 所需的存儲(chǔ)單元數(shù)); 相對(duì)數(shù)(存儲(chǔ)單元相對(duì)地址); 若為數(shù)組,則記錄其內(nèi)情向量; 若為記錄結(jié)構(gòu),則把它與其分量按某種形式聯(lián)系起來(lái); 形式參數(shù)標(biāo)志; 若在 COMMON 或 EQUVALENCE 語(yǔ)句中( FORTRAN 語(yǔ)言),把它和有關(guān)名字連接在一起;它的說(shuō)明是否已處理過(guò)(即標(biāo)志位“定義否”); 是否對(duì)這個(gè)變量進(jìn)行過(guò)賦值(包括出現(xiàn)在輸人名表中)的標(biāo)志位。不同的程序語(yǔ)言對(duì)于名字性質(zhì)的定義各有不同。 6 語(yǔ)義分析 在完成了上述過(guò)程后編譯程序?qū)⒃闯绦蜃兂梢环N內(nèi)部表示形式,這種內(nèi)部表示形式就叫做中間代碼或中間語(yǔ)言,它是一種結(jié)構(gòu)簡(jiǎn)單、含義明確的記號(hào)系統(tǒng)。若最終能將全部輸入符號(hào)(不包括右界符 )移掉,且分析棧中只留下棧 底符號(hào) 及最后一步歸約所得的文法開(kāi)始符號(hào),則表明對(duì)輸入串的分析已經(jīng)成功。 自底向上的語(yǔ)法分析 所謂自底向上的語(yǔ)法分析,是指從給定的輸入串 w=a1a2?an 出發(fā),試圖利用相應(yīng)文法中的產(chǎn)生式,逐步將其歸約為文法的開(kāi)始符號(hào) S,即從葉結(jié)點(diǎn) a1,a2,?,an 出發(fā),試圖逐步向上構(gòu)造一個(gè)語(yǔ)法樹(shù),而其根結(jié)點(diǎn)恰好為 S0 由于上述分析過(guò)程通常采用的是最左歸約,所以實(shí)現(xiàn)此種語(yǔ)法分析的關(guān)鍵,是在分析的每一步 ,如何尋找或確定當(dāng)前句型的句柄,以及確定將其歸約為什么非終結(jié)符號(hào)。如果這一嘗試得到成功,則證明 w 是相應(yīng)文法的一個(gè)句子;反之,則不是。本設(shè)計(jì)采用前一種方式。 從功能上看,詞法分析上把字符串形式的源程序轉(zhuǎn)換為單詞串形式,然后進(jìn)行語(yǔ)法分析。其主要任務(wù)是從左到右依次描描字符串形式的源程序的各個(gè)字符,逐個(gè)識(shí)別出其中的單詞 ,并將其轉(zhuǎn)換成為內(nèi)部編碼形式的單詞符號(hào)串輸出,用于進(jìn)行語(yǔ)法分析。 4 第 2 章 C 語(yǔ)言詞法分析器的總體分析與設(shè)計(jì) 系統(tǒng) 設(shè)計(jì)目標(biāo)與功能分析 本系統(tǒng)的設(shè)計(jì)目標(biāo)是完成一個(gè)小型的 C 語(yǔ)言編譯器的前端設(shè)計(jì),由于要完成一個(gè)完美的C 語(yǔ)言編譯器前端是一件非常復(fù)雜的事情,不僅要考慮到 C語(yǔ)言代碼的各種靈活用法,還需要能靈活運(yùn)用 C 語(yǔ)言語(yǔ)法,甚至是了解語(yǔ)法的構(gòu)成原理。 論文組織結(jié)構(gòu) 第 1章 緒論 簡(jiǎn)述了 C 語(yǔ)言的發(fā)展以及一般編譯器的工作原理,并介紹了本系統(tǒng)開(kāi)發(fā)的主要平臺(tái)和工具及其特點(diǎn)。 Visual Studio 2021 Team System 會(huì)收集精確的數(shù)據(jù) — 不僅限于缺陷跟蹤,而是包括測(cè)試結(jié)果、代碼涵蓋、代碼生成、任務(wù)進(jìn)度等這些貫穿于團(tuán)隊(duì)常規(guī)工作流程的數(shù)據(jù)。通過(guò)使用一個(gè)公共的跨工具集的數(shù)據(jù)倉(cāng)庫(kù), Visual Studio 2021 Team System 解決了在大多數(shù) SDLC 工具中建立數(shù)據(jù)倉(cāng)庫(kù)這一問(wèn)題,并啟動(dòng)了一個(gè)聚合的項(xiàng) 目狀態(tài)視圖。它還能將自己體現(xiàn)為實(shí)際的工具行為更改。通過(guò)將開(kāi)發(fā)人員在開(kāi)發(fā)環(huán)境中需要的測(cè)試和性能工具(例如,單元測(cè)試、代碼分析和性能分析)合并在一起, Visual Studio 2021 Team System 也期待著這種成功。 從原來(lái)的 Visual C++C++.Net 2021 升級(jí)而來(lái), 它的最大優(yōu)點(diǎn)就是提供了功能強(qiáng)大的 MFC 類(lèi)庫(kù), MFC 是一個(gè)很大的 C++類(lèi)層次 結(jié)構(gòu),其中封裝了大量的類(lèi)及其函數(shù),很多 Windows 程序所共有的標(biāo)準(zhǔn)內(nèi)容可以由 MFC 的類(lèi)來(lái)提供, MFC 類(lèi)為這些內(nèi)容提供了用戶接口的標(biāo)準(zhǔn)實(shí)現(xiàn)方法,程序員所要做的就是通過(guò)預(yù)定義的接口把具體應(yīng)用程序特有的東西填入這個(gè)輪廓,這將簡(jiǎn)化編程工作,大大的減少程序員編寫(xiě)的代碼數(shù)量,使編程工作變得更加輕松容易。 2 (3)語(yǔ)義分析 語(yǔ)義分析器根據(jù)語(yǔ)義規(guī)則對(duì)語(yǔ)法樹(shù)中的語(yǔ)法單元進(jìn)行靜態(tài)語(yǔ)義檢查,如果類(lèi)型檢查和轉(zhuǎn)換等,其目的在于保證語(yǔ)法正確的結(jié)構(gòu)在語(yǔ)義上也是合法的。詞法分析器的輸入是源程序,輸出是識(shí)別的記號(hào)流。 典型的編譯器輸出是由包含入口點(diǎn)的名字和地址 , 以及外部調(diào)用(到不在這個(gè)目標(biāo)文件中的函數(shù)調(diào)用)的機(jī)器代碼所組成的目標(biāo)文件。因此廣泛地移植到了各類(lèi)各型計(jì)算機(jī)上,從而形成了多種版本的 C語(yǔ)言。它還可以直接訪問(wèn)內(nèi)存的物理地址,進(jìn)行位 (bit)一級(jí)的操作。 C 語(yǔ)言是一種結(jié)構(gòu)化語(yǔ)言。R》標(biāo)準(zhǔn)。T)貝爾實(shí)驗(yàn)室正式發(fā)表了 C語(yǔ)言。由于 C 語(yǔ)言本身的復(fù)雜性,很難面面俱到實(shí)現(xiàn)所有標(biāo)準(zhǔn)定義,所以本次設(shè)計(jì)只象征性的
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1