00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0A | 0B | 0C | 0D | 0E | 0F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F |
01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 |
ORRRP [op_type 4]
Opcode | Register | Register | Register | [Options] |
---|---|---|---|---|
6-bits | 6-bits | 6-bits | 6-bits | 8-bits |
Instructions that use the ORRRP bit layout
- AF
-
AF $R1 $R2 $R3Add the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- AI
-
AI $R1 $R2 $R3Add the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are integers.
- CA
-
CA $R1 $R2 $R3Binary AND operation between the bit values in register $R2 and register $R3 then place results into register $R1.
- CO
-
CO $R1 $R2 $R3Binary OR operation between the bit values in register $R2 and register $R3 then place results into register $R1.
- CP
-
CP $R1 $R2Copy the contnents of register $R2 into register $R1
- CX
-
CX $R1 $R2 $R3Binary XOR operation between the bit values in register $R2 and register $R3 then place results into register $R1.
- DF
-
DF $R1 $R2 $R3Divide the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- DI
-
DI $R1 $R2 $R3Divide the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are integers.
- MF
-
MF $R1 $R2 $R3Multiply the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- MI
-
MI $R1 $R2 $R3Multiply the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are integers.
- RF
-
RF $R1 $R2 $R3Find the remander of the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- RI
-
RI $R1 $R2 $R3Find the remander of the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are integers.
- SF
-
SF $R1 $R2 $R3Subtract the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- SHL
-
SHL $R1 $R2 $R3Shift the bits in register $R2 to the left by the integer value in register $R3 and place results into register $R1.
- SHR
-
SHR $R1 $R2 $R3Shift the bits in register $R2 to the right by the integer value in register $R3 and place results into register $R1.
- SI
-
SI $R1 $R2 $R3Subtract the bit value in register $R2 with register $R3 and place results into register $R1. Treat the values in the registers as if they are integers.
ORRT [op_type 5]
Opcode | Register | Register | Tag |
---|---|---|---|
6-bits | 6-bits | 6-bits | 14-bits |
Instructions that use the ORRT bit layout
- BE
-
BE $R1 $R2 <TAG>Branch if the value in register $R1 is equal to register $R2. Go to code location where <TAG> is defined.
- BGF
-
BGF $R1 $R2 <TAG>Branch if the value in register $R1 is greater than the value in register $R2. Go to code location where <TAG> is defined. Treat values in registers as floating point values using the IEEE 754-1985 specification.
- BGS
-
BGS $R1 $R2 <TAG>Branch if the value in register $R1 is greater than the value in register $R2. Go to code location where <TAG> is defined. Treat values in registers as signed integers
- BGU
-
BGU $R1 $R2 <TAG>Branch if the value in register $R1 is greater than the value in register $R2. Go to code location where <TAG> is defined. Treat values in registers as unsigned integers
- BLF
-
BLF $R1 $R2 <TAG>Branch if the value in register $R1 is less than the value in register $R2. Go to code location where <TAG> is defined. Treat values in registers as floating point values using the IEEE 754-1985 specification.
- BLS
-
BLS $R1 $R2 <TAG>Branch if the value in register $R1 is less than the value in register $R2. Go to code location where <TAG> is defined. Treat values in registers as signed integers
- BLU
-
BLU $R1 $R2 <TAG>Branch if the value in register $R1 is less than the value in register $R2. Go to code location where <TAG> is defined. Treat values in registers as unsigned integers
- BN
-
BN $R1 $R2 <TAG>Branch if the value in register $R1 is not equal to register $R2. Go to code location where <TAG> is defined.
ORRV [op_type 7]
Opcode | Register | Register | Value |
---|---|---|---|
6-bits | 6-bits | 6-bits | 14-bits |
Instructions that use the ORRV bit layout
- CAV
-
CAV $R1 $R2 <0-16383>Binary AND operation between the bit values in register $R2 and integer value <0-16383> then place results into register $R1.
- COV
-
COV $R1 $R2 <0-16383>Binary OR operation between the bit values in register $R2 and integer value <0-16383> then place results into register $R1.
- CXV
-
CXV $R1 $R2 <0-16383>Binary XOR operation between the bit values in register $R2 and integer value <0-16383> then place results into register $R1.
- NO
-
NO $R1 $R2NOT the value in register $R2 and place the results into register $R1. In other words, flip all the bits.
- SHLV
-
SHLV $R1 $R2 <0-32>Shift the bits in register $R2 to the left by the integer value <0-32> and place results into register $R1.
- SHRV
-
SHRV $R1 $R2 <0-32>Shift the bits in register $R2 to the right by the integer value <0-32> and place results into register $R1.
ORM [op_type 8]
Opcode | Register | Memory |
---|---|---|
6-bits | 6-bits | 20-bits |
Instructions that use the ORM bit layout
- LM
-
LM $R1 <0-1048575>Load the memory location <0-1048575> with the bit values from register $R1.
- LR
-
LR $R1 <0-1048575>Load register $R1 with the bit values from the memory location <0-1048575>.
ORV [op_type 6]
Opcode | Register | Value |
---|---|---|
6-bits | 6-bits | 20-bits |
Instructions that use the ORV bit layout
- AFV
-
AFV $R1 <0-1048575>Add the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- AIV
-
AIV $R1 <0-1048575>Add the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are integers.
- DFV
-
DFV $R1 <0-1048575>Divide the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- DIV
-
DIV $R1 <0-1048575>Divide the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are integers.
- LC
-
LC $R1Clear the value in register $R1. $R1 will have a value of 0 (zero).
- LV
-
LV $R1 <0-1048575>Load the bit value <0-1048575> into register $R1.
- MFV
-
MFV $R1 <0-1048575>Multiply the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- MIV
-
MIV $R1 <0-1048575>Multiply the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are integers.
- NOV
-
NOV $R1 <0-1048575>NOT the integer value <0-1048575> and place the results into register $R1. In other words, flip all the bits.
- RFV
-
RFV $R1 <0-1048575>Divide the bit value in register $R1 with value <0-1048575> and place the remainder results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- RIV
-
RIV $R1 <0-1048575>Divide the bit value in register $R1 with value <0-1048575> and place the remainder results into register $R1. Treat the values in the registers as if they are integers.
- SFV
-
SFV $R1 <0-1048575>Subtract the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are floating point values using the IEEE 754-1985 specification.
- SIV
-
SIV $R1 <0-1048575>Subtract the bit value in register $R1 with value <0-1048575> and place results into register $R1. Treat the values in the registers as if they are integers.
OT [op_type 2]
Opcode | Tag |
---|---|
6-bits | 26-bits |
Instructions that use the OT bit layout
- E
-
EExit execution of the progam.
- J
-
J <TAG>Jump to code location of <TAG>