⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 expr.java

📁 编译原理“龙书”(Compilers: Principles, Techniques, and Tools)中提供的一个小型Syntax-Directed Translator
💻 JAVA
字号:
package inter;import lexer.*; import symbols.*;public class Expr extends Node {   public Token op;   public Type type;   Expr(Token tok, Type p) { op = tok; type = p; }   public Expr gen() { return this; }   public Expr reduce() { return this; }   public void jumping(int t, int f) { emitjumps(toString(), t, f); }   public void emitjumps(String test, int t, int f) {      if( t != 0 && f != 0 ) {         emit("if " + test + " goto L" + t);         emit("goto L" + f);      }      else if( t != 0 ) emit("if " + test + " goto L" + t);      else if( f != 0 ) emit("iffalse " + test + " goto L" + f);      else ; // nothing since both t and f fall through   }   public String toString() { return op.toString(); }}

⌨️ 快捷键说明

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