Instruction Formats
SIC Instruction Format
SIC has one instruction format. It is 3 bytes long.
opcode | x | address | |
|---|---|---|---|
Bits | 0-7 | 8 | 9-23 |
Length | 8 | 1 | 15 |
x indicates indexed-addressing mode. In indexed-addressing mode the target address is address + (X).
SIC/XE Instruction Formats
SIC/XE has four instruction formats.
Format 1
Format 1 is 1 byte long.
opcode | |
|---|---|
Bits | 0-7 |
Format 2
Format 2 is 2 bytes long.
opcode | r1 | r2 | |
|---|---|---|---|
Bits | 0-7 | 8-11 | 12-15 |
Format 3
Format 3 is 3 bytes long. The extended bit is always 0.
opcode | n | i | x | b | p | e | disp | |
|---|---|---|---|---|---|---|---|---|
Bits | 0-5 | 6 | 7 | 8 | 9 | 10 | 11 | 12-23 |
Description | 6 bit opcode | indirect | immediate | indexed | base-relative | PC-relative | extended | 12 bit displacement |
Format 4
Format 4 is 4 bytes long. It is similar to format 3, but the extended bit is set to 1 and the address is 20 bits instead of 12 bits.
opcode | n | i | x | b | p | e | address | |
|---|---|---|---|---|---|---|---|---|
Bits | 0-5 | 6 | 7 | 8 | 9 | 10 | 11 | 12-31 |
Description | 6 bit opcode | indirect | immediate | indexed | base-relative | PC-relative | extended | 20 bit address |