下面我们来简单介绍一下语义分析。
- 语义分析是编译的第三个阶段,我们先来看一下语义分析的主要任务,
- 我们说高级语言程序中的语句大体称为两类,一类是声明语句,一类是可执行语句。
- 在声明语句中。会声明一些数据对象或过程,并且对他们分别起个名字就是标识符,那么对于声明语句来说,语义分析的主要任务就是收集标识符的属性信息和语义检查,先来说一下标识符都有哪些属性。
- 首先是种属,也就是说一个标志符对应的是一个简单变量还是一个复合变量,比如说数组记录等等,还是一个过程。
种属( Kind)
简单变量,复合变量(数组,记录,...)过程...
- 第二个属性就是类型。也就是说标志符对应的变量或过程是整形的,还是实型的,还是字符型,布尔型,指针型,等等。
类型(type)
整型,实型,字符型,布尔型,指针型,...
- 另外两个属性是存储位置和长度,