第四章文法和语言 本章目的 为语言的语法描述寻求工具 工具要对程序设计语言给出精确无二义的语法描 述。(严谨、简洁、易读) 形式工具-形式语言抽象地定义为一个数学 系统。“形式”是指这样的事实:语言的 所有规则只以什麽符号串能出现的方式来 陈述
1 第四章 文法和语言 本章目的 为语言的语法描述寻求工具 工具要对程序设计语言给出精确无二义的语法描 述。(严谨、简洁、易读) 形式工具--形式语言抽象地定义为一个数学 系统。“形式”是指这样的事实:语言的 所有规则只以什麽符号串能出现的方式来 陈述
本章知识点(内容) 引言和预备知识 文法和语言的形式定义 文法的类型 上下文无关文法及其语法树 上下文无关文法的句型分析 有关文法实用中的一些说明
2 本章知识点(内容) 引言和预备知识 文法和语言的形式定义 文法的类型 上下文无关文法及其语法树 上下文无关文法的句型分析 有关文法实用中的一些说明
文法的直观概念和语言概述 当我们表述一种语言时,无非是说明这种语言的句 子,如果语言只含有有穷多个句子,则只需列出 句子的有穷集就行了,但对于含有无穷句子的语 言来讲,存在着如何给出它的有穷表示的问题 以自然语言为例,人们无法列出全部句子,但是人 可以给出一些规则,用这些规则来说明(或者定 义)句子的组成结构,比如汉语句子可以是 由主语后随谓语而成,构成谓语的是动词和直接宾 语,我们采用第2章所介绍的EBNF来表示这种句 子的构成规则
3 文法的直观概念和语言概述 当我们表述一种语言时,无非是说明这种语言的句 子,如果语言只含有有穷多个句子,则只需列出 句子的有穷集就行了,但对于含有无穷句子的语 言来讲,存在着如何给出它的有穷表示的问题。 以自然语言为例,人们无法列出全部句子,但是人 们可以给出一些规则,用这些规则来说明(或者定 义)句子的组成结构,比如汉语句子可以是 由主语后随谓语而成,构成谓语的是动词和直接宾 语,我们采用第2章所介绍的EBNF来表示这种句 子的构成规则:
“我是大学生”。是汉语的一个句子 〈句子〉∷=〈主语〉〈谓语〉 〈主语〉∷=〈代词〉|〈名词〉 〈代词〉∷三我|你|他 〈名词〉∷=王明大学生|工人|英语 〈谓语〉∷=〈动词〉〈直接宾语〉 〈动词〉∷=是|学习 〈直接宾语〉:三〈代词〉|〈名词〉
4 “我是大学生”。是汉语的一个句子 〈句子〉∷=〈主语〉〈谓语〉 〈主语〉∷=〈代词〉|〈名词〉 〈代词〉∷=我|你|他 〈名词〉∷=王明|大学生|工人|英语 〈谓语〉∷=〈动词〉〈直接宾语〉 〈动词〉∷=是|学习 〈直接宾语〉∷=〈代词〉|〈名词〉
有了一组规则以后,按照如下方式用它们导出句子:开始去找 ∷=左端的带有〈句子〉的规则并把它由∷=右端的符号串代 替,这个动作表示成: 〈句子〉→〈主语〉〈谓语〉, 然后在得到的串〈主语〉〈谓语〉中,选取〈主语〉或〈谓 语〉,再用相应规则的∷=右端代替之。比如,选取了〈主 语〉,并采用规则〈主语〉∷=〈代词〉, 那么得到:〈主语〉〈谓语〉→〈代词〉〈谓语〉, 重复做下去, 句子:“我是大学生”的全部动作过程是: 〈句子〉→〈主语〉〈谓语〉→〈代词〉〈谓语〉 →我〈谓语〉→我〈动词〉〈直接宾语〉 →我是〈直接宾语〉→我是〈名词〉→我是大学生
5 有了一组规则以后,按照如下方式用它们导出句子:开始去找 ∷=左端的带有〈句子〉的规则并把它由∷=右端的符号串代 替,这个动作表示成: 〈句子〉 〈主语〉〈谓语〉, 然后在得到的串〈主语〉〈谓语〉中,选取〈主语〉或〈谓 语〉,再用相应规则的∷=右端代替之。比如,选取了〈主 语〉,并采用规则〈主语〉∷=〈代词〉, 那么得到:〈主语〉〈谓语〉 〈代词〉〈谓语〉, 重复做下去, 句子:“我是大学生”的全部动作过程是: 〈句子〉 〈主语〉〈谓语 〈代词〉〈谓语〉 我〈谓语 我〈动词〉〈直接宾语〉 我是〈直接宾语〉 我是〈名词〉 我是大学生