資料介紹
1. 詞法分析
詞法分析器根據(jù)詞法規(guī)則識別出源程序中的各個記號(token),每個記號代表一類單詞(lexeme)。源程序中常見的記號可以歸為幾大類:關鍵字、標識符、字面量和特殊符號。詞法分析器的輸入是源程序,輸出是識別的記號流。詞法分析器的任務是把源文件的字符流轉(zhuǎn)換成記號流。本質(zhì)上它查看連續(xù)的字符然后把它們識別為“單詞”。
2. 語法分析
語法分析器根據(jù)語法規(guī)則識別出記號流中的結(jié)構(gòu)(短語、句子),并構(gòu)造一棵能夠正確反映該結(jié)構(gòu)的語法樹。
3. 語義分析
語義分析器根據(jù)語義規(guī)則對語法樹中的語法單元進行靜態(tài)語義檢查,如果類型檢查和轉(zhuǎn)換等,其目的在于保證語法正確的結(jié)構(gòu)在語義上也是合法的。
4. 中間代碼生成
中間代碼生成器根據(jù)語義分析器的輸出生成中間代碼。中間代碼可以有若干種形式,它們的共同特征是與具體機器無關。最常用的一種中間代碼是三地址碼,它的一種實現(xiàn)方式是四元式。三地址碼的優(yōu)點是便于閱讀、便于優(yōu)化。
5. 中間代碼優(yōu)化
優(yōu)化是編譯器的一個重要組成部分,由于編譯器將源程序翻譯成中間代碼的工作是機械的、按固定模式進行的,因此,生成的中間代碼往往在時間和空間上有很大浪費。當需要生成高效目標代碼時,就必須進行優(yōu)化。
6. 目標代碼生成
目標代碼生成是編譯器的最后一個階段。在生成目標代碼時要考慮以下幾個問題:計算機的系統(tǒng)結(jié)構(gòu)、指令系統(tǒng)、寄存器的分配以及內(nèi)存的組織等。編譯器生成的目標程序代碼可以有多種形式:匯編語言、可重定位二進制代碼、內(nèi)存形式。
7 符號表管理
符號表的作用是記錄源程序中符號的必要信息,并加以合理組織,從而在編譯器的各個階段能對它們進行快速、準確的查找和操作。符號表中的某些內(nèi)容甚至要保留到程序的運行階段。
8 出錯處理
用戶編寫的源程序中往往會有一些錯誤,可分為靜態(tài)錯誤和動態(tài)錯誤兩類。所謂動態(tài)錯誤,是指源程序中的邏輯錯誤,它們發(fā)生在程序運行的時候,也被稱作動態(tài)語義錯誤,如變量取值為零時作為除數(shù),數(shù)組元素引用時下標出界等。靜態(tài)錯誤又可分為語法錯誤和靜態(tài)語義錯誤。語法錯誤是指有關語言結(jié)構(gòu)上的錯誤,如單詞拼寫錯、表達式中缺少操作數(shù)、begin和end不匹配等。靜態(tài)語義錯誤是指分析源程序時可以發(fā)現(xiàn)的語言意義上的錯誤,如加法的兩個操作數(shù)中一個是整型變量名,而另一個是數(shù)組名等。
?
詞法分析器根據(jù)詞法規(guī)則識別出源程序中的各個記號(token),每個記號代表一類單詞(lexeme)。源程序中常見的記號可以歸為幾大類:關鍵字、標識符、字面量和特殊符號。詞法分析器的輸入是源程序,輸出是識別的記號流。詞法分析器的任務是把源文件的字符流轉(zhuǎn)換成記號流。本質(zhì)上它查看連續(xù)的字符然后把它們識別為“單詞”。
2. 語法分析
語法分析器根據(jù)語法規(guī)則識別出記號流中的結(jié)構(gòu)(短語、句子),并構(gòu)造一棵能夠正確反映該結(jié)構(gòu)的語法樹。
3. 語義分析
語義分析器根據(jù)語義規(guī)則對語法樹中的語法單元進行靜態(tài)語義檢查,如果類型檢查和轉(zhuǎn)換等,其目的在于保證語法正確的結(jié)構(gòu)在語義上也是合法的。
4. 中間代碼生成
中間代碼生成器根據(jù)語義分析器的輸出生成中間代碼。中間代碼可以有若干種形式,它們的共同特征是與具體機器無關。最常用的一種中間代碼是三地址碼,它的一種實現(xiàn)方式是四元式。三地址碼的優(yōu)點是便于閱讀、便于優(yōu)化。
5. 中間代碼優(yōu)化
優(yōu)化是編譯器的一個重要組成部分,由于編譯器將源程序翻譯成中間代碼的工作是機械的、按固定模式進行的,因此,生成的中間代碼往往在時間和空間上有很大浪費。當需要生成高效目標代碼時,就必須進行優(yōu)化。
6. 目標代碼生成
目標代碼生成是編譯器的最后一個階段。在生成目標代碼時要考慮以下幾個問題:計算機的系統(tǒng)結(jié)構(gòu)、指令系統(tǒng)、寄存器的分配以及內(nèi)存的組織等。編譯器生成的目標程序代碼可以有多種形式:匯編語言、可重定位二進制代碼、內(nèi)存形式。
7 符號表管理
符號表的作用是記錄源程序中符號的必要信息,并加以合理組織,從而在編譯器的各個階段能對它們進行快速、準確的查找和操作。符號表中的某些內(nèi)容甚至要保留到程序的運行階段。
8 出錯處理
用戶編寫的源程序中往往會有一些錯誤,可分為靜態(tài)錯誤和動態(tài)錯誤兩類。所謂動態(tài)錯誤,是指源程序中的邏輯錯誤,它們發(fā)生在程序運行的時候,也被稱作動態(tài)語義錯誤,如變量取值為零時作為除數(shù),數(shù)組元素引用時下標出界等。靜態(tài)錯誤又可分為語法錯誤和靜態(tài)語義錯誤。語法錯誤是指有關語言結(jié)構(gòu)上的錯誤,如單詞拼寫錯、表達式中缺少操作數(shù)、begin和end不匹配等。靜態(tài)語義錯誤是指分析源程序時可以發(fā)現(xiàn)的語言意義上的錯誤,如加法的兩個操作數(shù)中一個是整型變量名,而另一個是數(shù)組名等。
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 基于GCC實現(xiàn)支持MISRAC的安全編譯器
- 基于C++編譯器的節(jié)點融合優(yōu)化方法 19次下載
- CompCert編譯器目標代碼生成機制研究綜述 4次下載
- C語言編譯器常見的預編譯指令詳細資料說明
- AVR程序編譯器avrubd應用程序免費下載 52次下載
- 如何解決proteus的c編譯器問題的方法 26次下載
- MPLAB C18編譯器到MPLAB XC8 C編譯器的移植過程詳細中文資料概述
- 如何將C源代碼從MPLAB C18編譯器移植到MPLAB XC8C編譯器的詳細概述
- NEC編譯器培訓手冊 15次下載
- PICC編譯器下載 168次下載
- C語言編譯器 50次下載
- 基于CoSy的編譯器開發(fā)的研究 0次下載
- ICC AVR編譯器的安裝與使用
- INTEL的PLM51編譯器
- AVRC (AVR的PASCAL編譯器)
- Triton編譯器的原理和性能 2165次閱讀
- TVM編譯器的整體架構(gòu)和基本方法 1824次閱讀
- C程序的完整編譯過程 1797次閱讀
- 領域編譯器發(fā)展的前世今生 1472次閱讀
- 交叉編譯器安裝教程 3269次閱讀
- VScode編譯器如何配置C/C++編譯環(huán)境 5431次閱讀
- 編譯器優(yōu)化對函數(shù)的影響 2734次閱讀
- 虛擬機:編譯器對C函數(shù)的名字修飾 2469次閱讀
- 如何選擇PIC單片機的C編譯器 5245次閱讀
- 深入編程語言和編譯器是怎樣工作的 4212次閱讀
- 編譯器原理到底是怎樣的帶你簡單的了解編譯器原理 1.1w次閱讀
- verilog編譯指令_verilog編譯器指示語句(數(shù)字IC) 1.4w次閱讀
- 用于linux系統(tǒng)下編程的編譯器,掌握gcc的基本用法 5579次閱讀
- 編譯器是如何工作的_編譯器的工作過程詳解 1.5w次閱讀
- 編譯器跟編輯器有什么區(qū)別 2.9w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多