編譯原理學習筆記(一)

   最近開始在學習編譯原理。緣由是這麼多年以來,一直作企業信息應用系統方面的開發。對於開發具體的業務功能固然早就得心應手,不過當想進一步開發相對基礎的功能,好比報表,模版或者動態表單什麼的,就有點力不從心。可是,以如今行業技術的發展來看,已經不可能再停留在開發業務代碼的程度上了。尤爲是近年來,出現了愈來愈多的所謂無代碼開發平臺,若是不能跟進學習,本身恐怕也要被淘汰了。因此,就只能下定決心,由基礎開始從頭學起,算是補上原來的課吧。前端

   我是在極客時間上,跟着宮文學老師專欄《編譯原理之美》學的。剛開始學,瞭解了些基本概念。正則表達式

   編譯技術分爲前端技術和後端技術。前端技術是指編譯器對程序代碼的分析和理解過程。後端技術則是編譯器將程序代碼生成目標機器能夠執行的目標代碼的過程。算法

   其中前端技術又分爲三個階段。一, 詞法分析 。二,語法分析。三,語義分析。後端

   一,詞法分析是指將程序代碼進行分詞的過程。這個裏面涉及到了 正則表達式 和有限自動機的概念。學習

   二,語法分析是將詞法分析得到的一個個單詞識別出程序的語法結構,組合抽象語法樹(AST)。涉及到了 遞歸降低算法,二元表達式,等概念。設計

   三,語義分析是根據語義規則進行分析判斷,將分析判斷的結果做爲屬性標註在抽象語法樹上。遞歸

 

   基本上學完編譯原理的前端技術,應該就能夠本身設計一個簡單的腳本語言或者簡單的模版引擎了。開發

   但願能堅持學下去,作出一個成果出來吧。編譯器

相關文章
相關標籤/搜索