第2章文法和语言 加引言 口2.1文法的直观概念 02.2符号和符号串 0 2.3文法和语言的形式定义(重点) 0 2.4文法的类型 口2.5上下文无关文法及其语法树(重点) 0 2.6句型的分析(重点) 口本章练习 作业 课程目录 县 国☑
1 第2章 文法和语言 引言 2.1 文法的直观概念 2.2 符号和符号串 2.3 文法和语言的形式定义(重点) 2.4 文法的类型 2.5 上下文无关文法及其语法树(重点) 2.6 句型的分析(重点) 本章练习 作业 课程目录
语言定义 0 语言 口是由句子组成的集合,是由一组记号所构成的 集合 ▣汉语—所有符合汉语语法的句子的全体 ▣英语—所有符合英语语法的句子的全体 ▣程序设计语言一所有该语言的程序的全体 0研究语言 口每个句子构成的规律 语法 加每个句子的含义 语义 ▣每个句子和使用者的关系 语用
4 语言定义 语言 是由句子组成的集合,是由一组记号所构成的 集合 汉语——所有符合汉语语法的句子的全体 英语——所有符合英语语法的句子的全体 程序设计语言——所有该语言的程序的全体 研究语言 每个句子构成的规律 语法 每个句子的含义 语义 每个句子和使用者的关系 语用
程序语言的定义p19 口一个程序语言是一个记号系统 口程序语言的定义语法和语义 口语法形成和产生合适程序的规则集 口词法规则 形成单词符号的规则 0 语法规则 形成语法单位的规则 口常用的语法描述方法 口正规文法一一词法规则 口上下文无关文法一一语法规则 迎
6 程序语言的定义 p19 一个程序语言是一个记号系统 程序语言的定义 语法和语义 语法 形成和产生合适程序的规则集 词法规则 形成单词符号的规则 语法规则 形成语法单位的规则 常用的语法描述方法 正规文法——词法规则 上下文无关文法——语法规则
程序语言的语法构成 例源程序字符串0.5*X1+0 (a+b)*2 常数 0.5 2 词法 单词 规则 符号 标识符 X1 C a b 基本字 算符 米 十米 法 界符 () 语法 语法 表达式 0.5*X1+0 (a+b)*2 规则 单位 语句 (范畴) 函数、过程 程序 ☒
7 程序语言的语法构成 语 法 词法 规则 语法 规则 单词 符号 常数 标识符 基本字 算符 界符 语法 单位 (范畴) 表达式 语句 函数、过程 程序 例 源程序字符串 0.5*X1+C 0.5 * X1 + C 0.5*X1+C (a+b)*2 ( a + b ) * 2 (a+b)*2
程序语言的定义p32 口语义用以定义程序意义的规则集 口静态语义 ·标识符未声明、重复声明、类型不符、种类不符 口动态语义 除零错误、下标越界、无效指针、死循环 口在不同语言中完全相同的语法单位 含义却可能完全不同 口例如:x=y C语言一赋值表达式 Pascal语言一关系表达式 C中x==y 迎 D
8 程序语言的定义 p32 语义 用以定义程序意义的规则集 静态语义 标识符未声明、重复声明、类型不符、种类不符 动态语义 除零错误、下标越界、无效指针、死循环 在不同语言中完全相同的语法单位 含义却可能完全不同 例如:x=y C语言——赋值表达式 Pascal语言——关系表达式 C中x==y