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

  • 大小: 80KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-29
  • 語言: Java
  • 標簽: www??

資源簡介

對于C#、VB等高級語言而言,此時編譯器完成的功能是把源碼(SourceCode)編譯成通用中間語言(MSIL/CIL)的字節(jié)碼(ByteCode)。最后運行的時候通過通用語言運行庫的轉(zhuǎn)換,編程最終可以被CPU直接計算的機器碼(NativeCode)。

資源截圖

代碼片段和文件信息

import?java.io.File;
import?java.io.RandomAccessFile;
import?java.util.ArrayList;
import?java.util.HashMap;

public?class?AnalyseList{

//?成員變量產(chǎn)生式集,終結(jié)符集,非終結(jié)符集
ArrayList?productions;
ArrayList?terminals;
ArrayList?nonterminals;
HashMap>?firsts;
HashMap>?follows;

public?AnalyseList(){
productions?=?new?ArrayList();
terminals?=?new?ArrayList();
nonterminals?=?new?ArrayList();
firsts?=?new?HashMap>();
follows?=?new?HashMap>();

setProductions();
setNonTerminals();
setTerminals();

getFirst();
getFollow();
getSelect();

Predict();

}

//?從文件中讀取產(chǎn)生式
public?void?setProductions(){
try?{
File?file?=?new?File(“grammar.txt“);
RandomAccessFile?randomfile?=?new?RandomAccessFile(file?“r“);
String?line;
String?left;
String?right;
LProduction?production;
while?((line=randomfile.readLine())!=null)?{
left?=?line.split(“->“)[0].trim();
right?=?line.split(“->“)[1].trim();
production?=?new?LProduction(left?right.split(“?“));
productions.add(production);
}
randomfile.close();
}?catch?(Exception?e)?{
//?TODO:?handle?exception
e.printStackTrace();
}

}

//?獲得非終結(jié)符集
public?void?setNonTerminals(){
try?{
File?file?=?new?File(“grammar.txt“);
RandomAccessFile?randomfile?=?new?RandomAccessFile(file?“r“);
String?line;
String?left;
while?((line=randomfile.readLine())!=null)?{
left?=?line.split(“->“)[0].trim();
if(nonterminals.contains(left)){
continue;
}
else?{
nonterminals.add(left);
}
}
randomfile.close();
}?catch?(Exception?e)?{
//?TODO:?handle?exception
e.printStackTrace();
}
}

//?獲得終結(jié)符集依賴于獲得產(chǎn)生式函數(shù)
public?void?setTerminals(){
//?遍歷所有的產(chǎn)生式
String[]?rights;
for?(int?i?=?0;?i? rights?=?productions.get(i).returnRights();
//?從右側(cè)尋找終結(jié)符
for?(int?j?=?0;?j? if(nonterminals.contains(rights[j])||rights[j].equals(“$“)){
continue;
}
else?{
terminals.add(rights[j]);
}
}
}
}

//?獲取First集
public?void?getFirst(){
//?終結(jié)符全部求出first集
ArrayList?first;
for?(int?i?=?0;?i? first?=?new?ArrayList();
first.add(terminals.get(i));
firsts.put(terminals.get(i)?first);
}
//?給所有非終結(jié)符注冊一下
for?(int?i?=?0;?i? first?=?new?ArrayList();
firsts.put(nonterminals.get(i)?first);
}

boolean?flag;
while?(true)?{
flag?=?true;
String?left;
String?right;
String[]?rights;
for?(int?i?=?0;?i? left?=?productions.get(i).returnLeft();
rights?=?productions.get(i).returnRights();
for?(int?j?=?0;?j? right?=?rights[j];
//?right是否存在,遇到空怎么辦
if(!right.equals(“$“)){
for?(int?l?=?0;?l?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-06-24?23:28??semantic\
?????文件?????????295??2015-06-24?23:28??semantic\.classpath
?????文件?????????367??2015-06-24?23:28??semantic\.project
?????目錄???????????0??2015-06-24?23:28??semantic\.settings\
?????文件??????????55??2015-06-24?23:28??semantic\.settings\org.eclipse.core.resources.prefs
?????文件?????????587??2015-06-24?23:28??semantic\.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2018-12-19?19:00??semantic\bin\
?????文件????????7078??2018-12-19?19:00??semantic\bin\AnalyseList.class
?????文件?????????635??2018-12-19?19:00??semantic\bin\ClientGui.class
?????文件?????????780??2018-12-19?19:00??semantic\bin\ConstantType.class
?????文件????????3553??2018-12-19?19:00??semantic\bin\ErrorProduction.class
?????文件?????????527??2018-12-19?19:00??semantic\bin\ErrorToken.class
?????文件???????30453??2018-12-19?19:00??semantic\bin\GrammarComplier.class
?????文件?????????955??2018-12-19?19:00??semantic\bin\Id.class
?????文件????????8093??2018-12-19?19:00??semantic\bin\Lexframe.class
?????文件????????3278??2018-12-19?19:00??semantic\bin\LineNumberHeaderView.class
?????文件?????????794??2018-12-19?19:00??semantic\bin\LProduction.class
?????文件???????12874??2018-12-19?19:00??semantic\bin\MyScanner.class
?????文件????????1067??2018-12-19?19:00??semantic\bin\Node.class
?????文件????????5028??2018-12-19?19:00??semantic\bin\Production.class
?????文件????????2563??2018-12-19?19:00??semantic\bin\SemanticAnalyse.class
?????文件????????1932??2018-12-19?19:00??semantic\bin\Symbol.class
?????文件????????2292??2018-12-19?19:00??semantic\bin\SymbolName.class
?????文件???????10827??2018-12-19?19:00??semantic\bin\TextLex.class
?????文件????????3479??2018-12-19?19:00??semantic\bin\TextParse.class
?????文件????????4899??2018-12-19?19:00??semantic\bin\Token.class
?????文件????????2210??2015-06-24?23:28??semantic\grammar.txt
?????文件???????10798??2018-12-19?19:41??semantic\predictldy.txt
?????文件??????????88??2015-06-24?23:28??semantic\sample.txt
?????目錄???????????0??2015-06-24?23:28??semantic\src\
?????文件????????8633??2015-06-24?23:28??semantic\src\AnalyseList.java
............此處省略16個文件信息

評論

共有 條評論