程序语言基础

1、低级语言:机器语言和汇编语言称为低级语言。

  • 机器语言指0、1组成的机器指令序列
  • 汇编语言指用符号表示的语言
    MOV AX,2
    MOV BX,3
    ADD AX,BX

2、高级语言
高级语言需要编译成特定机器语言

编译程序和解释程序

高级语言或汇编语言编写的程序称为源程序,源程序不能直接在计算机上执行。

  • 如果源程序是汇编语言编写的,则需要一个称为汇编程序的翻译程序将其翻译成目标程序,然后才能执行。
  • 如果源程序是为高级语言时,这个翻译程序称为编译程序
  • 按源程序中语句的执行顺序,逐条翻译并立即执行相关功能的处理程序、称为解释程序。

1、编译执行:优点:执行效率高
缺点:兼容性差
2、解释执行:优点:可移植性较好、开发速度快、与用户通信方便。
缺点:效率低。

编译系统基本原理

编译程序的工作过程可以分为6个阶段:词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成。
1、词法分析
一个程序语言的基本语法符号分为五类:关键字、标识符、常量、运算符、界符等
词法分析器所输出单词符号常常表示成如下的二元式:(单词种别,单词符号的属性值)
描述词法通常用:正规式和有限自动机
2、状态转换图
状态转换图是状态有限的有向图,用圆圈表示结点状态,结点之间有向边代表状态转换,有向边上可标记字符,表示前一状态接受某一个字符之后的状态转移。
状态转换图的功能

  • 用于识别一定的字符串

状态转换图的要求

  • 状态(即结点)个数有限
  • 至少一个初始状态,若干终止状态
  • 每条边上标有字符(也可以是空字符)


3、正规集

你可能感兴趣的:(程序语言基础)