天天看点

【编译原理】C-minus DFA (包括各个记号的DFA)

1.C-minus的记号:

(1)关键字(保留字):else if int return void while

(2)专用符号:+ - * / < <= > >= == != = ; , ( ) [ ] { }

(3)其他标记:ID,NUM:ID = letter letter*      NUM = digit digit*      letter = a|..|z|A|..|Z        digit = 0|..|9

(5)注释:

2.各记号对应的DFA(图是自绘的,可能有错误,欢迎纠错)

记号 DFA
+ - * { } [ ] { } ; ,
【编译原理】C-minus DFA (包括各个记号的DFA)
< <=
【编译原理】C-minus DFA (包括各个记号的DFA)
> >=
【编译原理】C-minus DFA (包括各个记号的DFA)
= ==
【编译原理】C-minus DFA (包括各个记号的DFA)
!=
【编译原理】C-minus DFA (包括各个记号的DFA)
ID
【编译原理】C-minus DFA (包括各个记号的DFA)
NUM
【编译原理】C-minus DFA (包括各个记号的DFA)

over

&

Comment

【编译原理】C-minus DFA (包括各个记号的DFA)

3.所有记号的DFA

【编译原理】C-minus DFA (包括各个记号的DFA)