OpCodeBED Type
type for operation codes with methods for parsing, printing and encoding
Union cases
Union case | Description |
Full Usage:
ADDN
|
outL := nat2bv(bv2nat(inL) + bv2nat(inR), W) |
Full Usage:
ADDZ
|
outL := int2bv(bv2int(inL) + bv2int(inR), W) |
Full Usage:
AND
|
outL := inL && inR |
Full Usage:
COPY
|
outL := inL |
Full Usage:
DIVN
|
outL := nat2bv(bv2nat(inL) / bv2nat(inR), W); |
Full Usage:
DIVZ
|
outL := int2bv(bv2int(inL) / bv2int(inR), W); |
Full Usage:
DUP
|
outL := inL; outR := inL |
Full Usage:
EQQN
|
outL := bv2nat(inL) == bv2nat(inR) |
Full Usage:
EQQZ
|
outL := bv2int(inL) == bv2int(inR) |
Full Usage:
JOIN
|
outL := inL && inR |
Full Usage:
KILL
|
consume inL |
Full Usage:
LEQN
|
outL := bv2nat(inL) <= bv2nat(inR) |
Full Usage:
LEQZ
|
outL := bv2int(inL) <= bv2int(inR) |
Full Usage:
LESN
|
outL := bv2nat(inL) < bv2nat(inR) |
Full Usage:
LESZ
|
outL := bv2int(inL) < bv2int(inR) |
Full Usage:
LOAD
|
store for LSU |
Full Usage:
MODN
|
outR := nat2bv(bv2nat(inL) % bv2nat(inR), W) |
Full Usage:
MODZ
|
outR := int2bv(bv2int(inL) % bv2int(inR), W) |
Full Usage:
MULN
|
outL := nat2bv(bv2nat(inL) * bv2nat(inR), W) |
Full Usage:
MULZ
|
outL := int2bv(bv2int(inL) * bv2int(inR), W) |
Full Usage:
NEQN
|
outL := bv2nat(inL) != bv2nat(inR) |
Full Usage:
NEQZ
|
outL := bv2int(inL) != bv2int(inR) |
Full Usage:
NOT
|
outL := not(inL) |
Full Usage:
OR
|
outL := inL || inR |
Full Usage:
STORE
|
load for LSU |
Full Usage:
SUBN
|
outL := nat2bv(bv2nat(inL) - bv2nat(inR), W) |
Full Usage:
SUBZ
|
outL := int2bv(bv2int(inL) - bv2int(inR), W) |
Full Usage:
SWAP
|
outL := inR; outR := inL |
Full Usage:
XOR
|
outL := inL xor inR |
Instance members
Instance member | Description |
Full Usage:
this.Encode
Returns: byte
|
Encoding of move code instructions using five bits b4..b0 with a prefix encoding such that
|
Full Usage:
this.IsADDN
Returns: bool
|
|
Full Usage:
this.IsADDZ
Returns: bool
|
|
Full Usage:
this.IsAND
Returns: bool
|
|
Full Usage:
this.IsCOPY
Returns: bool
|
|
Full Usage:
this.IsDIVN
Returns: bool
|
|
Full Usage:
this.IsDIVZ
Returns: bool
|
|
Full Usage:
this.IsDUP
Returns: bool
|
|
Full Usage:
this.IsEQQN
Returns: bool
|
|
Full Usage:
this.IsEQQZ
Returns: bool
|
|
Full Usage:
this.IsJOIN
Returns: bool
|
|
Full Usage:
this.IsKILL
Returns: bool
|
|
Full Usage:
this.IsLEQN
Returns: bool
|
|
Full Usage:
this.IsLEQZ
Returns: bool
|
|
Full Usage:
this.IsLESN
Returns: bool
|
|
Full Usage:
this.IsLESZ
Returns: bool
|
|
Full Usage:
this.IsLOAD
Returns: bool
|
|
Full Usage:
this.IsMODN
Returns: bool
|
|
Full Usage:
this.IsMODZ
Returns: bool
|
|
Full Usage:
this.IsMULN
Returns: bool
|
|
Full Usage:
this.IsMULZ
Returns: bool
|
|
Full Usage:
this.IsNEQN
Returns: bool
|
|
Full Usage:
this.IsNEQZ
Returns: bool
|
|
Full Usage:
this.IsNOT
Returns: bool
|
|
Full Usage:
this.IsOR
Returns: bool
|
|
Full Usage:
this.IsSTORE
Returns: bool
|
|
Full Usage:
this.IsSUBN
Returns: bool
|
|
Full Usage:
this.IsSUBZ
Returns: bool
|
|
Full Usage:
this.IsSWAP
Returns: bool
|
|
Full Usage:
this.IsXOR
Returns: bool
|
|
Static members
Static member | Description |
|
|
|