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

📄 jopinstr.java

📁 Java Op Processor java vhdl processor
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		new JopInstr("lshr", 1, IMP_NO, 1),		// 0x7B		new JopInstr("iushr", 1, IMP_ASM, 1),	// 0x7C		new JopInstr("lushr", 1, IMP_NO, 1),	// 0x7D		new JopInstr("iand", 1, IMP_ASM, 1),		// 0x7E		new JopInstr("land", 1, IMP_NO, 1),		// 0x7F		new JopInstr("ior", 1, IMP_ASM, 1),		// 0x80		new JopInstr("lor", 1, IMP_NO, 1),		// 0x81		new JopInstr("ixor", 1, IMP_ASM, 1),		// 0x82		new JopInstr("lxor", 1, IMP_NO, 1),		// 0x83		new JopInstr("iinc", 3, IMP_ASM, 11),		// 0x84		new JopInstr("i2l", 1, IMP_NO, 1),		// 0x85		new JopInstr("i2f", 1, IMP_NO, 1),		// 0x86		new JopInstr("i2d", 1, IMP_NO, 1),		// 0x87		new JopInstr("l2i", 1, IMP_ASM, 3),		// 0x88		new JopInstr("l2f", 1, IMP_NO, 1),		// 0x89		new JopInstr("l2d", 1, IMP_NO, 1),		// 0x8A		new JopInstr("f2i", 1, IMP_NO, 1),		// 0x8B		new JopInstr("f2l", 1, IMP_NO, 1),		// 0x8C		new JopInstr("f2d", 1, IMP_NO, 1),		// 0x8D		new JopInstr("d2i", 1, IMP_NO, 1),		// 0x8E		new JopInstr("d2l", 1, IMP_NO, 1),		// 0x8F		new JopInstr("d2f", 1, IMP_NO, 1),		// 0x90		new JopInstr("i2b", 1, IMP_NO, 1),		// 0x91		new JopInstr("i2c", 1, IMP_ASM, 2),		// 0x92		new JopInstr("i2s", 1, IMP_NO, 1),		// 0x93		new JopInstr("lcmp", 1, IMP_NO, 1),		// 0x94		new JopInstr("fcmpl", 1, IMP_NO, 1),	// 0x95		new JopInstr("fcmpg", 1, IMP_NO, 1),	// 0x96		new JopInstr("dcmpl", 1, IMP_NO, 1),	// 0x97		new JopInstr("dcmpg", 1, IMP_NO, 1),	// 0x98		new JopInstr("ifeq", 3, IMP_ASM, 4),		// 0x99		new JopInstr("ifne", 3, IMP_ASM, 4),		// 0x9A		new JopInstr("iflt", 3, IMP_ASM, 4),		// 0x9B		new JopInstr("ifge", 3, IMP_ASM, 4),		// 0x9C		new JopInstr("ifgt", 3, IMP_ASM, 4),		// 0x9D		new JopInstr("ifle", 3, IMP_ASM, 4),		// 0x9E		new JopInstr("if_icmpeq", 3, IMP_ASM, 4),	// 0x9F		new JopInstr("if_icmpne", 3, IMP_ASM, 4),	// 0xA0		new JopInstr("if_icmplt", 3, IMP_ASM, 4),	// 0xA1		new JopInstr("if_icmpge", 3, IMP_ASM, 4),	// 0xA2		new JopInstr("if_icmpgt", 3, IMP_ASM, 4),	// 0xA3		new JopInstr("if_icmple", 3, IMP_ASM, 4),	// 0xA4		new JopInstr("if_acmpeq", 3, IMP_ASM, 4),	// 0xA5		new JopInstr("if_acmpne", 3, IMP_ASM, 4),	// 0xA6		new JopInstr("goto", 3, IMP_ASM, 4),			// 0xA7		new JopInstr("jsr", 3, IMP_NO, 1),			// 0xA8		new JopInstr("ret", 2, IMP_NO, 1),			// 0xA9		new JopInstr("tableswitch", 0, IMP_NO, 1),	// 0xAA		new JopInstr("lookupswitch", 0, IMP_NO, 1),	// 0xAB		new JopInstr("ireturn", 1, IMP_ASM, 12),		// 0xAC		new JopInstr("lreturn", 1, IMP_NO, 1),		// 0xAD		new JopInstr("freturn", 1, IMP_NO, 1),		// 0xAE		new JopInstr("dreturn", 1, IMP_NO, 1),		// 0xAF		new JopInstr("areturn", 1, IMP_ASM, 1),		// 0xB0		new JopInstr("return", 1, IMP_ASM, 10),		// 0xB1		new JopInstr("getstatic", 3, IMP_ASM, 11),	// 0xB2		// derzeit!!!		new JopInstr("putstatic", 3, IMP_ASM, 11),	// 0xB3		new JopInstr("getfield", 3, IMP_ASM, 30),		// 0xB4		new JopInstr("putfield", 3, IMP_ASM, 30),		// 0xB5		new JopInstr("invokevirtual", 3, IMP_ASM, 30),	// 0xB6		new JopInstr("invokespecial", 3, IMP_ASM, 30),	// 0xB7		new JopInstr("invokestatic", 3, IMP_ASM, 30),		// 0xB8	cnt ????		new JopInstr("invokeinterface", 5, IMP_ASM, 30),	// 0xB9		new JopInstr("unused_ba", 1, IMP_NO, 1),		// 0xBA		new JopInstr("new", 3, IMP_ASM, 30),				// 0xBB		new JopInstr("newarray", 2, IMP_ASM, 26),			// 0xBC	// mit mem!!		new JopInstr("anewarray", 3, IMP_JAVA, 1),		// 0xBD		new JopInstr("arraylength", 1, IMP_ASM, 18),		// 0xBE		// mit mem!!		new JopInstr("athrow", 1, IMP_NO, 1),			// 0xBF		new JopInstr("checkcast", 3, IMP_NO, 1),		// 0xC0		new JopInstr("instanceof", 3, IMP_NO, 1),		// 0xC1		new JopInstr("monitorenter", 1, IMP_ASM, 9),		// 0xC2		new JopInstr("monitorexit", 1, IMP_ASM, 12),		// 0xC3		new JopInstr("wide", 0, IMP_NO, 1),				// 0xC4		new JopInstr("multianewarray", 4, IMP_NO, 1),	// 0xC5		new JopInstr("ifnull", 3, IMP_ASM, 1),			// 0xC6		new JopInstr("ifnonnull", 3, IMP_ASM, 1),		// 0xC7		new JopInstr("goto_w", 5, IMP_NO, 1),			// 0xC8		new JopInstr("jsr_w", 5, IMP_NO, 1),			// 0xC9		new JopInstr("breakpoint", 1, IMP_NO, 1),		// 0xCA////	reserved instructions//		new JopInstr("resCB", 1, IMP_NO, 1),			// 0xCB		new JopInstr("resCC", 1, IMP_NO, 1),			// 0xCC		new JopInstr("resCD", 1, IMP_NO, 1),			// 0xCD		new JopInstr("resCE", 1, IMP_NO, 1),			// 0xCE		new JopInstr("resCF", 1, IMP_NO, 1),			// 0xCF		new JopInstr("jopsys_null", 1, IMP_NO, 1),			// 0xD0		new JopInstr("jopsys_rd", 1, IMP_ASM, 3),			// 0xD1		new JopInstr("jopsys_wr", 1, IMP_ASM, 3),			// 0xD2		new JopInstr("jopsys_rdmem", 1, IMP_ASM, 15),			// 0xD3		new JopInstr("jopsys_wrmem", 1, IMP_ASM, 15),			// 0xD4		new JopInstr("jopsys_rdint", 1, IMP_ASM, 8),			// 0xD5		new JopInstr("jopsys_wrint", 1, IMP_ASM, 8),			// 0xD6		new JopInstr("jopsys_getsp", 1, IMP_ASM, 3),			// 0xD7		new JopInstr("jopsys_setsp", 1, IMP_ASM, 4),			// 0xD8		new JopInstr("jopsys_getvp", 1, IMP_ASM, 1),			// 0xD9		new JopInstr("jopsys_setvp", 1, IMP_ASM, 2),			// 0xDA		new JopInstr("jopsys_int2ext", 1, IMP_ASM, 100),			// 0xDB		new JopInstr("jopsys_ext2int", 1, IMP_ASM, 100),			// 0xDC		new JopInstr("jopsys_nop", 1, IMP_NO, 1),			// 0xDD		new JopInstr("jopsys_invoke", 1, IMP_NO, 1),			// 0xDE		new JopInstr("resDF", 1, IMP_NO, 1),			// 0xDF		new JopInstr("getstatic_ref", 3, IMP_ASM, 30),   // 0xE0		new JopInstr("putstatic_ref", 3, IMP_ASM, 30),			// 0xE1		new JopInstr("getfield_ref", 3, IMP_ASM, 30),			// 0xE2		new JopInstr("putfield_ref", 3, IMP_ASM, 30),			// 0xE3		new JopInstr("getstatic_long", 3, IMP_ASM, 30),			// 0xE4		new JopInstr("putstatic_long", 3, IMP_ASM, 30),			// 0xE5		new JopInstr("getfield_long", 3, IMP_ASM, 30),			// 0xE6		new JopInstr("putfield_long", 3, IMP_ASM, 30),			// 0xE7		new JopInstr("resE8", 1, IMP_NO, 1),			// 0xE8		new JopInstr("resE9", 1, IMP_NO, 1),			// 0xE9		new JopInstr("resEA", 1, IMP_NO, 1),			// 0xEA		new JopInstr("resEB", 1, IMP_NO, 1),			// 0xEB		new JopInstr("resEC", 1, IMP_NO, 1),			// 0xEC		new JopInstr("resED", 1, IMP_NO, 1),			// 0xED		new JopInstr("resEE", 1, IMP_NO, 1),			// 0xEE		new JopInstr("resEF", 1, IMP_NO, 1),			// 0xEF		new JopInstr("sys_int", 1, IMP_ASM, 1),			// 0xF0		new JopInstr("sys_exc", 1, IMP_ASM, 1),			// 0xF1		new JopInstr("resF2", 1, IMP_NO, 1),			// 0xF2		new JopInstr("resF3", 1, IMP_NO, 1),			// 0xF3		new JopInstr("resF4", 1, IMP_NO, 1),			// 0xF4		new JopInstr("resF5", 1, IMP_NO, 1),			// 0xF5		new JopInstr("resF6", 1, IMP_NO, 1),			// 0xF6		new JopInstr("resF7", 1, IMP_NO, 1),			// 0xF7		new JopInstr("resF8", 1, IMP_NO, 1),			// 0xF8		new JopInstr("resF9", 1, IMP_NO, 1),			// 0xF9		new JopInstr("resFA", 1, IMP_NO, 1),			// 0xFA		new JopInstr("resFB", 1, IMP_NO, 1),			// 0xFB		new JopInstr("resFC", 1, IMP_NO, 1),			// 0xFC		new JopInstr("resFD", 1, IMP_NO, 1),			// 0xFD		new JopInstr("sys_noim", 1, IMP_ASM, 1),			// 0xFE		new JopInstr("sys_init", 1, IMP_ASM, 1),			// 0xFF	};	//	//	Mapping of 'native' methods from Native.java	//	to special bytecodes	//	With JCC the index in Native was used, but with JOPizer	//	and BCEL we need the expilicit mapping.		private static String[] nativeMapping = {			"rd", "jopsys_rd",			"wr", "jopsys_wr",			"rdMem", "jopsys_rdmem",			"wrMem", "jopsys_wrmem",			"rdIntMem", "jopsys_rdint",			"wrIntMem", "jopsys_wrint",			"getSP", "jopsys_getsp",			"setSP", "jopsys_setsp",			"getVP", "jopsys_getvp",			"setVP", "jopsys_setvp",			"int2extMem", "jopsys_int2ext",			"ext2intMem", "jopsys_ext2int",			"makeLong", "jopsys_nop",			"invoke", "jopsys_invoke",	};		static {		int i;		for (i=0; i<ia.length; ++i) {			map.put(ia[i].name, new Integer(i));		}		for (i=0; i<nativeMapping.length; i+=2) {			natMap.put(nativeMapping[i], nativeMapping[i+1]);		}	}	public static void main(String[] args) {		for (int i=0; i<256; ++i) {			System.out.print(i+"; ");			System.out.print(JopInstr.name(i)+"; ");			System.out.println(JopInstr.cnt(i));		}/*		for (int i=0; i<256; ++i) {			System.out.print(i+"\t");			System.out.print(JopInstr.name(i)+"\t");			int imp = JopInstr.imp(i);			if (imp==IMP_ASM) {				if (JopInstr.cnt(i)==1) {					System.out.println("hw");				} else {					System.out.println("mc");				}			} else if (imp==IMP_JAVA) {				System.out.println("Java");			} else {				System.out.println("NI");			}		}*/	}}

⌨️ 快捷键说明

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