Function watchmaker_vm::deserialize
source · [−]pub fn deserialize(raw: u64) -> Instruction
Expand description
Convert from a raw u64 bytecode instruction to a type-safe and programmer friendly type.
Each instruction consists of 64 bits, divided as follows:
7 bit opcode - the instruction field 19 bit operand 1 - as tuple (is_address:1-bit, is_indirect:1-bit, is_state:1-bit, value:16-bit) 19 bit operand 2 - as tuple (is_address:1-bit, is_indirect:1-bit, is_state:1-bit, value:16-bit) 19 bit operand 3 - as tuple (is_address:1-bit, is_indirect:1-bit, is_state:1-bit, value:16-bit)