91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 12.74MB
    文件類型: .zip
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2023-06-15
  • 語(yǔ)言: 其他
  • 標(biāo)簽: LR分析表??LR分析器??

資源簡(jiǎn)介

LR分析器工作過(guò)程算法描述: 一個(gè)LR分析器的工作過(guò)程可看成是棧里的狀態(tài)序列,已規(guī)約串和輸入串所構(gòu)成的三元式的變化過(guò)程。分析開始時(shí)的初始三元式為 (s0, #, a1a2……an#) 其中,s0為分析器的初態(tài);#為句子的左括號(hào);a1a2……an為輸入串;其后的#為結(jié)束符(句子右括號(hào))。分析過(guò)程每步的結(jié)果可表示為 (s0s1……sm, #X1X2……Xm ai, ai+1……an#) 分析器的下一步動(dòng)作是由棧頂狀態(tài)sm和現(xiàn)行輸入符號(hào)ai所唯一決定的。即,執(zhí)行ACTION(sm,ai)所規(guī)定的動(dòng)作。經(jīng)執(zhí)行每種可能的動(dòng)作之后,三元式的變化情形是: (1) 若ACTION(sm,ai)為移進(jìn),且s = GOTO(sm,ai),則三元式變成: (s0s1……sm s, #X1X2……Xm ai, ai+1……an#) (2) 若ACTION(sm,ai)= {A→β},則按照產(chǎn)生式A→β進(jìn)行規(guī)約。此時(shí)三元式變?yōu)?(s0s1……sm s, #X1X2……Xm A, ai ai+1……an#) 此處s = GOTO(Sm-r,A),r為β的長(zhǎng)度,β = Xm-r+1……Xm。 (3) 若ACTION(sm,ai)為“接受”,則三元式不再變化,變化過(guò)程終止,宣布分析成功。 (4) 若ACTION(sm,ai)為“報(bào)錯(cuò)”,則三元式的變化過(guò)程終止,報(bào)告錯(cuò)誤。 一個(gè)LR分析器的工作過(guò)程就是一步一步的變換三元式,直至執(zhí)行“接受”或“報(bào)錯(cuò)”為止。

資源截圖

代碼片段和文件信息

//?AnalyzeDlg.cpp?:?implementation?file
//

#include?“stdafx.h“
#include?“l(fā)l1forwin.h“
#include?“AnalyzeDlg.h“

#ifdef?_DEBUG
#define?new?DEBUG_NEW
#undef?THIS_FILE
static?char?THIS_FILE[]?=?__FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
//?CAnalyzeDlg?dialog


CAnalyzeDlg::CAnalyzeDlg(CWnd*?pParent?/*=NULL*/)
:?CResizingDialog(CAnalyzeDlg::IDD?pParent)
{
//{{AFX_DATA_INIT(CAnalyzeDlg)
m_input?=?_T(““);
//}}AFX_DATA_INIT
m_strTempFilename?=?““;
m_pTree?=?new?CTreeDlg;
m_pTree->Create(IDD_DIALOG3?this);
m_pTree->SetControlInfo(IDC_TREE1?RESIZE_BOTH);
m_pTree->SetControlInfo(IDOK?ANCHORE_BOTTOM?|?ANCHORE_RIGHT);
}

CAnalyzeDlg::~CAnalyzeDlg()
{
m_pTree->DestroyWindow();
delete?m_pTree;
}

void?CAnalyzeDlg::DoDataExchange(CDataExchange*?pDX)
{
CResizingDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAnalyzeDlg)
DDX_Control(pDX?IDC_EDIT1?m_edit1);
DDX_Text(pDX?IDC_EDIT1?m_input);
DDX_Control(pDX?IDC_EXPLORER1?m_web);
//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CAnalyzeDlg?CResizingDialog)
//{{AFX_MSG_MAP(CAnalyzeDlg)
ON_BN_CLICKED(IDC_BUTTON1?OnButton1)
ON_BN_CLICKED(IDC_BUTTON2?OnButton2)
ON_WM_ACTIVATE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
//?CAnalyzeDlg?message?handlers

void?CAnalyzeDlg::OnButton1()?
{
//?TODO:?Add?your?control?notification?handler?code?here
UpdateData(TRUE);
m_pTree->m_tree.DeleteAllItems();
for(int?i?=?0;?i? {
if?(!m_g.IsInVt(m_input.GetAt(i)))
{
MessageBox(“輸入的句子不全部由終結(jié)符組成“?“錯(cuò)誤“?MB_OK?|?MB_IConstop);
return;
}
}
char?szTempPath[MAX_PATH];?
char?szTempName[MAX_PATH];?
if?(m_strTempFilename?!=?““)
::DeleteFile(m_strTempFilename.c_str());
::GetTempPath(100szTempPath);
::GetTempFileName(szTempPath“LL1“0szTempName);
m_strTempFilename?=?szTempName;
CStdioFile?out;
out.Open(szTempName?CFile::modeCreate?|?CFile::modeWrite);
out.WriteString(“\n“);
out.WriteString(“\n“);
out.WriteString(“tle>Untitled?Documenttle>\n“);
out.WriteString(“ta?http-equiv=\“Content-Type\“?content=\“text/html;?charset=gb2312\“>\n“);
out.WriteString(“\n“);
out.WriteString(“\n“);
out.WriteString(“yle=\“border-collapse:?collapse\“?bordercolor=\“#111111\“>\n“);
????out.WriteString(“ 步驟  符號(hào)棧  輸入串  所用生成式 “);
stack??input;
input.push(‘#‘);
for(i?=?m_input.GetLength()?-1;?i?>=?0;?i?--)
input.push(m_input.GetAt(i));
stack??s;
s.push(‘#‘);
s.push(m_g.GetStart());
Precept?p;
bool?error?=?false;
int?iStep?=?0;
stack??st;
HTREEITEM?hRoot?=?m_pTree->m_tree.InsertItem(CString(m_g.Get

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-07-11?09:52??編譯原理實(shí)驗(yàn)代碼\
?????目錄???????????0??2012-07-11?09:52??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\
?????文件?????????148??2002-05-14?19:43??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\1.TXT
?????文件?????????151??2002-05-14?19:43??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\2.TXT
?????文件?????????158??2002-05-14?19:43??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\3.TXT
?????文件?????????189??2002-05-14?23:21??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\4.TXT
?????文件?????????186??2003-12-01?11:52??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\5.TXT
?????文件????????7555??2002-05-19?00:49??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\AnalyzeDlg.cpp
?????文件????????1850??2002-05-19?00:47??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\AnalyzeDlg.h
?????目錄???????????0??2012-07-11?09:52??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\
?????文件??????144385??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\AnalyzeDlg.obj
?????文件??????305538??2003-11-18?10:43??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\AnalyzeDlg.sbr
?????文件???????64423??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\explorer1.obj
?????文件???????13361??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\explorer1.sbr
?????文件??????156686??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\Grammar.obj
?????文件??????276480??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\Grammar.sbr
?????文件??????217190??2003-12-01?11:38??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWin.exe
?????文件??????443692??2003-12-01?11:38??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWin.ilk
?????文件???????15530??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWin.obj
?????文件?????7038796??2003-11-18?10:43??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWin.pch
?????文件??????656384??2003-12-01?11:38??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWin.pdb
?????文件????????4764??2003-12-01?11:38??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWin.res
?????文件????????3748??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWin.sbr
?????文件???????69074??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWinDlg.obj
?????文件??????269989??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\LL1ForWinDlg.sbr
?????文件???????17505??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\Precept.obj
?????文件??????203091??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\Precept.sbr
?????文件???????25532??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\ResizingDialog.obj
?????文件????????4679??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\ResizingDialog.sbr
?????文件???????43976??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\Set.obj
?????文件???????93346??2003-11-18?10:44??編譯原理實(shí)驗(yàn)代碼\LL1ForWin\Debug\Set.sbr
............此處省略61個(gè)文件信息

評(píng)論

共有 條評(píng)論

相關(guān)資源