編譯原理文法的概念為:每壹種自然語言或者是編程語言都需要文法來描述,文法相當於語言學的語義分析,即分析每壹句話所表示的含義,編譯器需要利用文法來完成其語法分析和語義分析。
在目前編程語言領域,上下文無關文法作為程序語言的描述工具,比如a = b + c是壹個合法的賦值語句。
符號和符號串的定義,每個程序都可以看成是壹個“基本符號”串,如果有壹個基本符號集,那麽C語言等編程語言可以看成是在這個基本符號集上定義的、按照壹定規則構成的壹切基本符號串組成的集合。
字母表是元素的非空有窮集合,字母表中的元素稱之為符號,因此,字母表也稱之為符號集。例如C語言中的字母表由字母、數字、關鍵字等組成。
符號串,就是由符號集中的元素組成的序列。例如,給定符號集a、b、c,那麽abc、abb、ac就是由該符號集組成的符號串。壹個文法中,含有壹個,或多個產生式,產生式,描述了將終結符集合和非終結符集合組合成串的方法。