LL(1)文法分析器
根据某一文法编制调试LL(1)分析程序,以便对任意输入的符号串进行分析。<br>备注:<br>(1)在"所用产生式"一列中如果对应有推导则写出所用产生式;<br>如果为匹配终结符则写明匹配的终结符;如分析异常出错则写为"分析出错";<br>若成功结束则写为"分析成功"。<br>(2) 在此位置输入符号串为用户自行输入的符号串。<br>(3)上述描述的输出过程只是其中一部分的。<br>注意:表达式中允许使用运算符(+-* /)、分割符(括号)、字符i,结束符#;
根据某一文法编制调试LL(1)分析程序,以便对任意输入的符号串进行分析。<br>备注:<br>(1)在"所用产生式"一列中如果对应有推导则写出所用产生式;<br>如果为匹配终结符则写明匹配的终结符;如分析异常出错则写为"分析出错";<br>若成功结束则写为"分析成功"。<br>(2) 在此位置输入符号串为用户自行输入的符号串。<br>(3)上述描述的输出过程只是其中一部分的。<br>注意:表达式中允许使用运算符(+-* /)、分割符(括号)、字符i,结束符#;
编制一个读单词过程,从输入的源程序中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。并依次输出各个单词的内部编码及单词符号自身值。<br>识别保留字:if、int、for、while、do、return、break、continue;<br>单词种别码为1。<br>其他的都识别为标识符;单词种别码为2。<br>常数为无符号整形数;单词种别码为3。<br>运算符包括:+、-、*、/、=、>、<、>=、<=、!= ;<br>单词种别码为4。<br>分隔符包括:,、;、{、}、(、); 单词种别码为5。