Museum News
Visitor Feedback




THE IBM System/360 INSTRUCTION SET PRESENTED AS A PERIODIC SYSTEM
DECEMBER 2014


The IBM System/360 instruction set belongs to the simplest and clearest processor instruction sets in past and present computers. This is because of three main reasons: (A) there are only four addressing modes; (B) there is no hardware stacking mechanism; (C) there is a strong orthogonal aspect as regards the actual operation (arithmetical, logical) on the one hand and the kinds of operands and addressing modes on the other hand.
A knowledge of the System/360 architecture as defined in the IBM System/360 Principles of Operation (WWW link) is assumed in what follows.

(A) the addressing modes are register-to-register (RR), register-to-storage (RX and RS), instruction-to-storage (SI) and storage-to-storage (SS).
(B) Stacking operations, necessary in the correct treatment of subroutines and interrupt routines within subroutines and interrupt routines, have to be implemented entirely in software.
(C) Machine operation codes take one byte in storage. In many instructions the front half-byte represents the addressing mode, while the rear half-byte represents the specific operation to be performed, for instance, the four Compare Logical operations, with opcodes X'15',  X'55',  X'95' and X'D5', are in the same column; all full-word RX operations, with X'5' as their leftmost half-bytes, are in the same row; on the intersection of column and row we find the opcode X'55', mnemonic CL, Compare logical register and full word in main storage.

It is foremost this orthogonal design, the separation of addressing modes from functions performed, that gives the instruction set the looks of a periodic system, very much like the periodic system of chemical elements (my favourite WWW link - JEM).

In the first table below the opcodes are arranged in ascending order row-wise; so the rows are numbered by the front half-byte of the opcode, running from 0− to F− , and the columns by the rear half-byte of the opcode, running from −0  to −F.  The grey cells represent invalid operation codes.
The second table is the first table transposed, so the opcodes are ordered column-wise, in line with the IBM handbooks and reference cards.

The tables are based on the pocket reference card on the System/360 and the supplementary card on the Model 67, affectionately known as the Green Card (WWW link) and Blue Card (WWW link), and for the Model 44 information on the Model 44 Functional Characteristics handbook (WWW link).

NOTES on the Model 44: (a) storage protection (controlled by the SSK and ISK instructions) is not standard but is an optional feature; (b) none of the decimal and variable-field instructions (rows D− and F− in the first table below) are available.

tooltips: roll the mouse cursor over the mnemonic to read the name of the instruction in full



ORDERED ROW-BY-ROW, LIKE THE PERIODIC SYSTEM OF CHEMICAL ELEMENTS

COLOR CODES: Standard: on all System/360 models except Model 44
Not on Model 44; standard on all other models
Model 67 only Floating-point feature Extended-floating-point feature Privileged instructions: on all System/360 models Additional privileged instructions for the Model 67 Decimal Arithmetic feature; not available on Model 44

−0 −1 −2 −3 −4 −5 −6 −7 −8 −9 −A −B −C −D −E −F
0− SPM BALR BCTR BCR SSK ISK SVC BASR 0−
1− LPR LNR LTR LCR NR CLR OR XR LR CR AR SR MR DR ALR SLR 1−
2− LPDR LNDR LTDR LCDR HDR LRDR MXR MXDR LDR CDR ADR SDR MDR DDR AWR SWR 2−
3− LPER LNER LTER LCER HER LRER AXR SXR LER CER AER SER MER DER AUR SUR 3−
4− STH LA STC IC EX BAL BCT BC LH CH AH SH MH BAS CVD CVB 4−
5− ST N CL O X L C A S M D AL SL 5−
6− STD MXD LD CD AD SD MD DD AW SW 6−
7− STE LE CE AE SE ME DE AU SU 7−
8− SSM LPSW (diagn) WRD RDD BXH BXLE SRL SLL SRA SLA SRDL SLDL SRDA SLDA 8−
9− STM TM MVI TS NI CLI OI XI LM SIO TIO HIO TCH 9−
A− SLT A−
B− STMC LRA LMC B−
C− C−
D− MVN MVC MVZ NC CLC OC XC TR TRT ED EDMK D−
E− E−
F− MVO PACK UNPK ZAP CP AP SP MP DP F−
−0 −1 −2 −3 −4 −5 −6 −7 −8 −9 −A −B −C −D −E −F


ORDERED COLUMN-BY-COLUMN, LIKE ON THE IBM SYSTEM/360 REFERENCE CARD

0− 1− 2− 3− 4− 5− 6− 7− 8− 9− A− B− C− D− E− F−
−0 LPR LPDR LPER STH ST STD STE SSM STM STMC −0
−1 LNR LNDR LNER LA TM LRA MVN MVO −1
−2 LTR LTDR LTER STC LPSW MVI SLT MVC PACK −2
−3 LCR LCDR LCER IC (diagn) TS MVZ UNPK −3
−4 SPM NR HDR HER EX N WRD NI NC −4
−5 BALR CLR LRDR LRER BAL CL RDD CLI CLC −5
−6 BCTR OR MXR AXR BCT O BXH OI OC −6
−7 BCR XR MXDR SXR BC X MXD BXLE XI XC −7
−8 SSK LR LDR LER LH L LD LE SRL LM LMC ZAP −8
−9 ISK CR CDR CER CH C CD CE SLL CP −9
−A SVC AR ADR AER AH A AD AE SRA AP −A
−B SR SDR SER SH S SD SE SLA SP −B
−C MR MDR MER MH M MD ME SRDL SIO TR MP −C
−D BASR DR DDR DER BAS D DD DE SLDL TIO TRT DP −D
−E ALR AWR AUR CVD AL AW AU SRDA HIO ED −E
−F SLR SWR SUR CVB SL SW SU SLDA TCH EDMK −F
0− 1− 2− 3− 4− 5− 6− 7− 8− 9− A− B− C− D− E− F−

COLOR CODES: Standard: on all System/360 models except Model 44
Not on Model 44; standard on all other models
Model 67 only Floating-point feature Extended-
floating-point feature
Privileged instructions: on all System/360 models Additional privileged instructions for the Model 67 Decimal Arithmetic feature; not available on Model 44