- IJVM
IJVM is an
assembly language created by Andrew Tanenbaum for hisMIC-1 architecture. It is used to teach assembly basics in his book "Structured Computer Organization".IJVM is mostly a subset of the
JVM assembly language that is used in theJava platform . It is simplified at a point that writing complex programs can become very hard (for example, no shift instructions are provided).IJVM Instructions
Operand descriptions
* byte: A numeric literal, inoctal (032 - leading zero),decimal (26 - no leading digits), orhexadecimal (0x1A - leading zero-x) format. Character literals ('M - leading single quote) are also allowed. Compiled to a 1-byte constant.
* label name: The string name of a label. Compiled to a 2-byte offset
* variable name: The string name of a local variable. Compiled to a 1-byte value, indicating an offset into the local variable frame.
* method name: The string name of a method. When compiled, the address of the method is calculated and put into the constant pool. This operand is then replaced with the 2-byte index (in the constant pool) of the address.
* constant name: The string name of a constant. Compiled to a 2-byte index.
* N/A: This instruction takes no operands.
Wikimedia Foundation. 2010.