program.java

来自「myassembler(大学作业)」· Java 代码 · 共 58 行

JAVA
58
字号
import java.util.*;public class Program {   public static Hashtable state = new Hashtable();   public static void main(String args[]) {     try {        Declare d0 = new Declare("a");        Declare d1 = new Declare("b");        ReadVariable ra = new ReadVariable("a");        ReadVariable rb = new ReadVariable("b");        Constant zero = new Constant(0);        Constant seven = new Constant(7);        Assign a0 = new Assign("a", seven);        Assign a1 = new Assign("b", new Constant(-1));                PrintString msg1 = new PrintString("a must be greater than zero.");        PrintString msg2 = new PrintString("b must be greater than zero.");        Loop l1 = new Loop(                     new Or(                       new Equal(rb, zero),                       new GreaterThan(rb, zero)                     ), a1);                        Statement sts[] = new Statement[4];        sts[0] = d0; sts[1] = d1; sts[2] = a0;                Sequence ss0 = new Sequence(new Statement[]{msg2, new Assign("b", seven)});        Selection s1 = new Selection(new GreaterThan(rb, zero), l1, ss0);        Declare d2 = new Declare("ab");        a1 = new Assign("ab", ra);        Assign a3 = new Assign("ab", new Add(new ReadVariable("ab"), ra));        Assign a2 = new Assign("b", new Subtract(rb, new Constant(1)));        l1 = new Loop(                new GreaterThan(rb, zero),                 new Sequence(new Statement[]{a3, a2})                );        Sequence ss1 =              new Sequence(                new Statement[]{                   new Assign("b", new Constant(-1)),                   s1,                   d2,                   a1,                   l1,                   new PrintExpression(new ReadVariable("ab"))                }             );        sts[3] = new Selection(new Not(new GreaterThan(ra, zero)), msg1, ss1);        ss1 = new Sequence(sts);        System.out.println(ss1);        ss1.run();     } catch(ExecutionException e) {e.printStackTrace();}  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?