SIC/XE Reference

Registers

SIC and SIC/XE machines have several 24-bit registers for various purposes.

LetterIDPurposeSIC/XE only
A0Accumulator, used for basic arithmetic operations.
X1Index, stores and calculates addresses. Often incremented in loops.
L2Linkage, set by JSUB and used by RSUB.
PC8Program counter, contains the address of the next instruction to execute. Used for program counter-relative addressing. Jumps write to this register.
SW9Status word, contains a variety of information like carry, overflow, and condition code flags. See section below.
B3Base, used for base-relative addressing.✓
S4General purpose.✓
T5General purpose.✓
F6Register for floating-point operations. This is 48 bits instead of the usual 24.✓

Status Word (SW) register

The status word SW contains several pieces of information that are important in the handling of interrupts and other instructions. A reference of its bits is provided below.

NameMODEIDLEIDCCMASKICODE
Bit position012-56-78-1112-1516-23
Details0 = user mode
1 = supervisor mode
0 = running
1 = idle
Process identifierCondition code
The exact values used to indicate <, =, and > are undefined.
Interrupt maskUnusedInterruption code

Last updated on

On this page