语句级控制结构
用来控制语句的执行顺序 三中语句级控制 顺序 分支 循环
顺序是按程序计数器提供的顺序获得指令的一种抽象。
选择和重复是对显式修改程序计数器的值(无条件转移和条件转移)的抽象,控制既简单又有效。
单元机控制结构
规定程序单元之间控制流程的机制。
四种单元级控制结构:
显式调用 ——函数
异常处理
协同程序
并发单元
异常:导致程序正常执行中止的事件。
很多语言提供了异常处理机制,使涉及异常事件的处理独立出来,不包括在程序的主流程中,以保证程序的逻辑按基本算法进行。
协同程序:两个或两个以上程序单元之间交错地执行
设有单元 C1 和 C2 ,由 C1 先开始执行,当执行到 C1的“ resume C2 ”命令时,显式激活 C2,暂停C1的执行,将控制转向 C2的执行点;
若 C2执行到某个“ resume C1 ”命令时,暂停C2的执行,恢复 C1 的执行(将控制转移到 C1的执行点,继续执行下去)
C1和 C2似乎在并行地执行,我们将这种执行称为伪并行。实际上, C1 和 C1是在交错地执行,它是并行的一种低级形式。
并发单元
各程序单元并行活动
第4章
语言= 语法+语义
语法:用以构造程序及其成分(语法单位)的规则的集合。
语义:用以规定语法正确的语法单位的含义的规则的集合。
1) 字母表(Alphabet)
语言允许使用的字符(Character)的集合
(2) 符号(Symbol)
由字母表上的字符串(String)构成
(3) 字汇表
语言允许使用的有效符号的集合,其元素称为字(Word或单词符号)
4) 词法规则
规定什么样的字符串(String)可以构成语言的有效符号
(5) 语法规则
确定一个符号序列是否为一个句子(什么样的符号序列是合法的),并提供句子的结构
6) 语义规则
定义语法合法的句子的含义(即句子的作用和意义)。
文法:
文法是描述语言语法结构的形式规则
G=(VT,VN , S , P)
VT 是终结符的非空有限集;
VN 是非终结符的非空有限集;
S 是文法的开始符, S∈VN ;
P 是产生式的非空有限集。
句型:文法开始符推导出的任意符号串均是文法的句型 包括开始符
如果推导出终结符就是句子
只含终结符的句型就是一个句子。
句子一定是句型。
句型不一定是句子。
把文法G的所有句子集合称为G产生的语言,记为L(G)
1) 文法的重要特性
用有限规则描述无穷的语言。
2) 文法的等价
对两个文法G和G’,如果L(G) = L(G’),则称文法G和文法G’等价。