SIC Machine:: (Simplified Instructional Computer)
SIC Machine:: (Simplified Instructional Computer)
There are two versions of the SIC machine, "simple" SIC and SIC/XE
(extended environment).
Simple SIC:
Registers:
mnemonic number
A 0 accumulator
X 1 index register
L 2 link register
PC 8 program counter
SW 9 status word
Data formats:
Numeric - 24 bit 2's complement
Character - 8 bit ASCII
Instruction format:
one address instruction architecture, 24 bits as follows
8 1 15
op code x address
index bit
x = 0 ⇔ direct addressing mode
x = 1 ⇔ indexed/direct addressing mode
I/O:
Each device has an 8-bit address; data is transferred in single byte
quantities to or from the rightmost byte of register A.
Added Registers:
mnemonic number
B 3 base register
S 4 general working register
T 5 general working register
F 6 floating point accumulator; it uses
the 24 bits that could be R7 to
provide a 48 bit register
1. 1-byte format (e.g., SIO, HIO, TIO, NORM) - not used in COP 3601
8
op code
2. 2-byte format
8 4 4
op code R1 R2
The two addresses typically represent registers, so no memory
access is needed to execute these.
3. 3-byte format
6 6 12
op code nixbpe displacement
address
index bit
If the "n-bit" and the "i-bit" are both 0 then the instruction is
interpreted as a simple SIC instruction.
4. 4-byte format
6 6 20
op code nixbpe address
n = indirect bit
i = immediate bit
x = index bit
b = base bit
p = PC relative bit
e = extended bit
e = 0 ⇒ 3 byte format
e = 1 ⇒ 4 byte format
x = 1 ⇒ indexed addressing