Syntax: move <int32> <reg>
- writes the int32 into the register
Syntax: push <int32>
- pushes the int32 onto the stack
Syntax: pop <reg>
- pops the int32 from the stack
- writes the int32 into the register
Syntax: or <reg> <int32>
- read value from reg
- does 'bitwise or' with the two values
- put the result back into the reg
Syntax: xor <reg> <int32>
- read value from reg
- does 'bitwise xor' with the two values
- put the result back into the reg
Syntax: and <reg> <int32>
- read value from reg
- does 'bitwise and' with the two values
- put the result back into the reg
Syntax: lshift <reg> <int32>
- read value from reg
- shifts the bits of the value x times to the left
- put the result back into the reg
Syntax: rshift <reg> <int32>
- read value from reg
- shifts the bits of the value x times to the right
- put the result back into the reg
Syntax: add <reg> <int32>
- read value from reg
- add two values
- put the result back into the reg
Syntax: subtract <reg> <int32>
- read value from reg
- subtract two values
- put the result back into the reg
Syntax: multiply <reg> <int32>
- read value from reg
- multiply two values
- put the result back into the reg
Syntax: divide <reg> <int32>
- read value from reg
- divide two values
- put the result back into the reg
Syntax: modulo <reg> <int32>
- read value from reg
- divide two values
- put the rest back into the reg
Syntax: malloc <int32>
- allocates x bytes of the memory
- pushes the pointer to the start onto the stack
Syntax: free <int32>
- frees the chunk of allocated memory at the address
Syntax: memset <int32> <byte>
- sets the byte at the address
Syntax: memget <int32>
- read value in memory at the address
- pushes the value onto the stack