编译原理词法梳理
一、运算符 状态:0
- 进入状态:0
1.<
- 进入状态:1
(1)=
- 进入状态:2 生成 小于等于符号
(2)>
- 进入状态:3 生成 不等于符号
(3)other
- 进入状态:4 生成 大于符号
2.=
- 进入状态:5 生成 等于符号
3.>
- 进入状态:6
(1)=
- 进入状态:7 生成 大于等于符号
(2)other
- 进入状态:8 生成 大于符号
4.+
- 进入状态:9
(1)+
- 进入状态:10 生成 自增符号
(2)other
- 进入状态:11 生成 加号符号
5.-
- 进入状态:12
(1)-
- 进入状态:13 生成 自减符号
(2)other
- 进入状态:14 生成 减号符号
6.*
- 进入状态:15 生成 乘号符号
7./
- 进入状态:16 生成 除号符号
8.|
- 进入状态:17
(1)|
- 进入状态:18 生成 或者符号
(2)other
- 进入状态:19 生成 位或符号
9.&
- 进入状态:20
(1)&
- 进入状态:21 生成 并且符号
(2)other
- 进入状态:22 生成 位与符号
10.^
- 进入状态:23 生成 异或符号
二、id start:24
- 进入状态:24
1.letter 状态:25
- 进入状态:25
(1)letter|digit
- 进入状态:25
(2)other id生成
- 进入状态:26 生成 id
三、数字
科学计数法路线 start:27
- 进入状态:27
digit 状态:28
- 进入状态:28
(1)digit
- 进入状态:28
(2).
- 进入状态:29
digit 状态:30
- 进入状态:30
1)digit
- 进入状态:30
2)E
- 进入状态:31
(3)E 状态:31
- 进入状态:31
+|-
- 进入状态:32
- digit 进入状态:33
digit 状态:33
- 进入状态:33
- digit 进入状态:33
- other 进入状态:34 生成 科学计数法数字
浮点型路线 start:35
- 进入状态:35
digit
- 进入状态:36
1.digit
- 进入状态:36
2. .
- 进入状态:37
1)digit 状态:38
- 进入状态:38
1)digit
- 进入状态:38
2)other
- 进入状态:39 生成 浮点型数字
整形路线 start:40
- 进入状态:40
3.digit 状态:41
- 进入状态:41
1.digit
- 进入状态:41
2.other
- 进入状态:42 生成 整形数字
四、分隔符 start:43
1. (
- 进入状态:44
2. (
- 进入状态:45
3. )
- 进入状态:46
4. [
- 进入状态:47
5. ]
- 进入状态:48
6. {
- 进入状态:49
7. }
- 进入状态:50
8. ,
- 进入状态:51
9. :
- 进入状态:52
10. othre
- 进入状态:53