高级语言及其语法描述
程序语言的定义
1、常用的高级程序设计语言
语言 | 特点 |
---|---|
FORTRAN | 数值计算 |
COBOL | 事务处理 |
PASCAL | 结构化程序设计 |
LISP | 函数式程序设计 |
PROLOG | 逻辑程序设计 |
C | 系统程序设计 |
Smalltalk | 面向对象程序设计 |
Java | Internet应用,可移植性 |
Python | 解释型 |
2、程序语言由语法、语义和语用三个方面定义。
- 语法
(1)程序本质上是一定字符集上的字符串。
(2)定义:一组规则,用它可以形成和产生一个合式(well-formed)的程序
(2)语法的规则:词法规则和语法规则(产生规则)
①词法规则:描述语言单词符号(语言的单词符号包括:标识符常数、运算符等)构成规则的称为词法规则;词法规则的描述工具通常为正规文法(正规式,有限自动式)
②语法规则(产生规则) :描述语言语法单位(语言的语法单位包括:表达式、语句、函数、过程等 )构成规则的称为语法规则;语法规则的描述工具通常为上下文无关文法。
注意:
(1)语法规则和词法规则定义了程序的形式结构
(2)定义语法单位的意义属于语义问题
- 语义
(1)定义:一组规则,用它可以定义一个程序的意义。
(2)描述方法:
①自然语言描述:二义性、隐藏错误和不完整性
②形式描述:操作语义、指称语义、代数语义
3、程序语言的基本功能和层次结构
(1)程序语言的基本功能:描述数据和对数据的运算。
(2)程序的层次结构:
4、程序语言成分的逻辑和实现意义
(1)抽象的逻辑的意义:数学意义
(2)计算机实现的意义:具体实现