ICL 1900 Series Computers

Order Codes

The information in the table below was taken from the ICL Technical Publication 4004 PLAN Reference Manual.

  Octal Nmenonic Function
Group 00x
Order Codes
000 LDX  X  N(M) Load to X
001 ADX  X  N(M) Add into X
002 NGX  X  N(M) Negative Load into X
003 SBX  X  N(M) Subtract from X
004 LDXC  X  N(M) Load into X with Carry
005 ADXC  X  N(M) Add into X with Carry
006 NGXC  X  N(M) Negative Load into X with Carry
007 SBXC  X  N(M) Subtract from X with Carry
Group 01x
Order Codes
010 STO  X  N(M) Store the Contents of X
011 ADS  X  N(M) Add X to Store
012 NGS  X  N(M) Negative Load into Store
013 SBS  X  N(M) Subtract from Store
014 STOC  X  N(M) Store the Contents of X with Carry
015 ADSC  X  N(M) Add X to Store with Carry
016 NGSC  X  N(M) Negative Load into Store with Carry
017 SBSC  X  N(M) Subtract from Store with Carry
Group 02x
Order Codes
020 ANDX  X  N(M) Logical AND into X
021 ORX  X  N(M) Logical INCLUSIVE OR into X
022 ERX  X  N(M) Logical EXCLUSIVE OR into X
023 OBEY    N(M) Obey the Instruction at N
024 LDCH  X  N(M) Load Character to X
025 LDEX  X  N(M) Load Exponent
026 TXU  X  N(M) Test X unequal
027 TXL  X  N(M) Test X Less
Group 03x
Order Codes
030 ANDS  X  N(M) Logical AND into Store
031 ORS  X  N(M) Logical INCLUSIVE OR into Store
032 ERS  X  N(M) Logical EXCLUSIVE OR into Store
033 STOZ    N(M) Store Zero
034 DCH  X  N(M) Deposit Character
035 DEX  X  N(M) Deposit Exponent
036 DSA  X  N(M) Deposit Short Address
037 DLA  X  N(M) Deposit Long Address
Group 04x
Order Codes
040 MPY  X  N(M) Multiply
041 MPR  X  N(M) Multiply and Round
042 MPA  X  N(M) Multiply and Accumulate
043 CDB  X  N(M) Convert Decimal to Binary
044 DVD  X  N(M) Unrounded Double Length Divide
045 DVR  X  N(M) Rounded Double Length Divide
046 DVS  X  N(M) Single Length Divide
047 CBD  X  N(M) Convert Binary to Decimal
Group 05x
Order Codes
050 BZE  X  N Branch if X is Zero
052 BNZ  X  N Branch if X is Not Zero
054 BPZ  X  N Branch if X is Positive or Zero
056 BNG  X  N Branch if X is Negative
Group 06x
Order Codes
060 BUX  X  N Branch on Unit Indexing
062 BDX  X  N Branch on Double Indexing
064 BCHX  X  N Branch on Character Indexing
066 BCT  X  N Branch on Count
Group 07x
Order Codes
070 CALL  X  N Subroutine Entry
072 EXIT  X  N Leave Subroutine
074
(X=0)
BRN    N Unconditional Branch
074
(X=1)
BVS    N Branch if V Set
074
(X=2)
BVSR    N Branch if V Set; Leave V Clear
074
(X=3)
BVC    N Branch if V Clear
074
(X=4)
BVCR    N Branch if V Clear and Clear V
074
(X=5)
BCS    N Branch if C is Set
074
(X=6)
BCC    N Branch if C is Clear
074
(X=7)
BVCI    N Branch if V Clear; Invert V
076 BFP    N Branch State of Floating-Point Accumulator or Floating-Point Overflow
Group 10x
Order Codes
100 LDN  X  N(M) Load Direct Operand into X
101 ADN  X  N(M) Add Direct Operand into X
102 NGN  X  N(M) Load the Complement of N
103 SBN  X  N(M) Subtract Direct Operand from X
104 LDNC  X  N(M) Load Direct Operand into X with Carry
105 ADNC  X  N(M) Add Direct Operand into X with Carry
106 NGNC  X  N(M) Load the Complement of N with Carry
107 SBNC  X  N(M) Subtract Direct Operand from X with Carry
Group 11x
Order Codes
110
(Nt=0)
SLC  X  N(M) Shift Left Circular (Single Length)
110
(Nt=1)
SLL  X  N(M) Shift Left Logical (Single Length)
110
(Nt=2)
(Nt=3)
SLA  X  N(M) Shift Left Arithmetic (Single Length)
111
(Nt=0)
SLC  XX*  N(M) Shift Left Circular (Double Length)
111
(Nt=1)
SLL  XX*  N(M) Shift Left Logical (Double Length)
111
(Nt=2)
(Nt=3)
SLA  XX*  N(M) Shift Left Arithmetic (Double Length)
112
(Nt=0)
SRC  X  N(M) Shift Right Circular (Single Length)
112
(Nt=1)
SRL  X  N(M) Shift Right Logical (Single Length)
112
(Nt=2)
SRA  X  N(M) Shift Right Arithmetic (Single Length)
112
(Nt=3)
SRAV  X  N(M) Special Shift Right (Single Length)
113
(Nt=0)
SRC  XX*  N(M) Shift Right Circular (Double Length)
113
(Nt=1)
SRL  XX*  N(M) Shift Right Logical (Double Length)
113
(Nt=2)
SRA  XX*  N(M) Shift Right Arithmetic (Double Length)
113
(Nt=3)
SRAV  XX*  N(M) Special Shift Right (Double Length)
114 NORM  X  N(M) Normalise a Single-Length Floating-Point Number
115 NORM  XX*  N(M) Normalise a Double-Length Floating-Point Number
116 MVCH  X  N(M) Move N Characters from the Character Address specified in X to the Character Address specified in X*
117 SMO    N(M) Supplementary Modifier to Operand of Next Instruction
Group 12x
Order Codes
120 ANDN  X  N(M) Logical AND Direct Operand into X
121 ORN  X  N(M) Logical INCLUSIVE OR Direct Operand into X
122 ERN  X  N(M) Logical EXCLUSIVE OR Direct Operand into X
123 NULL No Operation
124 LDCT  X  N(M) Load Count
125 MODE    N(M) Set Zero-Suppression Mode
126 MOVE  X  N(M) Copy N Words from the Address in X to the Address in X*
127 SUM Sum N Words
Group 13x
Order Codes
130 FLOAT    N(M) Convert Fixed to Floating Point
131 FIX    N(M) Convert Floating Point to Fixed
132 FAD  X  N(M) Floating Point Add
133 FSB  X  N(M) Floating Point Subtract
134 FMPY  X  N(M) Floating Point Multiply
135 FDVD  X  N(M) Floating Point Divide
136
(X=0)
LFP    N(M) Load Floating Point
136
(X=1)
LFPZ Load Floating Point Zero
137
(X=0)
SFP    N(M) Store Floating Point
137
(X=1)
SFPZ    N(M) Store Floating Point and Zeroise
Group 14x
Order Codes
140   Unassigned
141   Unassigned
142   Unassigned
143   Unassigned
144   Unassigned
145   Unassigned
146   Unassigned
147   Unassigned
Group 15x
Order Codes
150 SUSBY  X  N(M) Suspend if Busy
151 REL  X  N(M) Release Peripheral
152 DIS  X  N(M) Disengage Peripheral
153   Unassigned
154 CONT  X  N(M) Read in More Program
155 SUSDP  X  N(M) Suspend and Dump
156 ALLOT  X  N(M) Allot Peripheral
157 PERI  X  N(M) Initiate Peripheral Action
Group 16x
Order Codes
160
(X=0)
SUSTY    N(M) Suspend and Type
160
(X=1)
DISTY    N(M) Display Message
160
(X=2)
DELTY    N(M) Delete and Type
160
(X=7)
160  7  N(M) Receive a Message
161
(X=0)
SUSWT    N(M) Suspend and Await Operator Action
161
(X=1)
DISP    N(M) Display Characters
161
(X=2)
DEL    N(M) Delete the Program
162 SUSMA  X  N(M) Test and Transfer to Common Storage
163 AUTO  X  N(M) Activate and Enter Subprogram
164
(X=0)
SUSAR  0 Suspend Current Program Member and Reactivate Master Program
164
(X=1)
SUSAR  1 Suspend Current Program Member Awaiting Reactivation
164
(X=2)
SUSIN  2 Suspend Subprogram Awaiting Flag-Setting Interrupt or AUTO
164
(X=3)
SUSIN  3 This is a variant of the SUSIN 2 statement
164
(X=4)
SUSIN  4 This is a variant of the SUSIN 2 statement
165 GIVE  X  N(M) Give Information
166 RRQ  X  N(M) Read or Replace Request Block
167 167  X  N Special Trusted Program instruction
Group 17x
Order Codes
170   Unassigned
171   Unassigned
172   Unassigned
173   Unassigned
174   Unassigned
175   Unassigned
176   Unassigned
177   Unassigned
EXECutive
Order Codes
Executive Orders vary between machine ranges (West Gorton and Stevenage), also between some models within those ranges.

1900 Series PLAN Summarised Programming Information (PLAN Reference Card).