码迷,mamicode.com
首页 > 其他好文 > 详细

编译原理学习

时间:2014-12-30 18:58:06      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:

编译原理学习笔记----

不确定有穷自动机(NFA)

一个不确定的有穷自动机T是一个五元组,M={K,∑,f,S,Z}
⒈K是一个有穷集他的每一个元素称作一个状态。
⒉∑是一个字母表,他的每一个元素称为一个输入符号。
⒊f是一个从Kx∑*到K的子集映射即K*∑*->2^K,其中2^K表示K的幂集。
⒋S包含于K集,是一个非空初态集合。
⒌Z包含于K是一个非空的终态集合。

 

确定有穷自动机(DFA)

一个确定的有穷自动机M是一个五元组:M=(K, ∑,f,S,Z)其中,

1)K是一个有穷集,他的每个元素称为一种状态。

2) ∑是一个有穷字母表,他的每个元素称为一个输入符号,所以∑称为输入符号表。

3)f是转换函数,是KX∑-->K 上的映像,例如f(ki,a)=kj这就意味着,当前状态为k,输入字符a后,将转换到下一状态kj,我们把kj称为ki的一个后继状态;

4)S属于K,是唯一的一个出态。

5)Z属于K,是一个终态,终态也称为可接受状态或结束状态。

例如:

技术分享

这个DFA可以表示一个状态图:

技术分享

也可以用状态矩阵显示,行表示状态,列表示输入符号,终态在表的右端标1,非终态在表的右边标0。

技术分享

 

编译原理学习

标签:

原文地址:http://www.cnblogs.com/sunniest/p/4194121.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!