编译原理词法梳理

一、运算符 状态: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
posted @ 2021-03-15 16:30  头壳康康  阅读(49)  评论(0编辑  收藏  举报