编译原理——赋值语句和简单表达式(一)

Compile.java

package per.eyuan.compile;

import per.eyuan.util.ConstantTable;
import per.eyuan.util.FourItemStack;
import per.eyuan.util.IdentifierTable;
import per.eyuan.util.TemporaryTable;
import per.eyuan.util.TwoItem;
import per.eyuan.util.TwoItemStack;

public class Compile {
	IdentifierTable idt=new IdentifierTable();//标识符表
	ConstantTable cont=new ConstantTable();//常数表
	TemporaryTable tt=new TemporaryTable();//临时变量表
	TwoItemStack tis=new TwoItemStack();//二元式栈
	FourItemStack fis=new FourItemStack();//四元式栈

	Initialise init=new Initialise();
	
	IO io=new IO();//读取源代码
	Lexical lex=new Lexical();//词法分析
	Syntax syn=new Syntax();//语法分析
	
	public void inverted(){
		TwoItemStack ntis=new TwoItemStack();
		ntis.push(new TwoItem("#","-"));
		//反序
		int j=tis.getLength();
		for(int i=0;i


 

你可能感兴趣的:(Java)