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

正文內(nèi)容

[工學(xué)]ch1編譯程序概述(編輯修改稿)

2024-11-11 11:46 本頁面
 

【文章內(nèi)容簡介】 語法分析 ? 語義分析 ? 中間代碼生成 ? 代碼優(yōu)化 ? 目標(biāo)代碼生成 ? 每個階段都有 表格管理 和 出錯處理 部分。 分析階段 綜合階段 1 詞法分析 ? 第一階段:保證構(gòu)詞的正確 ? 輸入:字符流 ? 輸出:單詞流 ? 分析的依據(jù):詞法規(guī)則 (如:標(biāo)識符被定義為字母開頭的字母數(shù)字串) ? 主要任務(wù): 分離并輸出單詞(保證單詞符合詞法規(guī)則 ); 輸出單詞的值和種類。 構(gòu)造符號表、常量表; 發(fā)現(xiàn)并報告詞法錯誤。 單詞值 單詞類型 position 標(biāo)識符 (id1) = 運算符 (賦值 ) initial 標(biāo)識符 (id2) + 運算符 (加 ) rate 標(biāo)識符 (id3) * 運算符 (乘 ) 60 整數(shù) ; 界符 例 :position = initial + rate * 60。 詞法分析 (自動分詞 +詞性標(biāo)注) 例 :position = initial + 3rate * 60 單詞值 單詞類型 position 標(biāo)識符 (id1) = 運算符 (賦值 ) initial 標(biāo)識符 (id2) + 運算符 (加 ) 3rate 錯誤 * 運算符 (乘 ) 60 整數(shù) 詞法分析 (自動分詞 +詞性標(biāo)注) 2 語法分析 ? 第二階段:保證句子結(jié)構(gòu)的正確 ? 輸入:單詞流 ? 輸出:語法樹 ? 依據(jù):語法規(guī)則 (如: S→if C S else S | if C S ) ? 主要功能: 分析句子是否合乎語法規(guī)則; 輸出語法樹(保證句子的結(jié)構(gòu)正確); 發(fā)現(xiàn)并報告語法錯誤。 語法分析 (自動句法分析) 語法規(guī)則(文法描述) : 賦值語句 → 標(biāo)識符 = 表達式 表達式 → 表達式 + 表達式 表達式 → 表達式 * 表達式 表達式 → (表達式 ) 表達式 → 標(biāo)識符 表達式 → 整數(shù) 表達式 → 實數(shù) 例 :position = initial + rate * 60 賦值語句 標(biāo)識符 = 表達式 表達式 + 表達式 表達式 * 表達式 標(biāo)識符 標(biāo)識符 整數(shù) 語法分析 (自動句法分析) 例 :position = initial + rate * 60 分析過程 : (分析樹) 語法分析 (自動句法分析) 例 :position = initial + rate * 60 分析結(jié)果 : id1=id2+id3*N (結(jié)構(gòu)正確的語法樹) = + id1 (position) * id2 (initial) id3 (rate) N (60) 3 語義分析 ? 第三階段:保證句子含義的正確 ? 輸入:結(jié)構(gòu)正確的語法樹 ? 輸出:語義正確的語法樹 ? 依據(jù):語義規(guī)則 (如實數(shù)和整數(shù)不能直接做 +運算,需進行類型轉(zhuǎn)換) ? 主要任務(wù):進行類型審查,保證標(biāo)識符和常量的正確使用,否則應(yīng)報告錯誤。包括: 類型匹配 類型轉(zhuǎn)換 例 : int m(){ float rate, initial。 int position。 … position = initial+rate * 60。 /* error */ /* warning */ } 語義分析 (類型審查) 例 :position = initial + rate * 60。 分析結(jié)果 : id1=id2+id3*(inttoreal)N (語義正確的語法樹) = + id1 (position) * id2 (initial) id3 (rate) N (60) inttoreal 語義分析 (類型審查) 4 中間代碼生成 ? 第四階段:分解計算步驟 ? 輸入:結(jié)構(gòu)和語義正確的語法樹 ? 輸出:中間代碼 ? 主要任務(wù):分解計算步驟 中間代碼生成 (分解計算步驟) ? 中間代碼:程序的一種內(nèi)部表示形式。 ? 如:四元式的形式為: (算符,運算對象 1,運算對象 2,結(jié)果) 中間代碼生成 (分解計算步驟) 例 :position = initial + rate * 60 生成四元式序列: = + id1 (position) * id2 (initial) id3 (rate) N (60) inttoreal t1 t2 t3 ( inttoreal 60 - t1 ) ( id3 t1 t2) (+ id2 t2 t3) (= t3 - id1) 5 代碼優(yōu)化 ? 第五階段:計算步驟的簡化 ?
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1