OP-Code list
| OP-Code | Description |
|---|---|
| nop | No operation, does nothing. |
| push | Pushes a value onto the stack. |
| pop | Pops the top value off the stack. |
| add | Adds two integers from the stack. |
| sub | Subtracts two integers from the stack. |
| mult | Multiplies two integers from the stack. |
| div | Divides two integers from the stack. |
| mod | Performs modulus operation on two integers. |
| dup | Duplicates the top value on the stack. |
| cln | Clones the value at a given stack index. |
| swap | Swaps the top two values on the stack. |
| addf | Adds two floating-point numbers from the stack. |
| subf | Subtracts two floating-point numbers from the stack. |
| multf | Multiplies two floating-point numbers from the stack. |
| divf | Divides two floating-point numbers from the stack. |
| inc | Increments the top integer on the stack. |
| incf | Increments the top floating-point number on the stack. |
| dec | Decrements the top integer on the stack. |
| decf | Decrements the top floating-point number on the stack. |
| jmp | Jumps to a specified instruction. |
| jz | Jumps if the top of the stack is zero. |
| jnz | Jumps if the top of the stack is not zero. |
| call | Calls a function by address. |
| ret | Returns from a function call. |
| ci2f | Converts an integer to a floating-point number. |
| ci2u | Converts an integer to an unsigned integer. |
| cf2i | Converts a floating-point number to an integer. |
| cf2u | Converts a floating-point number to an unsigned integer. |
| cu2i | Converts an unsigned integer to an integer. |
| cu2f | Converts an unsigned integer to a floating-point number. |
| gt | Compares two integers and checks if greater than. |
| gtf | Compares two floating-point numbers and checks if greater than. |
| lt | Compares two integers and checks if less than. |
| ltf | Compares two floating-point numbers and checks if less than. |
| eq | Checks if two integers are equal. |
| eqf | Checks if two floating-point numbers are equal. |
| ge | Checks if an integer is greater than or equal to another. |
| gef | Checks if a floating-point number is greater than or equal to another. |
| le | Checks if an integer is less than or equal to another. |
| lef | Checks if a floating-point number is less than or equal to another. |
| native | Calls a native function. |
| hlt | Halts the execution of the program. |