學校發的課本是《編譯原理 第三版》(清華大學出版社), 其中很多基本概念我都不懂或者忘了,而且書上也沒解釋,越看到后面越感覺”空穴來風“,啥也不是。在看完哈爾冰工業大學的編譯原理mooc之后,感覺,這才是真正的教書啊!與此同時,果斷買了一本龍書,拋棄了中南大學的編譯原理mooc。在這里將一些基本概念梳理一下。
共識
我想用人民幣現金來舉例子。大家都知道現在人民幣現金面值有: 1角 2角 5角 1元 5元 10元 20元 50 元
100 元。而且假設物品的最高價格為100元。
基本概念
-
終結符(termianl symbol) : 最基本的語法組成單位 (就是語法中最小的語法成分)
舉個例子: 人民幣現金計價(排除:電子支付),現在最小的為一角(以前有一分哈), 你用紙幣來計價的時候就別寫¥5.55,因為這個分你用角是還不來的。角就是我們這里所說的終結符。這就是最基本單位的意思。不能夠再分了。!!!
-
開始符號(start symbol): 文法中最大的語法成分。
舉個例子:100元的商品你可以進行現金支付的方式有幾種。100 = 100元 = 10 元 + 20 元 + 20元 + 50元 = 5個20元 = 2個50元.................... = 100個1元 = 1000個1角(估計別人會揍死你!)。 這里100元就有點像現金計價中的開始符號。
總結
- 終結符和非終結符
- 哈工大《編譯原理》mooc很好
- 買一本紫龍書
參考
- 哈工大《編譯原理》 mooc