三种语言涉及的三类人:源语言(设计者),编译语言(实现者),目标语言(使用者)变量:对存储单元的抽象(变量是对一个(或若干个)存储单元的抽象,赋值语句则是修改存储单元内容的抽象。)。属性:变量的作用域,变量的生存期,值,类型静态绑定:凡是在编译时能确定的属性,称为静态属性;若绑定在编译时完成,运行时不改变,称为静态绑定。动态绑定:凡是在运行时才能确定的属性称为动态的。若绑定在运行时完成,称为动态绑定。定义:虚拟机是由软件实现的机器。(实际机器+程序)程序单元:1,程序单元:程序执行过程中的独立调用单元;2.单元的表示在编译时,单元表示是该单元的源程序。运行时,单元表示由一个代码段和一个活动记录组成,称为单元实例。3.活动记录:执行单元所需要的信息,以及该单元的局部变量所绑定的数据对象的存储区。4.非局部变量:一个程序单元可以引用未被本单元说明而被其它单元说明的变量。5.引用环境:局部变量+非局部变量。6.别名:同一单元的引用环境中有两个变量绑定于同一数据对象,称这些变量具有别名。7.副作用:对绑定于一个非局部变量的对象进行修改时,将产生副作用。8.程序单元可以递归激活,从而一个单元可以有很多个实例,但代码段相同。不同的仅仅是活动记录(所以绑定必须是动态的)。数据类型:数据类型实质上是对存储器中所存储的数据进行的抽象。它包含了一组值的集合和一组操作。数据类型的作用1.实现了数据抽象2.使程序员从机器的具体特征中解脱出来3.提高了编程效率聚合的六种方式:笛卡尔积,有限映像,序列,判定或,递归,幂集2.抽象数据类型的定义:满足下述特性的用户定义类型称为抽象数据类型:1.在实现该类型的程序单元中,建立与表示有关的基本操作;2.对使用该类型的程序单元来说,该类型的表示是隐蔽的。类型等价:若T1和T2是两个类型,且T1的任何值都可以赋予T2类型的变量,T1类型的实参可以对应类型T2的形参,反之亦然,则称T1和T2是相容的,或等价的;有两种类型的相容性概念:①名字等价②结构等价两种相容性实现时的比较①名字等价的实现比较简单②结构等价的实现需要的模式匹配过程可能十分复杂编译时与类型相关的三个重要工作:1.类型检查12.类型转换3.类型等价语句级控制:顺序,选择,重复四种单元级控制结构:显式调用异常处理协同程序并发单元语言的定义:程序设计语言是用来描述计算机所执行的算法的形式表示;语言=语法+语义语法:用以构造程序及其成分的一组规则的集合语义:用以规定语法正确的程序或其成分的含义的一组规则的集合文法定义:文法是描述语言的语法结构的形式规则,必须准确,易于理解,且描述能力强。分为(0.1.2.3型文法)抽象机作用词法分析动能:扫描源程序的字符串,按照词法规则,识别出单词符号作为输出;对识别过程中发现的词法错误,则输出有关的错误信息。1.单词的种类标识符:用来命名程序中出现的变量、数组、函数、过程、标号等基本字:也可称关键字或保留字,如if、while、for、do、goto等常数:各种类型的常数,如216、3.14159、TRUE等运算符:如+、-、*、/等界符:如;、:、/*、*/等