1.编译过程:
词法错误:非法字符,关键字或标识符拼写错误
语法错误:语法结构出错,if,elseif不匹配,缺分号
语义错误:死循环,0除数,其他逻辑错误。
对于高级语言程序的处理:解释型、编译型
编译:源代码->词法分析->语法分析->语义分析->中间代码生成->代码优化->目标代码生成(中间代码转低级语言代码,需要考虑硬件系统结构)->目标程序
2.文法的定义:
一个文法是一个四元组形式G=(V,T,S,P),其中:V:非终结符 T: 终结符 S:起始符 P:产生式
文法的类型:0,1,2,3型文法
1型:上下文有关文法
2型:上下文无关文法
3型:正规文法
文法中终结符用小写字母表示,非终结符可以推出其他符号
3.有限自动机:(DFA)
4.表达式:
前缀表达式(+ab)
中缀表达式(a+b)
后缀表达式(ab+)
做题时画树图。
5.传值与传址:
6.各种程序语言的特点:
Fortran语言:科学计算,执行效率高
Pascal语言:为教学而开发的,表达能力强,后延伸出Delphi
C语言:指针操作能力强,高效
Lisp语言:函数式程序语言,符号处理,人工智能
C++语言:面向对象,高效
Java语言:面向对象,中间代码,跨平台
C#语言:面向对象,中间代码,.Net
Prolog语言:逻辑推理,简洁性,表达能力,数据库和专家系统
更多软考资讯,请关注我的个人公众号 “软考管家”