60043800H_3200_Computer_System_Ref Man_Dec66 60043800H 3200 Computer System Ref Man Dec66

60043800H_3200_Computer_System_RefMan_Dec66 60043800H_3200_Computer_System_RefMan_Dec66

User Manual: Pdf 60043800H_3200_Computer_System_RefMan_Dec66

Open the PDF directly: View PDF PDF.
Page Count: 240

Download60043800H_3200_Computer_System_Ref Man_Dec66 60043800H 3200 Computer System Ref Man Dec66
Open PDF In BrowserView PDF
r

r

COM PUTE,R SYSTEM
REFERENCE MANUAL

CONTROL DATA
CORPORATION

3200 CHARACTERISTICS
• Stored-program, solid-state, general-purpose computer.
•
•
•
•
•
•
•
•
•

Diode logic.
Parallel mode of operation.
Single address logic.
Programmed inter-register transfers.
Address modification (indexing).
Indirect addressing.
Character and word addressing (4 characters per word).
28-bit storage word (24 data bits and 4 parity bits).
Nonvolatile magnetic core storage. Standard memory: 8,192 words/32,768 characters.

•
•
•
•
•
•

Selected storage protection.
Storage sharing.
Complete cycle time: 1.25 microseconds.
Access time: 0.75 microsecond.
24-bit accumulator register and auxiliary·accumulator register.
Binary arithmetic: 2"1-1 modulus, one's complement for all single precision (24-bit) operations and
double precision (48-bit) addition and subtraction.
Instruction repertoire compatible with the 3100 and 3300 Computers.
Trapped instruction processing: executes double precision multiplication and division, floating
point, binary coded decimal (BCD) and an optional register transfer instruction if optional arithmetic logic is not present in a system.
64-word register file (0.5 microsecond cycle time)
Complete interrupt system.
Block control operations.
Logical and sensing operations.
Masked storage searches.
Three 15-bit index registers.
Real-time clock (1.0 millisecond incrementation).
Sit-down operator's console featuring:
• Octal register displays.
• Internal and external status displays.
• Instruction step control.
• Breakpoint thumbwheel control.
• Auto step control.
• Auto Load.
\I Auto Dump.
• Detachable keyboard for manual entry and control of the computer.
Standard 3000 Series type 12-bit bidirectional data channel.
Compatible I/O mediums include magnetic tape, disk file, punched cards, paper tape and printed
forms.
Options include:
• Memory expansion to 16,384 or 32,768 words
• Additional 12-bit data channels or high-speed 24-bit data channels.
• Floating point and 48-bit precision multiply and divide hardware logic.
• BCD arithmetic hardware logic.
• On-line I/O monitor typewriter.
• Complete selection of peripheral equipment.

•
•

•
•
•

o
•
•
•
•

•
•
•

\~

......:.J' \ \j

.

L

,.

r

COMPUTER SYSTEM
REFERENCE MAN UAL

•

I

t:

60043800

RECORD of REVISIONS

REVISION

B
C
D
E

(9-27-66)

F
(1- 25- 66)

G

NOTES

Obsoletes all previous editions.
Minor corrections only.
Obsoletes all previous editions.
Publication Change Order 11526. Pages iii, 1-3, 2-1,
4-2, 5-4, 5-12, 5-15, 6-5, 7-12, 7-25, 7-35, '7-39,
7-46, 7-47, 7-49, 7-55, 7-61, 7-73, 7-75, 7-77, 7-78,
7-79, 7-81, 7-83, 7-85, 7-86, 7-87, 8-12, B-6 and B-8.
Publication Change Order 12255. Pages 1-8, 1-13, 4-4,
7-22, 7-58, 7-65, 7-67, 7-68, 7-74, C-4, 7, 8, 9, 10,
11, 13, 14, 16, 17, 18, 19, 20, and Comment Sheet
revised.
Field Change Order 14561, new Product Designations

(12-21-66) 3204-A15, 3204- B17, 3205-A15 3205-B17 3210-A15,
3210-B17, 3215-A15 and 3215-B17. Pages 7-8. 7-11,
7-68, 7-69, 11, 12 and 20 revised.
Publication Change Order 15443, no Pr<;>duct Designation
(12-21-66) change. Pages 4-4, 7-8, 7-9, 7-11, 7-14, 7-19, 7-50,
7-63, 7-64, 7-66, 7-68, 7-69, 7-72, 7-76, 7-78, C-7,
11, 12, 14, 19 and 20 revised.
H

Address comments concerning this
manual to:

Pub. No. 60043800
December, 1966
© 1966, Control Data Corporation
Printed in the United States of America

Control Data Corporation
Technical Publications Department
4201 North Lexington Avenue
St. Paul, Minnesota 55112
or use Comment Sheet in back of this
manual.

CONTENTS
Section 1.

SYSTEM DESCRIPTIOI\l

INTRODUC'I'ION ............................ ; . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1-1
COMPUTER MODULARITY .........................................................
Main Control and Arithmetic Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Block Control and Interrupt Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Storage Module. . . . . . . . . . . . . . . . . . . . . . . .. . . .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . . . . . . . ..
Input/Output Sub-Modules. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . .. . . . . . . .. . . . . . . . . . . . . ..
Optional Arithmetic Module .................................... , . . . . . . . . . . . . . . . ..
Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Input/Output Typewriter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Power Control Panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . ..

1-1
1-3
1-3
1-3
1-3
1-4
1-4
1-4
1-4

3200 PROCESSORS ................................................................. 1-6
COMPUTER ORGANIZATION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1-6
Computer Word Format.. .. . ....... .. ...................... ... ..... ... .. ......... 1-6
Register Descriptions. . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . .. 1-6
Data Bus and'S' Bus ............................................................. 1-10
Block Control ................................................................... 1-10
Real-Time Clock ................................................................. 1-12
Parity .......................................................................... 1-12
PERIPHERAlL EQUIPMENT ........................................................ 1-13

Section 2.

STORAGE CHARACTERISTICS

STORAGE MODULE CONTROL PANEL. . . .. . .. .. .. . .. .. .. .. .. . .. .. .. . .. . .. .. .. .. ... 2-1
STORAGE REGISTERS. . . . . . . .. .. .. . . .. .. .. .. .. . .. . .. .. . .. . .. .. .. . .. .. .. .. .. .. .. ... 2-2
S Register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2-2
Z Register ...................................................................... 2-2
READ/WRITE CHARACTERISTICS .................................................
Single-Character Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Double-Character Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Triple-Character Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Full-Word Mode ......... , .......................................................
Address Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..

2-2
2-2
2-2
2-2
2-2
2-2

STORAGE ADDRESSING. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2-3
STORAGE SHARING. . . . . . .. . .. .. . .. . .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. . .. . .. .. . .. . ... 2-3
STORAGE PROTECTION. . . . . .. . .. .. . .. . .. .. .. .. . . .. .. . .. .. . .. . .. .. .. . . . . .. . .. . .. ..
Permanent Protection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Selective Protection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
No Protection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..

Section 3.

2-3
2-4
2-4
2-4

INPUT/OUTPUT CHARACTERISTICS

INTERFACE SIGNALS ............................................................. 3-1
I/O PARITY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3-2
Parity Checking with the 3206 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3-2
Parity Checking with the 3207 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3-2

111

AUTO LOAD/AUTO DUMP ........................................................ ,
Preliminary Considerations ..................................................... ,
Auto Load ..................................................................... ,
Auto Dump .................................................................... ,

3-3
3-3
3-3
3-3

SATELLITE CONFIGURATIONS ................................................... , 3-5

Section 4.

INTERRUPT SYSTEM

GENERAL INFORMATION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4-1
INTERRUPT CONDITIONS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Internal Interrupts ..............................................................
Trapped Instruction Interrupts ...................................................
Power Failure Interrupt .........................................................
I/O Interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..

4-1
4-1
4-2
4-2
4-3

INTERRUPT MASK REGISTER. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4-3
INTERRUPT CONTROL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Enabling or Disabling Interrupt Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Interrupt Priority. . . . . .. . . .. . . . . . .. . . . . . .. . . . . . . . . . . . . . .. . . . . . . . . . .. . . . . . . . . . ...
Sensing Interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Clearing Interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..

4-3
4-4
4-4
4-4
4-4

INTERRUPT PROCESSING. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4-5

Section 5. CONSOLES AND POWER CONTROL PANEL
CONSOLE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Register Displays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Console Loudspeaker. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Status Indicators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Switches. . . . . . . . . . . . . . . . . . .. . . . . . . . . .. . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..

5-1
5-1
5-4
5-4
5-7

POWER CONTROL PANEL ......................................................... 5-15
Switches ........................................................................ 5-15
Elapsed Time Meters ............................................................ 5-15

Section 6.

TYPEWRITER

DESCRIPTION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6-1
OPERATION .......................................................................
Set Tabs, Margins, and Spacing ...................................................
Clear ...........................................................................
Status Checking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Type In and Type Load. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Type Out and Type Dump. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..

6-2
6-2
6-2
6-2
6-3
6-3

CONSOLE SWITCHES AND INDICATORS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6-3
CHARACTER CODES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6-5

Section 7.

INSTRUCTIONS

GENERAL INFORMATION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Instruction Word Formats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Word Addresses vs. Character Addresses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Symbol Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Indexing and Address Modification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
IV

7-1
7-1
7-2
7-3
7-3

Addressing Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7-4
Indexing and Addressing Mode Examples ....................................... , .. 7-5
Trapped Instructions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7-6
INSTRUCTION LIST ................................................................ 7-7
Register Operations without Storage Reference ....... , ............................. 7-12
Load ........................................................................... 7-20
Store ........................... , ........................................ , .... 7-23
Inter-register Transfer, 24-bit Precision .......................................... 7-26
Inter-register Transfer, 48-bit Precision .......................................... 7-29
Stops and Jumps ................................................................ 7-30
Logical Instructions with Storage Reference ....................................... 7.37
Arithmetic, Fixed Point, 24-bit Precision .......................................... 7-38
Arithmetic, Fixed Point, 48-bit Precision .......................................... 7-40
Trapped Instructions if Arithmetic Option is Not Present ........................... 7~42
Arithmetic, Floating Point ....................................................... 7-43
Trapped Instructions if FP/DP Arithmetic Option is Not Present ..................... 7-43
BCD ........................................................................... 7-46
Trapped Instruction if BCD Arithmetic Option is Not Present ........................ 7-46
Storage Shift, Searches, Compare and Register Shifts ............................... 7-50
Search .......................................................................... 7-56
Move ........................................................................... 7-58
Sensing ........................................................................ 7-60
Control ........................................................................ 7-63
Interrupt ........ , .............................................................. 7-65
Input/Output '.' ................................................................. 7-68

Section 8.

SOFTWARE SYSTEMS

GENERAL DESCRIPTION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
3100,3200,3300 SCOPE ........................................................
3100,3200,3300 COMPASS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
3100,3200,3300 Data Processing Package .......................................
3100, 3200, 3300 Utility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
3100, 3200, 3300 COBOL ..................................... '.' . . . . . . . . . . . . . . . ..
3100, 3200, 3300 FORTRAN. . . . . . . .. .. . .. . .. . .. .. . .. .. .. .. .. .. .. .. .. . .. . .. .. ....
Generalized Sort/Merge Program. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
3100,3200,3300 BASIC System ..................................................

8-1
8-1
8-2
8-3
8-4
8-4
8-5
8-5
8-6

CODING PROCEDURES. . . . . . .. .. . .. . .. .. . .. . .. .. .. . .. .. .. . .. . . .. .. .. .. .. .. .. .. .... 8-7
Instruction Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8-7
Pseudo-Instructions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8-9
Assembly Listing Format ........................................................ 8-17
Error Codes .................................................................... 8-18
APPENDIX A-Control Data 3100, 3200, 3300 Computer Systems Character Set
B -Supplementary Arithmetic Information
C - Programming Reference Tables and Conversion Information
GLOSSARY, INSTRUCTION TABLES AND INDEX

v

FIGURES
FIGURE

1-1 Typical 3200 Modular Configuration. . . . . . . . . . . . .. . . . . . . .. . . . . . . . . . .. . . .. . . . . . . . .. 1-2
1-2 3200 Console. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1-5
1-3 Computer Word Character Positions and Bit Assignments. . . . . . . . . . . . . . . . . . . . . . . . .. 1-6
1-4 Storage Addressing and Data Paths of Typical Installation .......................... 1~10
1-5 Block Control Scanning Pattern .................................................. 1-12
1-6 Parity Bit Assignments .......................................................... 1-13
2-1 Storage Module Control'Panel .................................................... 2-1
3-1 Principal Signals Between I/O Channel and External Equipment. . . . . . . . .. . . . . . . . . .. 3-1
3-2 Satellite Configurations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3-4
5-1 Front View of 3200 Console Controls ............................................. 5-2
5-2 EUEL Register Display .......................................................... 5-3
5-3 ED Register Display ................................................. , . . . . . . . . . .. 5-3
5-4 External Status Indicators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5-4
5-5 Internal Status Indicators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5-5
5-6 Temperature Warning Designations for an Expanded 3200 Computer, Front View .... 5-6
5-7 Console Keyboard. . . . . . . . . . . . .. . . . .. . . .. .. . . . . . . . . . . . .. . .. .. . . . . . . . . . . . . . . . . . .. 5-8
5-8 Breakpoint Switch Examples .................................................... 5-13
5-9 Power Control Panel ............................................................ 5-16
6-1 3192 Console Typewriter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6-1
6-2 Typewriter Control Panel. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. 6-3
7-1 Word-Addressed Instruction Format. . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7-1
7-2 Character-Addressed Instruction Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . .. 7-2
7-3 Indexing and Indirect Addressing Routine Flow Chart. . . . . . . . . . . . . . . . . . . . . . .. . . . .. 7-3
7-4 Operand Formats and Bit Allocations for MUAQ and DVAQ Instructions ............ 7-41
7-5 Operand Formats and Bit Allocations for Floating Point Arithmetic Instructions ..... 7-45
7-6 Search Operation .............................................................. 7-57
7-7 Move Instruction ............................................................... 7-59
7-8 73 I/O Operation with Storage ................................................... 7-73
7-9 74 I/O Operation with Storage ................................................... 7-75
7-1075 I/O Operation with Storage ................................................... 7-77
7-11 76 I/O Operation with Storage ................................................... 7-79
7-1273 I/O Operation with A ......................................................... 7-81
7-1374 I/O Operation with A ......................................................... 7-83
7-1475 I/O Operation with A ........................................................ 7-85
7-1576 I/O Operation with A ........................................................ 7-87
8-1 COMPASS Coding Form ........................................................ 8-19
8-2 FORTRAN Coding Form ........................................................ 8-19

VI

TABLES
TABLE

1-1
1-2
1-3
1-4
2-1
2-2
2-3
2-4
4-1
4-2
4-3
5-1
5-2
5-3
6-1
6-2
7-1
7-2
7-3
7-4
7-5
7 -6
7-7
7-8
7-9
8-1
8-2

Optional Memory Configurations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1-3
Characteristics of 3200 Computer Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1-9
Register File Assignments ....................................................... 1-11
Buffer Groups .................................................................. 1-11
Absolute Addresses ............................................................. 2-3
Auto Load/Auto Dump Reserved Addresses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2-4
Storage Protection Switch Descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2-5
Storage Protection Switch Settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2-5
Interrupt Mask Register Bit Assignments ......................................... 4-3
Interrupt Priority. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4-4
Representative Interrupt Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4-5
Keyboard Switch Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5-9
Console Main-Frame Switches ................................................... 5-10
Power Control Panel Switch Functions ........................................... 5-15
Console Typewriter Switches and Indicators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6-4
Console Typewriter Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6-5
List of Trapped Instructions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7-7
Instruction Synopsis and Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7-8
Summary ofInstruction Execution Times ......................................... 7-11
Interrupt Mask Register Bit Assignments ......................................... 7-61
Internal Status Sensing Mask ................................................... 7-62
Block Control Clearing Mask .................................................... 7-63
Pause Sensing Mask ............................................................ 7-64
Interrupt Mask Register Bit Assignments ......................................... 7-65
Modified I/O Instruction Words .................................................. 7-69
Instruction Interpretations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8-8
COMPASS Coding Form Description ............................................. 8-18

VII

Section 1

SYSTEM DESCRIPTION
INTRODUCTION
The CONTROL DATA* 3200 is a medium-size, solid-state, general-purpose digital computing
system. Advanced design techniques are used throughout the system to provide expedient
solutions for scientific, real-time, and data processing problems. Modular packaging facilitates expansion ofthe basic 3200System to accommodate increasing customer needs.
The 3200 is compatible with the CONTROL DATA 3100 and 3300 Computer System; i.e., as
computation requirements exceed the capabilities of the 3200 System, the user may escalate
to a 3300 System without revising existing 3200 programs. Its input/output characteristics
are identical to the 3100, 3300, 3400, 3600 and 3800 Computer Systems-a fact which facilitates incorporating the 3200 into a SATELLITE* configuration.
Various software systems are available for the 3200 System. The SCOPE operating system
is used in 3200 Systems to provide efficient job processing. SCOPE requires a minimum of
storage and time requirements. COMPASS, operating under the control of SCOPE, is the
assembly system used to assemble relocatable machine language programs. Other applicable
software includes FORTRAN, COBOL, the Data Processing Package, Generalized Sort/
Merge and BASIC System. These systems are described in the Software Section of this manual.
Other software and hardware publications pertinent to 3200 Systems may be obtained from
the nearest Control Data sales office listed on the back cover ofthis manual.
A wide selection of peripheral equipment is available for use in a 3200 System. Equipment
that is applicable to 3200 Systems may be found in the 3000 Series Computer System Peripheral Equipment Reference Manual (Pub. No. 60108800).
This manual provides programming and operating information in conjupction with a description of special features of the 3200. Reference information and supplementary information
may be found in the Appendix section.

COMPUTER MODULARITY
A 3200 Computer consists of various logic cabinet modules designed to perform specific
operations. If additional storage, input/output channels, or arithmetic capabilities are desired for an existing installation, an appropriate module is integrated into the system. Figure
1-1 illustrates and describes the modules of a typical 3200 computer with its external cabinet
panels removed.

*"Registered trademark of Control Data Corporation

1-1

U IU

V

I',

BLOCK
CONTROL
AND
INTERRUPT
MODULE

8K
STORAGE
MODULE

8K
STORAGE
MODULE

r------,

r-------,
I

OPTIONAL
ARITHMETIC
CHASSIS

POWER
CONTROL
PANEL

MAIN CONTROL
AND
ARITHMETIC MODULE

I

: 1/0 MODULE:
I I 1/0 MODULE:
I CHANNELS
: CHANNELS I
I
2 AND 3
o AND 1 I
I (OPTIONAL) : I
I
I I
I
1-- _ _ _ _ _ _ .....1 L _ _ _ _ _ _ - '

1/

1/

'-

/

Figure 1-1.

Typical 3200 Modular Configuration

1-2

I

MAIN CONTROL AND ARITHMETIC MODULE
This module, standard in all 3200 systems, controls internal operations, executes 24-bit
precision fixed point arithmetic and 48-bit precision fixed point addition and subtraction
instructions. Boolean, character/word processing, and decision operations are also processed
by this module. Floating point, BCD, and 48-bit precision multiplication and division instructions are classified as trapped instructions if the optional arithmetic module is absent
from the system. Trapped instructions may be processed under control of an interpretive software routine.

BLOCK COr\lTROL AND INTERRUPT MODULE
Logic associated with this module controls Search and Move operations, external equipment and typewriter I/O,real-time referencing, and operations with the register file. Interrupt logic, also located in this module, processes Internal, I/O, Trapped Instruction, and
Power Failure interrupts.

STORAGE MODULE
An 8,192-word memory module is standard in every 3200 System. A customer may select
combinations of magnetic core storage (MCS) modules to increase the total storage capacity of his computer system to 16,384 or 32,768 words. The following optional storage modules
are available:
3209 - 8,192-word (32,768 characters) MCS memory module (requires additional
chassis).
3203 - 16,384-word (65,536 characters) MCS memory module (requires additional
chassis).
Memory configurations are shown in Table 1-1.

TABLE 1-1.

OPTIONAL MEMORY CONFIGURATIONS

Total Expanded
Memory Capacity

Memory Modules Required in
Addition t!) 8K Memory in 3204

16K
32K

3109
3209 and 3203

INPUT/OUTPUT SUB-MODULES
Two types ofI/O Channels are available:
3206 Communication Channel (12-bit)
3207 Communication Channel (24-bit)

3206
The 3206 is a bidirectional 12-bit parallel data channel. A maximum of eight 3206 channels
may be used in a 3200 System and up to eight peripheral controllers may be connected to
each channel. Cabinet space is provided for mounting two 3206 channels per I/O sub-module.
The two I/O channels are referred to as a 3206 Dual Communication Module. Channels 0 and
1 normally occupy the lower five logic rows of the storage module directly adjacent to the
block control and interrupt module and channels 2 and 3 occupy the lower five logic rows
of the adjacent storage chassis.

1-3

3207
The 3207 is a bidirectional 24-bit parallel data channel with twice the data transfer rate of
the standard 32015 I/O channel. One 3207 occupies the same cabinet space required for two
3206 channels. If a 3207 is installed in a system, the maximum number of 3206 channels is
limited to six. Only one 3207 may be used in a processor. Refer to Section 3 for additional
information.
OPTIONAL ARITHMETIC MODULE
The floating point/48-bit precision standard arithmetic option provides the necessary logic
to execute 36-bit precision coefficient floating point arithmetic. It also permits the 48-bit
precision multiply and divide instructions to be executed directly by the hardware. The BCD
standard arithmetic option permits decimal numbers to be added, subtracted, loaded, stored
or sensed directly without the use of interpretive software. If one or both options are absent,
the instructions pertaining. to the option(s) can be executed by entering a trapped routine
and utilizing the appropriate software.
CONSOLE
The 3200 sit-down console is standard on all 3200 systems and features:
•
•
•
•
•
•
•

octal readout displays
entry keyboard
various operator switches
thumbwheel breakpoint switch
internal and external status indicators
instruction Auto Step control
operator's chair

A full view of the 3200 Console appears in Figure 1-2 and detailed information is contained
in Section 5.

INPUT/OUTPUT TYPEWRITER
The I/O monitor typewriter is also standard on all 3200 systems. Data is transmitted and
received directly from storage, thus eliminating the need for an I/O channel. Operating
information and character codes are found in Section 6.
POWER CONTROL PANEL
The Power Control Panel enables the computer operator to initially connect power to the
main computer, typewriter, and groups of peripheral equipment. Semipermanent storage
protection switches are located on the upper section of this panel. Operating time and maintenance time meters and the main equipment circuit breakers are also mounted on the control panel. Detailed information pertaining to the Power Control Panel appears in Section 5.

1-4

~

TO .. ---

.
I

7
'

0

j

.

••

---

.---~.
'

'"

',

<=>

co
N

Figure 1-2.

3200 Console

1-5

3200 PROCESSORS
3204
Basic
Processor

The 3204 features 6-, 24-, and 48-bit modes, three index registers, indirect
addressing, register file, two 12-bit communication channels, 8,192 words or
32,768 characters of magnetic core storage, 3200 sit-down console, chair,
on-line I/O typewriter, and control for referencing up to 32,768 words of
storage and up to eight 12-bit or six 12-bit and one 24-bit communication
channels.

3205
Scientific
Processor

The 3205 includes all of the control, arithmetic, input/output and storage
functions of the 3204 Processor plus 48-bit floating point arithmetic logic
and logic for 48-bit fixed point multiply and divide.

3210
Data
Processor

The 3210 includes all of the control, arithmetic and input/output functions
of the 3204 Processor plus the BCD arithmetic logic for adding, subtracting,
loading, storing, shifting and sensing characters of variable field lengths.

3215
General
Processor

The 3215 is a truly general-purpose computer featuring word and character
addressing, binary and character manipulation, fixed and floating point
arithmetic and variable length character arithmetic. It includes all of the
features of the 3204. 3205. and 3210 Processors.

COMPUTER ORGANIZATION
COMPUTER WORD FORMAT
The standard 3200 computer word consists of 24 binary digits. Each word is divided into four
6-bit characters. In storage, an odd parity bit is generated and checked for each of the four
characters, lengthening the storage word to 28 bits. Figure 1-3 illustrates the bit assignments
of a computer word in storage.
27 26 25 24 23

18

Character 0

17

12

Character 1

11

06 05

Character 2

00

Character 3

~'~---------------C-h-a-ra-c-te~~d~e-S-ig-n-a-to-rs--------------~/
Figure 1-3.

Computer Word Character Positions and Bit Assignments

REGISTER DESCRIPTIONS
A Register (Arithmetic)
The A register (accumulator) is the principal arithmetic register. Some of the more important
functions of this register are:
• All arithmetic and logical operations use the A register in formulating a result.
The A register is the only register with provisions for adding its contents to the
contents of a storage location or another register.
• A may be shifted to the right or left separately or in conjunction with Q. Right shifting
is end-off; the lowest bits are discarded and the sign is extended. Left shifting is endaround; the highest order bit appears in the lowest order stage after each shift; all
other bits move one place to the left.
• The A register holds the word which conditions jump and search instructions.
1-6

Q Register (Arithmetic)

The Q register is an auxiliary register and is generally used in conjunction with the
A register.
The principal functions of Q are:
• Providing temporary storage for the contents of A while A is used for another
arithmetic operation.
• Forming a double-length register, AQ.
• Shifting to the right or left, separately or in conjunction with A.
• Serving as a mask register for 06, 07, and 27 instructions.
Both A and Q may load or be loaded from any of the three index registers without the
use of storage references.

X Register (Arithmetic)
The X register is a transfer register, used only for internal instruction processing.
Contents of this register cannot be displayed by any external indicators.

F Register (Main Control)
The program control register, F, holds an instruction during the time it is being executed. During execution, the program may modify the instruction in one of three ways:

•

Indexing (Address Modification)-A quantity in one of the index registers
(B b) is added to the lower 15 bits of F for word-addressed instructions, or to
the lower 17 bits of F for character-addressed instructions. The signs of Bb
and F are extended for the addition process.
• Indirect Addressing-The lower 18 bits of F are replaced by new a, b, and m
designators from the original address M (modified if necessary, M=m+B b).
• Indirect Addressing (load and store index instructions)-Bits 00-14 and 17 of
F are replaced by new a and m designators from the original address M (no
modification possible).
After executing an instruction, a Normal Exit, Skip Exit or Jump Exit is performed.
F is displayed on the console whenever the keyboard is inactive and the computer is
not in the GO mode.

C Register (Main Control)
Quantities to be entered into the A, Q, B or P registers or into storage from the entry
keyboard are temporarily held in the Communication (C) register until the TRANSFER
switch is pushed. If an error is made while entering data into the Communication
register, the KEYBOARD CLEAR switch may be used to clear this register.
The C register holds words read from storage during a Sweep or Read Storage operation. The contents of C are displayed on the console whenever the keyboard is active.

P Register (Main Control)
The P register is the Program Address Counter. It provides program continuity by
generating in sequence the storage addresses which contain the individual instructions.
During a Normal Exit the count in P is incremented by 1 at the completion of each
instruction to specify the address of the next instruction. These addresses are sent via
the S (address) Bus to the specified storage module where the instruction is read. A
Skip Exit advances the count in P by 2, bypassing the next sequential instruction and
executing the following one. For a Jump Exit, the execution address portion of the jump
instruction is entered into P, and used to specify the starting address of a new sequence
of instructions.
1-7

Bb Registers (Main Contro/)
The three index registers, B1, B2 and B3, are used in a variety of ways, depending on the
instruction. In a majority of the instructions they hold quantities to be added to the execution
address (M=m+ Bb).

Data Bus Register (DBR-Main Control)
A 24-bit Data Bus register is used to temporarily hold the data received from storage, Communication register and other logic areas. It is a nondisplayed and nonaddressable register.
During character-addressed or input/output operations, data entering the DBR may be
shifted one, two, or three character positions during the transfer to reach the correct character
position within the DBR.

E Register
The optional arithmetic register, E, is present in a system whenever one of the two optional
arithmetic logic packages is present. Its characteristics and functions depend upon whether
it is being used for floating point/48-bit precision or for BCD operations.
During floating point/48-bit precision operations, the E register is divided into two parts,
EU and EL (EUpper and ELower) each composed of 24 bits. It is used as follows:
• 48-bit precision multiplication; holds the lower 48 bits of a 96-bit product .
• 48-bit precision division; initially hold's the lower 48 bits of the dividend; upon
completion, holds the remainder.
• Floating point multiplication; holds the residue of the coefficient of the 48-bit product.
• Floating point division; holds the remainder.
During BCD operations the E register is designated the ED register (EDecimal)' The unique
decimal digits can be expressed in 4 bits, i.e., 810=108 and 910=118. Accordingly, ED is extended from 48 to 53 bits in order to handle 13 of these 4-bit characters, plus one sign bit.
This register is used in conjunction with storage to perform BCD addition and subtraction.

D Register
The D register is a field length register and is used in conjunction with loading, storing,
adding, and subtracting numeric BCD characters. This register is set to a field length of 1 to
12 characters by executing a SET (70.7) instruction. The field length remains the same until
it is changed by another SET instruction.
The D register is present only when the BCD arithmetic option is incorporated into a system.
The contents of the D register cannot be displayed.

S Register (Storage)
The S register holds the address of the storage word currently being referenced. It is displayed
on the storage module control panel.

Z Register (Storage)
The Z register is the storage restoration and modification register. Data stored or being transferred to or from the address specified by the S register must pass through Z. The entire
storage word, including the four parity bits, is represented by the Z register and displayed on
the storage module control panel.
Rev. F

1-8

TABLE 1-2. CHARACTERISTICS OF 3200 COMPUTER REGISTERS
REGISTER
DESIGNATION

I-'
I

FUNCTION

BIT
CAPACITY

MODULUS

COMPLEMENT
NOTATION

ARITHMETIC
PROPERTIES

RESULT

A

Main
Arithmetic
register

24

224_1

one's

Q

Auxiliary
Arithmetic
register

24

224_1

one's

additive

signed*

F**

Program
Control
register

24

224_1

***

***

***

C**

Communication
register

24

224_1

P

Program
Address
register

15

215c1

B1. B2, B3

Index
registers

15

2 15 _1

S

Storage
Address
register

13

213_1

Z

Storage
Data
register

28
(includes 4
parity bits)

224_1

X

Arithmetic
Transfer
register

24

224_1

EUpper and
ELower octal
register

48

2 48 _1

to

EU and EL

ED

ED
(BCD)
register

D

Field Length
register

additive

signed*

-1'-1'-1'-1'

one's

additive

unsigned

****

one's

additive

signed*;

,
53 (include
sign and
overflow digit)
4
-----------

±

10 13

24_1

absolute

one's

additive

signed

-1'-1'-1'-1'
----

Since the A, Q, and EUEL register co.ntents are all treated as signed quantities, the capacity of these registers is limited to the following values:
*
A:O;2 23 -1: Q:O;2 23 -1; EUEL::;:247_1. When the arithmetic result in A. Q, or EUELis zero, it is always represented by positive zero.
Dual purpose register.
**
Only the lower 'j 5 or 17 bits of F are modified depending on whether word or character addressing is being used. The results are unsigned.
***
**** Information not applicable.

DATA BUS AND'S' BUS
The Data Bus provides a common path over which data must flow to the storage, arithmetic,
console typewriter and I/O sections of the computer. These sections are connected in parallel
to the Data Bus. During the execution of each instruction, Main Control determines which
data transfer path is activated.
An odd parity bit is generated for the lower byte of each word as it leaves the DBR during
I/O operations. In the case of a 3207 I/O Channel, parity for the upper byte of data is generated in the channel itself rather than in the Data Bus.
The S or Address Bus is a data link between Main Control and storage for transmitting
storage addresses. Inputs to the S Bus are from the P register, F register, Block Control and
the Breakpoint circuits. Figure 1-4 illustrates the relevance of the Data Bus and S Bus in
a typical 32001 installation.

Storage Address Bus

3209
Storage
Module

3209
Storage
Module

8K

8K

Computation
Section

H

3200
Console

I

3203
Storage
Module
16K

Console rl
Typewriter
Data Bus

I

I

I

3206

3206

I

3206

I

I

I
I
I

---------

I
I

I

3206

3204 Basic Processor

3206

I

3206

I

I

I

1
3206

I

3206

I

or 3207

Figure 1-4.

Storage Addressing and Data Paths of Typical Installation

BLOCK CONTROL
Block control is an auxiliary control section within a 3200 series processor. In conjunction
with the register file and program control, it directs the following operations:
III
External equipment I/O
III
Search/Move
III
Real-Time clock
.. Console typewriter I/O
III
High-speed temporary storage

Register File
The register file is a 64-word (24 bits per word) rapid access memory with a cycle time of 0.5
p.,sec. Although the programmer has access to all registers in the file with the inter-register
transfer (53) instruction, certain registers are reserved for specific purposes (see Table 1-3).
All reserved registers may be used for temporary storage if their use will not disrupt other
operations that are in progress.
1-10

The contents of any register in the file may be viewed by selecting the register number with
the Breakpoint switch and pressing the Read STO button on the keyboard. The contents may
be altered by setting the Breakpoint switch, pressing the Write STO button, and entering a
new word from the entry keyboard.
TABLE 1-3. REGISTER FILE ASSIGNMENTS
Register
Numbers
00-07
10-17

Register Functions

Modified I/O instruction word containing the current character address (channel 0-7 control)
Modified I/O instruction word containing the last character address ±1, depending on the
instruction (channel 0-7 control)

20

Search instruction word containing the current character address (search control)

21

Move instruction word containing the source character address (move control)
Real-time clock, current time

22

23
24-27
30
31
32
33
34-77

Current character address (typewriter control) *
Temporary storage
Instruction word containing the last character address +1 (search control)
Instruction word containing the destination character address (move control)
Real-time clock, interrupt mask
Last character address +1 (typewriter control) *
Temporary storage

*The upper 7 bits of registers 23 and 33 should contain zeros.

Block Control Priority
Access to block control circuits is shared between the computer's program control and· block
control's own buffered functions. Functi.ons within block control are divided into thr~e groups
(see Table 1-4). Five scanners provide the necessary priority network for this system. They are
the Program/Buffer scanner, the Group scanner, and the three Inner-Group scanners. Figure
1-5 is a diagram showing the search pattern of the scanners.
TABLE 1-4. BUFFER GROUPS

GROUP1

GROUP2

GROUP3

Channel 0 control
'1

Channel 4 control

Real-time clock control
Console typewriter control
Register File Display
Search/Move control

2
3

5
6
7

A free-running scanner alternately checks for block control requests from program control,
and for functions within block control. This scanning. is done on an equal time basis. As soon
as a request from one source has been processed, the scanner is released so it can check the
other source for an active request.
Another free-running scanner checks the three groups for an active block control request.
After a request from one group has been processed, the scanner moves to the next group,
rotating through the groups in a 3, 2, 1,3 order.
Each group has a four-position scanner. These scanners search from top to bottom of their
respective groups looking for active block control requests. After they find a request and it
has been processed, the scanners return to the top oftheir group before resuming their search.

1-11

Channel

..t
..t
..t
..
..
..tt
..t

a Control
2
3

4
5
6

Real-Time Clock Control
Console Typewriter Control

Search/M ove Control

Buffer
.. Group 2

.

7

Register File Display

..

Group 1

..t
..t
..t

.

•

Program

.. ~ ..
-----~

Group 3

Figure 1-5. Block Control Scanning Pattern

REAL-TIMIE CLOCK
The real-ti:rne clock is a 24-bit counter that is incremented each millisecond to a maximum
period of 16,777,216* milliseconds. After reaching its maximum count, the clock returns to
zero and ~he cycle is repeated continuously. The clock, which is controlled by a 1 kilocycle
signal, starts as soon as power is applied to-the computer. The current time lis stored in register 22 of the Register File. It is removed from storage, updated, and compared with the contents of register 32 once each millisecond. When the clock time equals the time specified by
the clock mask, an interrupt is set. When necessary, the real-time clock may be reset to any
24-bit quantity including zero by loading A and then transferring (A) into register 22. Performing a Master Clear will not affect the clock count.

PARITY
Parity bits are generated and checked in 3200 systems for the following two conditions:
1 Whenever a data word is read from or written into storage.
2 When a data word is transferred via an I/O channel.
*16,777,216 milliseconds equals approximately 4 hours and 40 minutes.

1-12

Storage Parity
A parity bit is generated and checked for each 6-bit character of a storage word. Refer to
Figure 1-6.
27

26

25

24
P3

23

18

17

12

11

06

o

05

00
3

Character designators
Parity bit for character
Parity bit for character
Parity bit for character
Parity bit for character

3
2
1
0

Figure 1-6. Parity Bit Assignments

During each Write cycle, a parity bit is stored along with each character. When part or all of
a word is read from storage, parity is checked for a loss or gain of bits. Failure to produce
the correct parity during Read operations causes the PARITY FAULT indicators on the
Storage Module Control Panel and internal status lights to glow. As soon as a parity error
is recognized by Main Control, program execution is halted. Master Clearing the computer
clears the fault, condition.
If the DISABLE PARITY switch has been depressed and is active, subsequent parity errors
will not cause parity error indicators to glow and program execution will not be affected.
The total number of "l's" in a character, plus the parity bit, is always an odd number in the
odd parity system used in the 3200.

I/O Parity
The I/O Communication Channels provide parity lines in addition to the other signals that
interface with external equipment. Parity is checked in the I/O channels to detect parity
errors during data transmission to the external equipment and errors when data is received
from external equipment. I/O parity errors can be detected by a sensing instruction; however,
the parity error indicator will not be activated. A complete description ofI/O parity generation
and checking may be found in the I/O section of this manual.

PERIPHERAL EQUIPMENT
A large variety of peripheral equipment is available for use with the 3200 computer. All
peripheral equipment available for 3100, 3200, 3300, 3400, 3600 and 3800 systems may be
attached to a 3206 communication channel. For programming instructions, as well as a list
of function codes and status response codes, refer to the Control Data 3000 Series Computer
Systems Peripheral Equipment Reference Manual (Pub. No. 60108800).

1-13

Rev. F

Section 2
STORAGE CHARACTERISTICS

STORAGE MODULE CONTROL PANEL
Figure 2-1 shows the Storage Control Panel which is mounted at the top of each 3209 Storage
Module. The Drive Voltage Control is used to adjust the drive voltage to 22.5 volts, and not
exceeding 24 volts. The Z and S registers are displayed on this panel, as well as three storage
faults. The indicator lamps represent an x or y drive line voltage failure and a storage parity
fault. The Contlt'Ol Panel on the 3203 Module is similar to the 3209 Control Panel but is laid
out on a verticai plane.

Figure 2-1. Storage Module Control Panel

2-1

STORAGE REGISTERS
S REGISTER
The 13-bit S register contains the address of the word being currently processed. Bit
12 specifies field 0 or field 1 in the memory stack. Bits 00-11 specify the co-ordinates
of the word.

Z REGISTER
The 2S-bit Z register is the storage restoration and modification register. All data that
is transferred to or from the storage module passes through Z.

READIWRITE CHARACTERISTICS
During a normal memory cycle, all bits of a word referenced by (S)* are read out of core
storage in parallel, loaded into Z, used for some purpose, then written back into storage
intact. Five modes exist in the 3200 Computer for storage modification. In all cases, Z is
initially in the cleared state.
The Z register is only cleared at the beginning of each memory cycle (except in the
case of a Master Clear). If the program stops as the result of a parity error, the operator
can examine (Z) on the Storage Module Control Panel, Figure 2-1.

SINGLE-CHARACTER MODE
Anyone character may be ignored during the Read cycle. New data is then loaded
into the corresponding character position of Z and the whole (Z) is stored.

DOU BLE-CHARACTER MODE
The upper, middle, or lower half of a word is ignored during the Read cycle. New data
is loaded into the unfilled half of Z and the whole (Z) is stored.

TRIPLE-CHARACTER MODE
Either of the two possible triple-character groups may be ignored during the Read cycle.
New data is then loaded into the corresponding character positions of Z and the whole
(Z) is stored.

FUll-WORD MODE
The whole word is ignored during the Read cycle. A new word is entered into Z and
(Z) is stored.

ADDRESS MODE
The lower 15 or 17 bits of a word may be ignored during the Read cycle. A new word
or character address is then loaded into Z, and the whole (Z) is stored.

*The parentheses are an accepted method for expressing the words "the content(s) of " (in this case, "the
contents of S").

2-2

STORAGE ADDRESSING
Table 2-1 gives the absolute addresses for a specific storage capacity.
TABLE 2-1. ABSOLUTE ADDRESSES
Storage
Word
Capacity

Encompassing Addresses

8K
(8,192)

00000

16K
(16,384)

ALL PRECEDING ADDRESSES AND:
,.. 37777
20000

32K
(32,768)

ALL PRECEDING ADDRESSES AND:
,.. 77777
40000

,.. 17777

NOTE
If an address is referenced that exceeds the storage capacity of a system, the uppermost
digit is adjusted to conform to the available storage. No fault indication is given for this case,
Example: Address 67344 referenced.
Actual address referenced: 67344 - 32 K system
27344-16K system
07344- 8K system

STORAGE SHARING
Two 3200 computers may share the memory of a 3209 Storage Module. A switch on each
Storage Module Control Panel allows the operator to give exclusive control to the right or
left computer, A middle position on this switch actuates a two-position priority scanner,
Storage Control honors the requests in the order they are received. Neither computer has
priority over the other and the computer involved in the current storage cycle relinquishes
control to the requesting computer at the end of its cycle. Either computer can therefore be
delayed a maximum of one storage cycle. A similar program delay may occur within either
computer when an internal scanner determines whether Main Control or Block Control has
access to the storage module,
Direct access to 3200 type storage modules is available for certain installations. The normal
I/O channel route is bypassed and the customer's special equipment interfaces directly with
the storage logic.

STORAGE PROTECTION
It is often desirable to protect the contents of certain storage addresses against alteration during the execution of a program. There are three catagories of addresses: those
that are always protected; those that are protected at the option of the programmer;
and those that are never protected during special sequences.

An attempt to write at a protected address is defined as an Illegal Write. No writing
actually takes place, however, and the attempt to write does not stop or interrupt the
execution of the program. An Illegal Write causes a console indicator to light and the
program may sense an Illegal Write as bit 05 of the internal status response code. An
Illegal Write is cleared by a Master Clear, an Internal Clear, or by sensing.
2-3

PERMANENT PROTECTION
The upper 408 memory locations reserved for Auto Load and Auto Dump programs are always
protected against alteration by a special storage protection circuit. The actual addresses
protected depend upon the memory size and encompass the addresses shown in Table 2-2.

TABLE 2-2. AUTO LOAD/AUTO DUMP RESERVED ADDRESSES

Memory
Size

Auto Load and Auto Dump
Reserved Storage Addresses

8K

177 40-17777

16K

37740-37777

32K

77740-77777

Logic circuits sense the total storage capacity of the system and check each storage
address as it appears on the S (address) Bus to see if it is among the protected addresses.
If it is one of those to be protected, reading but no writing is allowed at that address.
The only time that this protection is disabled is when an operator presses the ENTER
AUTO PROGRAM switch on the console so that he may store a new Auto Load or
Auto Dump program. Refer to Section 3, Input/Output Characteristics, for additional
information on the Auto Load and Auto Dump features.

SELECTIVE PBOTECTION
There are 15 three-position toggle switches mounted on the Power Control Panel. Each
switch corresponds to one bit of the 15-bit storage address. The operator may protect
an address or block of addresses in storage by setting each of the switches to one of its
three positions. A view of the Storage Protect switches on the Power Control Panel
appears in the Consoles and Power Control Panel section, and Table 2-3 describes the
switch positions.
Selective protection may be disabled by pressing the Disable Storage Protect switch
on the console. Table 2-4 gives examples of the switch settings needed to protect various
blocks of addresses.

NO PROTECTIION
Addresses 00002 through 00005, 00010 and 00011, which are used by the interrupt system,
are never protected during the interrupt sequence.
2-4

TABLE 2-3. STORAGE PROTECTION SWITCH DESCRIPTIONS
Output

Switch
Position

"1"
"N"

Up
Center

"0"

Down

Description
Each address protected will have a "1" in this bit position.
Each address protected may have either a "1" or a "0" in this position.
For example. when all switches are set to the neutral position. all storage
-is protected. provided that the protect feature is enabled.
Each address protected will have a "0" in this bit position.

TABLE 2-4. STORAGE PROTECTION SWITCH SETTINGS
Examples:
Description of Protected Addresses

Addresses Protected (octal)

Settings - Storage
Protection Switches

Single storage address

000

000

000

001

111

00017

Two nonsequential addresses of a
group of 10s.*

000
000

000
000

000
000

010
010

ONO
Nl0

00020 & 00022
00022 & 00026

Four nonsequential addresses of a
group of 10s.*

000

000

000

010

NON

000

000

000

010

NNl

00020.00021.
00024. & 00025
00021.00023.
00025. & 00027

Four address block- may be the
upper or lower half of a group
of 10s.*

000
000

000
000

000
000

100
100

ONN
1 NN

00040-00043
00044-00047

lOs address block

000

000

000

010

NNN

00020-00027

20s address block

000
000

000
000

001
001

OON
11N

NNN
NNN

00100-00117
00160-00177

40s address block- may be the
upper or lower half of a group
of 100s.*

100
100

000
000

000
000

ONN
1 NN

NNN
NNN

40000-40037
40040-40077

Numerous other groups and combinations of the above groups
may also be protected.

000

000

000

NNN

1 10

NNN

NNN

NNN

NNN

111

NNN

NNN

001

NNN

NNN

00006. 00016.
00026 ... 00076
All XXXX7 addresses
All XX1XX addresses (0010000177.0110001177. etc.)

* The first address of all groups of lOs. 20s. 40s. 1OOa. etc .. must have a lower octal digit of zero.
Blocks of 100a. 200a. 400a. 1000a. 2000a. 4000a. etc .. may be protected in the same manner as
blocks of lOa. 20a. & 40a.

2-5

Section 3
INPUT/OUTPUT CHARACTERISTICS
Data is transferred between a 3200 Computer and its associated external equipment via a
3206 or 3207 Communication Channel. For programming purposes, the eight possible 3206
channels in a system are designated by numbers 0 through 7. A 3207 replaces the 3206 type
I/O channels 2 and 3 in expanded systems. It is programmed as Channel 2.

INTERFACE SIGNALS
Up to eight external equipment controllers may be attached in parallel to each 3206 Communication Channel. Figure 3-1 shows the principal signals which flow between a 3206 and its
external equipment. The 12 status lines are active only between the channel and the controller to which it has been connected by the CON (77.0) instruction. The eight interrupt lines,
designated 0-7, connect to all eight controllers attached to a channel. These lines match the
Equipment Number switch setting on each controller. For a complete description of the I/O
interface signals as well as an I/O timing chart, refer to the 3000 Series I/O Specifications
(Pub. No. 60048800).

Data Lines (12 for 3206; 24 for 3207)
Parity Lines (1 for 3206; 2 for 3207)
Connect
Function
3206 or 3207

Read

External

Communication

Write

Equipment

Channel

Data Si(.]nal

Controller

Master Clear
Clear External Interrupt
Channel Busv
Reply
Reiect
End of Record
External Parity Error
Status Lines (12)
Interrupt Lines (8)
SUDDress Assemblv/Disassemblv
Word Mark
Sample Status Time

Figure 3-1. Principal Signals Between I/O Channel and External Equipment

3-1

I/O PARITY
PARITY CHECKING WITH THE 3206
The computer checks parity by one method for Connect, Function and Write operations,
and by a second method for Read operations.

Connect, Function and Write
During the Connect, Function and Write operations, the Data Bus circuit of the computation section generates a parity bit and sends it to the external equipment with each
12-bit byte of data via the I/O channel. The external equipment generates a second
parity bit and compares it with the parity bit from the computer. If an error exists, the
external equipment sends an External Parity Error signal back to the I/O channel.
This signal causes the logic within the channel to provide a "I" on sense line O. The
logic is cleared every time an attempt is made to execute a Connect, Function, Read,
or Write operation with this channel. It may also be channel-cleared by the program or
master-cleared by the operator. If a transmission parity error is received from a controller, the controller remains inactive until the I/O channel is cleared.

Read
During a Read operation, the external equipment generates a parity bit and sends it to
the I/O channel along with each 12-bit byte of data. The I/O channel holds the parity
bit while the data is forwarded to the computation section. The Data Bus circuit of the
computation section generates a second parity bit and sends it back to the I/O channel.
The channel compares this second signal with the parity signal which was generated by
the external equipment. If an error exists, certain channel logic is set by an enable from
the computation section. This logic provides a "I" on sense line O. The channel parity
logic is cleared every time an attempt is made to execute a Connect, Function, Read or
Write operation with this channel. It may also be channel-cleared by the program or
master-cleared by the operator. If a transmission parity error is channel-generated, it
must be sensed by the INS instruction. If the error is not sensed, the next channel operation will clear the error indication.

PARITY CHECKING WITH THE 3207
The computer checks parity in a 3207 in a slightly different manner than in a 3206.

Connect, Function and Write
During the Connect, Function and Write operations, the Data Bus circuit in the computation section generates a parity bit for the lower 12-bit byte of each data word. The
3207 generates a parity bit for the upper byte. Both parity bits are sent to the external
equipment via the I/O channel. The external equipment generates' parity bits and compares them with the parity bits from the computer. If an error exists, the external equipment sends an External Parity Error signal back to the I/O channel where it can set the
channel parity logic and provide a "I" on sense line O. Clearing the logic occurs in the
same way as it does in the 3206. If a transmission parity error is received from a controller, the controller remains inactive until the I/O channel is cleared.

Read
During a Read operation, the external equipment generates two parity bits per data
word, one for eaeh 12-bit byte, and sends them to the 3207 along with the word. The
I/O channel holds the parity bit for the lower byte while it forwards the byte to the
computation section. The Data Bus circuit of the computation section generates a second
parity bit for this byte and sends it back to the I/O channel.
3-2

Simultaneously, the 3207 retains the parity bit for the upper byte of the data word. The
I/O channel generates a second parity bit for the upper byte as it forwards the byte to
the computation section.
The 3207 compares the two parity bits generated by the computer with the two parity
bits generated by the external equipment. If an error exists, the channel parity logic is
set by an enable from the computation section, thus providing a "1" on sense line O.
Clearing the logic also occurs the same way as it does in the 3206. If a transmission
parity error is channel-generated, it must be sensed- by the INS instruction. If the error
is not sensed, the next channel operation will clear the error indicator.

AUTO LOAD/AUTO DUMP
The Auto Load/Auto Dump feature allows the programmer 3210 storage addresses in
which to store two short routines. These routines are used generaHy to receive and
transmit data to external equipment. Assuming the routines are already in storage, the
operator can initiate these operations with the AUTO LOAD and AUTO DUMP switches
on the console.

PRELIMINARY CONSIDERATIONS
Addresses 77740 through 77777 are normally protected from being written into. To enter
Auto Load or Auto Dump routines, the operator presses the ENTER AUTO PROGRAM
switch on the console, enters the routine, then Master Clears the computlsr. Before pressing
the AUTO LOAD or AUTO DUMP switches, the operator must first Master Clear the
computer.

AUTO LOAD
The AUTO LOAD switch automatically sets (P) to address 77740. This group of 16
instructions may be used to bring in a program from a magnetic tape unit or other peripheral device. The last instruction in this routine should be a jump to the first address
of the newly stored program.

AUTO DUMP
The AUTO DUMP switch automatically sets (P) to address 77760. This group of 16
instructions is most often used to output a block of data to a magnetic tape unit or other
peripheral equipment. The last instruction in this routine may be a jump to any storage
area.

3-3

SATELLITE CONFIGURATIONS
Figure 3-2 shows three possible Satellite configurations that utilize one or more 3200
Computer Systems.

3200 Computer

3200 Computer
3206
Communication
Channel
System

3200 Computer

3206
Communication
Channel

3682
Satellite
Coupler

1*

System

*

3206
Communication
Channel

3606
Data
Channel

3682
Satellite
Coupler

System

System

System

*

*

3200 Computer
3206
Communication
Channel

3600 Computer

1*

3682
Satellite
Coupler

3681 Data
Channel
Converter

*
Figure 3-2. Satellite Configurations

*NOTE: May be connected to seven additional external equipments.

3-4

160/160-A
Computer

Section 4
INTERRUPT SYSTEM
GENERAL INFORMATION
The Interrupt Control section ofthe 3200 Computer is capable of testing for the existence
of certain internal and external conditions without having these tests in the main program. Examples of these conditions are internal faults and external equipment end-ofoperation. Near the end of each RNI cycle, a test is made for interruptible conditions.
If one ofthese conditions exists, execution of the main program halts, the contents of the
Program Address register are stored, and an interrupt routine is initiated. This interrupt
routine, initially stored in memory, performs the necessary functions for the existing
condition and then jumps back to the last unexecuted step in the main program. The
instruction being read when the interrupt is recognized is executed when the main program is resumed.
There are four categories of interrupts in the 3200 Computer: Internal Condition interrupts, InputlOutput (1/0) interrupts, Trapped Instruction interrupts and a special Power
Failure interrupt. The store operations required for all four types of interrupts occur
regardless of the state or selection of the storage protection feature described in Section 2.
An additional manual interrupt is set by a switch on either the computer or typewriter
console. This interrupt is not masked since this switch is pressed only when an interrupt
is desired. The interrupt is recognized if the interrupt system is enabled. The interrupt
condition is automatically cleared after the interrupt is recognized.

INTERRUPT CONDITIONS
INTERNAL INTERRUPTS
Anyone of six internal conditions may cause an interrupt during the execution of a program. These conditions and their descriptions follow.

Arithmetic Overflow Fault
The Arithmetic Overflow fault is set when the capacity of the adder is exceeded. Its
capacity, including sign, is 24 or 48 bits for 24-bit precision and 48-bit precision, respectively.

Divide Fault
The Divide fault sets if a quotient, including sign, exceeds 24 or 48 bits for 24-bit precision
and 48-bit precision, respectively. Therefore, attempts to divide by too small a number,
including positive and negative zero, result in a Divide fault. A Divide fault also occurs
when a floating point divisor is either equal to zero or not in floating point format. The
results in the A, Q, and E registers are insignificant if a fault occurs. A Divide fault can
be correctly sensed only after the current instruction has been executed.
4-1

Exponent OV4~rflow/Underfiow Fault
During all floating point arithmetic operations, exponential overflow occurs if the ex-.
ponent exceeds +17778 or is less than -17778.

BCD Fault
A BCD Fault is set if:
1. The lower 4 bits of any character, except the least significant, exceeds 118 (910).
Characters are tested for legality only during the LDE, ADE, and SBE instructions. In all cases, ir'the value 118 (910) is exceeded, the value zero is used
for that character.
2. The upper 2 bits of any character, except the least significant, do not equal zero.
3. An attempt is made to set (load) the D register with 158, 168 or 178.
Search/MoVE~

Interrupt

The SearchlMove control may be programmed to generate an interrupt during a 71 or
72 instruction for either of the following conditions:
1. Completion of an equality or inequality search.
2. Completion of a block move.

Real-Time Clock Interrupt
The Real-Time Clock interrupt is generated when the clock reaches a prespecified time
that has been stored in register 32 of the Register File.

TRAPPED INSTRUCTION INTERRUPTS
A translator within the 3200 Computer detects and traps the 55-70 instructions if the
appropriate option is not present in the system. Although they are not true interrupts,
trapped instructions are processed like interrupts once they have been detected. A conventional interrupt always takes priority over a trapped sequence. The following operations take place when a trapped instruction is recognized:
1. P + 1 is stored in the lower 15 bits of address 00010.
2. The upper 6 bits of F are stored in the lower 6 bits of address 00011; the upper
18 bits remain unchanged.
3. Program control is transferred to address 00011 and an RNI cycle is executed.
Further information on trapped instructions may be found in the General Information
paragraph of Section 7.

POWER FAILURE INTERRUPT
If source power to a 3200 Computer is removed, the failure is detected and the computer
program is interrupted; this interrupt is necessary to prepare for a controlled shutdown
and prevent the loss of data. This operation requires 16 ms for detection, and up to 4 ms
for processing a special Power Failure interrupt routine.

The Power Failure interrupt overrides any other interrupt (internal or I/O), as well as
the trap sequence, regardless of the state of the interrupt control. Since this interrupt
overrides all others, the address where the present contents of P are stored and the
address to which program control is transferred must be different from that for a normal
interrupt. When a Power Failure interrupt occurs, the machine stores the contents of
P in the lower 15 bits of address 00002 and transfers program control to address 00003.
The normal interrupt system is disabled during a power failure sequence; i.e., the hardware simulates the execution of."1 DINT (77.73) instruction.
4-2

I/O INTERRUPTS
I/O Channlel Interrupts
Any of the eight possible 1/0 channels may be programmed to generate an interrupt for either
of the following conditions:
1. Reaching the end of an input or output block.
2. Receiving an End of Record (Disconnect) signal from an external device.

I/O Equipment Interrupt
The 1/0 equipment interrupt is set when an interrupt signal is received from any of eight
peripheral equipment controllers connected to any of the eight possible 1/0 channels (there
may be a total of 64 interrupt lines). The interrupt remains set until the computer directs
the originating device to cancel it with a function code.

Associated Processor Interrupt
In a system of two or more processors (computers), each processor may interrupt the
processor to its left by executing an IAPR (77.57) instruction. The interrupting processor
must interrupt via its storage modules 0 and 1, which are storage modules 2 and 3 of the
processor being interrupted. This interrupt is not masked and becomes cleared as soon
as it is recognized.

INTERRUPT MASK REGISTER
The programmer can choose to honor or ignore an interrupt by means of the Interrupt
Mask register. All but two of the normal interrupt conditions are represented by the 12
Interrupt Mask register bits. The manual interrupt and the associated processor interrupt
are not masked. The mask is selectively set with the SSIM (77.52) instruction and seiectively cleared by the SCIM (77.53) instruction. See Table 4-1 for Interrupt Mask
register bit assignments.
The contents ofthe Interrupt Mask register may be transferred to the upper 12 bits of the
A register for ]programming purposes with the COPY (77.2) or CINS (77.3) instructions.
TA.BLE 4-1. INTERRUPT MASK REGISTER BIT ASSIGNMENTS
Mask Bits

00
01
02
03
04
05
06
07
08
09
10
11

Mask Codes

Interrupt Conditions Represented
I/O Channel

0001
0002
0004
0010
0020
0040
0100
0200
0400
1000
2000
4000

0
1
2
3
4

(Includes interrupts
generated within the
channel and external
equipment interrupts.)

5
6
7.1
Real-time clock
Exponent overflow/underflow & BCD faults
Arithmetic overflow & divide faults
Search/Move completion

INTERRUPT CONTROL
A program can recognize, sense, and clear interrupts, and enable or disable interrupt
control through the use of certain instructions.
4-3

ENABLING OR DISABLING INTERRUPT CONTROL
Instruction EINT (77.74) enables the interrupt system and the DINT instruction (77.73)
disables it. Mtler recognizing an interrupt and entering the interrupt sequence, other interrupts are disabled automatically. When leaving the interrupt subroutine, the interrupt must
again be enabled by the EINT instruction, if awaiting interrupts or subsequent interrupts are
to be recognized by the system. After executing an EINT instruction, at least one and up to
four more instructions may be executed before an interrupt is recognized, depending on the
type of interrupt.
To prevent extraneous interrupts from occurring, the Interrupt Mask register must not be
set or cleared while the interrupt system is enabled.

INTERRUPT PRIORITY
An order of priority exists between the various interrupt conditions. As soon as an interrupt becomes active, the computer scans the priority list until it reaches an interrupt
that is active. The computer processes this interrupt and the scanner returns to the top
of the list where it waits for another active interrupt to appear. Table 4-2 lists the order
of priority.
TABLE 4-2. INTERRUPT PRIORITY
Priority

Type of Interrupt

1

Arithmetic overflow or divide fault
Exponent overflowlunderflow or
BCD fault
External lID interrupts*
lID channel interrupts**
Searchlmove interrupt
Real-time clock interrupt
Manual interrupt
Associated processor interrupt

2

3-66
67-74
75
76
77

78

SENSING INTERRUPTS
The programmer may selectively sense interrupts, independent of the Interrupt Mask
register, by using the INTS (77.4) instruction. Sensing the presence of internal faults automatically clears them. Channel interrupt lines that represent channels not present in
the system are always sensed as being active. However, the Interrupt Mask register bits
representing these missing channels may never be set; therefore, no interrupt can ever
occur.

CLEARING INTERRUPTS
I/O equipment interrupts may be cleared by:
II»
Pressing the EXTERNAL CLEAR button on the console.
• Pressing the entry keyboard MC button.
s Executing an IOCL (77.51) instruction, or
.. Reselecting or disabling the interrupt with a function code, SEL (77.1) instruction.
Within a program, I/O channel interrupts must be selectively cleared by the INCL (77.50)
or JOCL (77.51) instructions.
*There are eight interrupt lines on each of the eight possible I/O channels, or 64 lines in all. On any given channel,
a lower numbered line has priority oyer'a higher numbered line. Likewise, a lower numbered channel has priority
over a higher numbered channel. Example: line 0 of channel 0 has highest priority of all external I/O interrupts,
line 0 of channel 1 has second highest, and line 7 of channel 7 has the lowest.
**A lower numbered I/O channel interrupt has priority over a higher numbered I/O channel interrupt.
Rev.H

4-4

The Real-time Clock, Arithmetic, and Search/Move Completion interrupts may be
cleared by:
Ell
Sensing, after which the interrupts are automatically cleared.
Ell
Executing an INCL (77.50) instruction, or
$
Pressing the MC or INTERNAL CLEAR buttons.
In the INCL instruction, x represents the contents ofthe Interrupt Mask register. Even though
the Interrupt Mask register bits usually represent both I/O channel and I/O equipment
interrupts, an INCL instruction clears only internal I/O channel interrupts. In addition to
clearing a ehannel interrupt with an INCL instruction, the program must clear the I/O
equipment interrupt with a function code SEL (77.1) instruction. The manual and associated
processor interrupts are automatically cleared after they are recognized by the computer
during an RNI cycle.

INTERRUPT PROCESSING
Four conditions must be met before a normal interrupt can be processed:
1. With the exception of the Manual interrupt and the Associated Processor interrupt, a bit representing the interrupt condition must be set to "I" in the
Interrupt Mask register.
2. The interrupt system must have been enabled.
3. An interrupt-causing condition must exist.
4. The interrupt scanning logic (Refer to Table 4-2) must reach the level of the
active interrupt on the priority list.
When an active interrupt has met the above conditions, the following takes place:
1. The instruction in progress proceeds until the point is reached in the RNI cycle
where an interrupt can be recognized. At this time the count in P has not been
advanced nor has any operation been initiated. When an interrupt is recognized,
the address of the current unexecuted instruction in P is stored in address 00004.
2. A number representing the interrupt-causing condition is stored in the lower
12 bits of address 00005 without modifying the upper bits. Table 4-3 lists the
octal codes which are stored for each interrupt condition.
3. Program control is transferred to address 00005 and an RNI cycle is executed.

TABLE 4-3
REPRESENTATIVE INTERRUPT CODES
Conditions

Codes

External interrupt
1/0 channel interrupt
Real-time clock interrupt
Arithmetic overflow fault
Divide fault
Exponent overflow fault
BCD fault
Searchlmove interrupt
Manual interrupt
Associated processor interrupt

*OOLCh
010Ch
0110
0111
0112
0113
0114
0115
0116
0117

*L = line 0-7 and Ch =channel designator. 0-7

4-5

Section 5
CONSOLE AND POWER CONTROL PANEL
The 3200 desk console enables the computer operator to control and observe computer operation. This section describes the operator's controls and the significance of the visual indicators.
Also included in this section is a view of the Power Control Panel and a description of its
operation.

CONSOLE
REGISTER DISPLAYS
Communication Register
Data entered into any of the operational registers (except the ED register) must first pass
through the Communication register. Starting with the uppermost digit, data is entered into
the Communication register by first depressing a register switch and then depressing the
numeric keyboard switches. A blue Active Digit indicator light is superimposed on each
digit position of the Communication register as digit entry progresses. When data is to be
entered into the BI, B2, Rl or P registers, the Active Digit indicator automatically starts
at the fifth digit position of the Communication register.
Depressing the TRANSFER switch causes the data to be transferred from the Communication register to the designated register. Depressing the TRANSFER switch again results
in transferring all zeros to the register.

E Register
The E register is'displayed as either EU and EL or ED. Whenever the E register is being displayed, the A and Q registers cannot be displayed and vice versa. The register(s) currently
displayed is denoted by the illumination of one ofthe three register display indicators located
between the register displays.
Figure 5-2 illustrates specific digit functions when the EU EL register is displayed on the console. Figure 5-3 illustrates the digit functions when the ED register is displayed.
NOTE

The ED register may be entered directly with any of the 10 numeric keyboard characters. As
each digit is entered, the preceding digit is shifted one digit position left, increasing its
significance. Each succeeding entry shifts the digits one position left and inserts the newly
entered digit into the lowest order position. After a maximum of 13 digits have been entered
(including the overflow digit) the uppermost characters are shifted end-off as additional
characters are entered. The EU EL register cannot be entered into by a keyboard operation.
Appropriate inter-register transfer instructions must be utilized for entry into this register.
5-1

c.n

N

1. External status indicators
2. Internal status indicators
3. Thumbwheel breakpoint switch
4. Emergency power cutoff switch
5. Adjustable auto-step control
6. Octal register displays
7. Detachable keyboard

Figure 5-1. Front View of 3200 Console Controls

1563

1565

V

V

Octal digits 8 through 15

Octal digits 0 through 7

Figure 5-2. EU EL Register Display

01
I

CIJ

Decimal digits 0 through 11

Overflow digit

Sign of ED
MSD of second operand
Sign of second operand

Figure 5-3. ED Register Display

Other Registers
The A, Q, P, Bl, B~ and Rl registers, described in the System Description Section of
this maIll,Ial,:.are displayed on the Integrated Console in binary form.

CONSOLE lOUDSPEAKER
The console loudspeaker and its associated volume control are mounted underneath the
console table. The loudspeaker receives its input from the upper 3 bits of the A register.
An audible sound is produced when one or more of these bits are toggled at an audio rate.
Loudspeaker volume is controlled by rotating the volume control.

STATUS INDICATORS
External Status Indicators
The external status indicators display the existing conditions of I/O channels 0-7. Conditions displayed are Read, Write, Reject, Connect, Function, and Interrupt. Refer to
Figure 5-4.

Figure 5-4. External Status Indicators

Internal Status Indicators
Six columns of internal status indicators are located on the display section of the consoles. Refer to Figure 5-5. When the particular indicator is glowing, the condition or
fault described below exists:

5-4

Figure 5-5. Internal Status Indicators

1. STORAGE ACTIVE 0-1-2-3
The Storage Active lights indicate the storage area currently being referenced. Digit 0
glows when the first 8K of storage is referenced. In expanded 3200 systems, digit 1 indicates that the second 8K storage section is referenced, digit 2 the third 8K section, and
digit 3 glows when the fourth 8K section is referenced.

2. CONDITIONS
STANDBY -Indicates that the main power switch is on but the individual logic supplies
are still off.
INTERRUPT DISABLED-Indicates the interrupt system has been disabled by executing
the DINT (77.73) instruction or by a Master Clear.
ILLEGAL WRITE - Glows whenever an attempt is made to write into the area of storage
currently being protected by the storage protect switches. This indicator will also glow
if an attempt is made to write into the Auto Load or Auto Dump storage areas. This condition is cleared by executing an INS (77.3) instruction or performing a Master Clear.
PARITY ERROR-Indicates that a parity error has occurred in storage. When the error
is detected, this indicator glows and program execution stops. Performing a Master Clear
clears the condition. Transmission parity errors do not affect this indicator.
3. CYCLE CRNI-RAD-ROP-STO)
These indicators represent the four program cycles: Read Next Instruction, Read Address,
Read Operand, and Store Operand. They are lit while the respective cycles are in progress.
4. FAULTS
This column of indicators represents the four arithmetic fault conditions:
ARITHMETIC OVERFLOW - The arithmetic overflow fault is set when the capacity of
the adder is exceeded. Its capacity, including sign, is 24 or 48 bits for 24-bit precision and
48-bit precision, respectively.

5-5

DIVIDE - The divide fault sets if a quotient, including sign, exceeds 24 or 48 bits for 24bit precision and 48-bit precision, respectively. Therefore, attempts to divide by too small
a number,' including positive and negative zero, result in a divide fault. During floating
point division, a divide fault occurs if division by zero or by a number that is not in floating
point format is attempted. If the divisor is not properly normalized a divide fault may also
occur. Refer to Appendix B for a description of normalization.
EXPONENT OVERFLOW/UNDERFLOW -This fault indicator glows when either an
exponent overflow (>+ 1777 H) or an expon~nt underflow « -1777 s) condition exists.
DECIMAL-A decimal (BCD) fault is set if:
• The lower 4 bits of any character except the least significant exceed 11H (9 10 ), Characters
are tested for legality only during the LDE, ADE and SBE instructions. In all cases,
if the value 118 (910) is exceeded, the value zero will be used for that character.
• The upper 2 bits of any character except the least significant do not equal zero.
• An attempt is made to load the D register with 158, 168, or 178.
5. TEMPERATURE WARNING
If the upper temperature limit of the normal operating range within a section of the computer is exceeded, a corresponding TEMP WARNING indicator glows. The indicators correspond to computer sections illustrated in Figure 5-6.
6. FAULTS
This column of indicators represents abnormal operating conditions.
TEMPERATURE HIGH - If the TEMP WARNING indicators are glowing and an absolute
temperature is exceeded, the computer will automatically shut off logic power. The TEMP
HIGH indicator for the particular computer section continues to glow until the temperature drops below the absolute limit. Secondary power must be manually re-applied before
normal operation can resume.
If the THERMOSTAT BYPASS console switch is on, all four TEMP HIGH indicators glow
and the temperature protection feature is defeated.
CIRCUIT BREAKER - This indicator glows if the circuit breakers governing any of the
internal power supplies are off.
TERMINATOR POWER-If output power from the internal terminator power supplies
fails, this indicator glows.

Temperature
Indicator

2

16K Storage
and 110
Logic

Temperature
Indicator
1

Block Control,
Interrupt,
and Optional
Arithmetic Logic

Temperature
Indicator

Temperature
Indicator

0

3

Main Control
and Arithmetic
Logic

16K Storage
and 110
Logic

Figure 5-6. Temperature Warning Designations for an
Expanded 3200 Computer, Front View.

5-6

SWITCHES
Switches associated with a 3200 Computer _are classified as console switches and keyboard
switches. Console switches include the following:
• The EMERGENCY OFF switch.
• A group of operator/maintenance switches on the console main-frame.
• The Breakpoint switch assembly (Figure 5-8).

Keyboard Switches
The console keyboard switches are used for entering data manually into the computer and
for controlling its operation. A front view of the keyboard appears in Figure 5-7 and Table
5-1 describes the function ofthe keyboard switches.

Console Switches
EMERGENCY OFF SWITCH -This red rectangular momentary switch is used to remove
power from the whole computer system in case of a fire or other emergency. It should not
be used for a normal power shutdown. Refer to the SOURCE POWER OFF switch description in the Power Control Panel description of this section.
OPERATOR/MAINTENANCE SWITCHES -Table 5-2 describes the operator/maintenance
switches located on the console main-frame.
BREAKPOINT SWITCH ASSEMBLY -The Breakpoint switch is a six-section, eight-position, thumb-wheel switch. The left-hand wheel selects the operating mode, and the other
five wheels specify a register number or storage address. There are four mode positions
on the mode selector switch with an OFF position between each mode; these modes are
BPI, BPO, REG, and STO.
BPI and BPO Modes: The address on the S Bus is continually compared with the instruction or operand address specified by the Breakpoint digit switches. When the selector
switch is set to BPI, the computer stops ifthese values become equal during an RNI (Read
Next Instruction) sequence. When the mode selector switch is set to BPO, the computer
stops ifthese values become equal during an ROP (Read Operand) or STO (Store) sequence.
REG and STO Modes: In these two modes, the operator may either monitor the contents
of a register location or storage address specified by the thumb-wheel digit switches, or
he may store a word in these locations. To monitor a storage location:
1. Set the mode selector to REG (register file location) or STO (storage).
2. Set the Breakpoint switch to the desired register number or storage address.
3. Press the READ STO switch on the keyboard.
4·. Adjust the Auto Step control to vary the display rate.
The register or storage contents are repeatedly displayed in the Communication register
at the selected repetition rate uI).til another keyboard button is pressed to release READ
STO. To write a word in storage:
1. Set the mode selector to REG or STO.
2. Set the Breakpoint switch to the desired register number or storage location.
3. Press the WRITE STO switch on the keyboard.
4. Enter data into the Communication register by depressing the numeric switches
and finally the TRANSFER switch.
The data is entered into the desired storage location or Register File location at the end
of the instruction that is currently being executed by the computer. Pressing any other
register or mode selector switch releases WRITE STO operation.
5-7

Figure 5-7. Console Keyboard

NOTE

The upper two rows of keyboard switches are mechanically linked together. This feature
prevents more than one switch from being active at anyone time.
5-8

TABLE 5-1. KEYBOARD SWITCH FUNCTIONS
SWITCH NAME

ILLUMINATED

B1 to B3

Yes

Enables data to be manually entered into Index registers B1,
B2, or B3 from the keyboard.

P

Yes

Enables an address to be manually entered from the keyboard
into the P register.

A

Yes

Causes both A and Q to be displayed, but permits entry only
into A.

Q

Yes

Causes both A and Q to be displayed, but permits entry only
into Q.

EU*

Yes

Causes EU and EL to be displayed. Manual entry is not possible.

EL*

Yes

Same as EU.

ED*

Yes

Causes ED to be displayed and enables manual entry directly
into this register. Refer to ED register description.

KYBD
OFF
(Keyboard Off)

Yes

Deactivates all keyboard controls.

EN
(Enter)

Yes

Permits data to be manually entered into storage while the
computer is stopped. First address of sequence must be previously entered into P. Pressing the TRANSFER switch advances P.

SW
(Sweep)

Yes

Permits unexecuted instructions to "be read from cpnsecutive
storage locations. First address of sequence must·be fir-st entered into P. Pressing the TRANSFER switch advances P.

WRITE
STO
(Write Storage)

Yes

Permits keyboard entry into the storage 10clltion specified by the
thumb-wheel switches. Entry occurs each time the TRANSFER
switch is pnessed whether the computer is in the GO mode or
,
stopped.

READ
STO
(Read Storage)

Yes

Permits the contents of the storage register location specified
by the thumb-wheel switches to be displayed. The display rate
is determined by the Auto-Step control.

KYBD CLR
(Keyboard Clear)

Yes

Clears the Communication register.

GO

Yes

Starts the program execution at the address specified by the
P register. Not used for Sweep or Enter operations.

SW/EN
CONT
(Sweep/Enter
Continuous)

Yes

Enables Sweep or Enter operations to proceed continuously
through storage without pressing the TRANSFER switch.

STOP

Yes

Stops the computer at the end of the current instruction.

TRANSFER

No

-r:ransfers data in the Comn;1Unication register to a selected
register or storage location.

MC
(Master Clear)

No

Performs both an internal and external clear. Disabled when GO
switch is depressed and the computer is in the GO mode.

No

These switches, when pressed one at a time, allow entry of that
particular digit into the Communication register in the binary
digit position denoted by the active digit indicator.

8 and 9

No

Depressing either of these switches permits entry of that digit
directly into the ED register. The option must be present in the
system and the ED register selection switch depressed.

+ or

No

Depressing either of these switches permits entry into the sign of
ED digit (refer to Figure 5-2) in the ED register. These switches
may be depressed at any time during the numeric entry of ED. The
sign of ED may be changed by depressing the opposite sign switch.

o through

7

(Plus or Minus)

DESCRIPTION

*Depressing any of the switches associated with the arithmetic options when the optional logic is not present
produces equivocal results.

5-9

TABLE 5-2. CONSOLE MAIN-FRAME SWITCHES
SWITCH NAME

MANUAL
INTERRUPT

SELECT
STOP 1
SELECT
JUMP (1 through 6)
ENTER AUTO
PROGRAM

FUNCTION

Forces the computer into an interrupt routine if the computer is
in the GO mode. If the computer is stopped when the switch is
pressed, it will go into an interrupt routine as soon as the GO switch
is depressed.
Stops the computer when the SLS (77.70) instruction is read.

Switches are depressed in accordance with programs utilizing the
selective jump (SJ 1-6) instruction.
Allows the operator to enter the Auto Load and Auto Dump storage
areas (addresses 77740 to 77777) with different data.

EXTERNAL
CLEAR

Master clears all external equipments and the 1/0 channels.

INTERNAL
CLEAR

Master clears internal conditions and registers.

DISABLE
STO PROTECT

Disables the protection feature switch of the 1 5 storage protect
switches. This switch has no effect on the protected Auto Load and
Auto Dump storage areas.

DISABLE
ADVANCE P

Prevents the P register from being incremented. When the GO
switch on the keyboard is depressed, the same instruction is repeated.

THERMOSTAT
BYPASS

Allows computation to proceed regardless of unfavorable temperatures within the computer.

DISABLE
PARITY

Prevents recognition of parity errors from all storage modules.

INSTRUCTION
STEP

Enables the operator to step through the program instruction by instruction. An instruction is executed each time the switch is depressed.

BCD STEP

Enables the operator to step through a BCD instruction one sequence at a time.

STORAGE
CYCLE STEP

Enables the operator to step through an instruction one storage
cycle at a time, i.e. RNI. RAD, ROP, or STO.

AUTO STEP

Permits instructions to be executed in a slow speed GO mode. The
speed is regulated by the auto-step speed control on the console. There
are approximately 3 to 50 instructions executed per second.

AUTO LOAD

If the computer has been master cleared and t~e Auto Load switch is
depressed, the computer will automatically jump to address 77740
and execute the instruction stored there. Refer to Auto Load/Auto
Dump in Section 3.

TYPE LOAD

Permits the operator to enter a block of data from the typewriter.
The data is defined by the lower bounds in register 23 and upper
bounds in register 33 of the Register File. Refer to the Typewriter
Section for additional information.

AUTO DUMP

This switch performs the same function as the Auto Load switch with
the exception of jumping to address 77760.

TYPE DUMP

Similar to the Type Load operation, this switch causes a block of
data to be printed by the typewriter. The data in storage is defined
by registers 23 and 33.

5-10

Examples of Keyboard Switch Functions
1. To enter data into the A register:
a. Depress the A register switch.
b. Enter all eight digits of the Communication register by depressing the appropriate numeric key switches.*
c. Depress the TRANSFER switch.
d. Depress the KEYBOARD OFF switch.
2. To enter data into the Q register:
Depress the Q register switch and repeat steps b through d of example 1.
3. To enter the Program Address Counter (P register) with a specific address:
a. Depress the P register switch.
b. Enter the lower five digits of the Communication register by depressing the
appropriate numeric key switches.
c. Depress the TRANSFER switch.
d. Depress the KEYBOARD OFF switch.
4. To enter an operand at a specific address**:
a. Perform step 3.
b. Depress the EN switch.
c. Enter all eight digits ofthe Communication register by depressing the appropriate numeric key switches.
d. Depress the TRANSFER switch.
e. The count in the Program Address Counter has now incremented by one. If
data is to be entered into this memory location, repeat steps c and d for as
many succeeding entries as required.
f. Depress the KEYBOARD OFF switch when all data has been entered into
the successive group of memory locations.
5. To read an operand from a specific storage address:
a. Perform step 3.
b. Depress the SW switch.
c. Depress the TRANSFER switch.
d. The contents of the specified stmage address are now displayed in the Communication register. (The Program Address Counter is not incremented
when the TRANSFER switch is initially depressed.)
e. If the TRANSFER switch is depressed again, the Program Address Counter
is incremented by one, and the contents of the new address are displayed.
f. Depress the KEYBOARD OFF switch when all the desired memory locations within a successive group have been examined.
6. To enter zeros or another operand into all storage locations:

NOTE

Step 5 only permits the operator to examine the contents of specific storage locations. The
instructions are not executed during this operation.

*If all eight digit positions of the Communication register are not entered before the Transfer switch is
depressed, zeros will be entered into the remaining digit positions.
**The breakpoint switch may be used in lieu of this operation. Refer to example d, Figure 5-8.

5-11

a. Depress the EN switch.
b. Enter all eight digits of the Communication register by depressing the appropriate numeric key switches.
c. Depress the SW/EN CONT switch.
d. Depress the STOP switch.
e. Depress the KEYBOARD OFF switch.
7. The following procedure is applicable for sweeping storage during certain maintenance routines:
a. Depress the SW switch.
b. Depress the SWlEN CONT switch. The' switch remains depressed until the
STOP switch is depressed.
c. Depress the STOP switch.
d. Depress the KEYBOARD OFF switch.

Examples of Console Switch Functions
1. To enter a special routine into the Auto Load storage area:
a. Depress the MC (Master Clear) keyboard switch.
b. Holding down the keyboard STOP switch, depress the AUTO LOAD switch.
Release both switches. The P register should now read 77740. (Holding the
STOP switch down prevents the computer from entering the GO mode and executing the previous Auto Load routine.)
c. Depress the ENTER AUTO PROGRAM switch.
d. Depress the keyboard EN switch.
e. Enter the first instruction of the new routine at address 77740 by depressing
the appropriate numeric key switches.
f. Depress the keyboard TRANSFER switch.
g. Repeat steps e and f for addresses 77741 through 77757.
h. Depress the MC switch. This clears the registers and cancels the ENTER AUTO
PROGRAM function.
i. Depress the KEYBOARD OFF switch.
2. To enter a special routine into the Auto Dump storage area:
Repeat steps a through i of example 1 using the AUTO DUMP switch and filling
the storage area covered by addresses 77760 through 77777.
3. To execute the Auto Loadroutine:
a. Depress the keyboard MC switch.
b. Depress the AUTO LOAD switch. The computer automatically executes the
Auto Load routine and stops when a stop or halt instruction is recognized. The
Auto Load function is automaticaHy cleared when the computer stops.
4. To execut~ the Auto Dump routine:
Perform steps a and b in example 3 but use the AUTO DUMP switch instead of the
AUTO LOAD switch.
5. To execute a program at an Auto Step rate:
a. Set the P register to the first address of the program to be executed.
b. Depress the AUTO STEP switch.
c. Adjust the AUTO STEP display rate control.
d. When enough of the program has been executed, depress the AUTO STEP switch
again to cancel the function. The only way to exit from the Auto Step mode is
to depress the AUTO STEP switch again. In the Auto Step mode, halt and jump
instructions are executed but the computer will not stop. Neither will program
execution be affected by depressing the STOP switch. The computer will continue
cycling through memory until the AUTO STEP switch is again depressed.

5-12

EXAMPLE B

EXAMPLE A

The breakpoint switch is inoperative whenever an
OFF designator is displayed. An OFF designator
separates the REG, STO, BPI and BPO positions.

During the normal execution of a program. the
computer stops when an RNI is attempted at memory location 05443. A jump to this location also
causes the computer to stop. If the program references memory location 05443 for an operand, the
computer ignores the Breakpoint switch.

EXAMPLE C

EXAMPLE D

The computer stops only when an attempt is made to
read or store an operand at address 00413.

Ifthe WRITE STO switch on the keyboard switch is
depressed and data has been entered into the
Communication register, the data is transferred
to memory location 00104 when the Transfer switch
is depressed.

Figure 5-8. Breakpoint Switch Examples

5-13

EXAMPLE E

EXAMPLE F

If the WRITE STO switch on the keyboard is depressed and data has been entered into the Communication register, the data will be transferred to
register 77 when the TRANSFER switch is depressed. (Only the lower two digits are recognized
when the designator switch is in the REG position.
The programmer must use caution when writing
into the Register File to prevent destruction of
other data. Refer to Section 1, Table 1-3.)

If the READ STO switch on the keyboard is depressed, the contents of memory location 27004
are displayed in the Communication register at a
repetition rate determined by the auto step control.
(If the memory location depicted by the breakpoint
switch exceeds the storage capacity of the system,
the computer selects the address that corresponds
to the storage capacity of the system.)

EXAMPLE G

If the READ STO switch on the keyboard is depressed, the contents of register 22 are displayed
in the Communication register at a repetition rate
determined by the Auto Step control. (Only the
lower two digits are of consequence when the REG
designator is displayed. In this case register 22,
the real time clock, is being referenced.)

Figure 5-8. Breakpoint Switch Examples (Cant.)

5-14

POWER CONTROL PANEL
Power for the 3200 Computer System is controlled by the Power Control Panel, mounted
on the right side of the main cabinet assembly. The switches, circuit breakers, indicators
and meters associated with the panel are shown in Figure 5-9. Refer to the 3200 Customer
Engineering manual for detailed maintenance information concerning the Power Control
Panel.

SWITCHES
Table 5-3 lists the switches and their functions. Refer to Section 2 for a description of the
Storage Address Protection switches.

ELAPSED TIME METERS
Two elapsed time meters and a key-operated, two-position switch are located on the control
panel. Turning the key-operated Maintenance Mode switch to ON connects the Running Time
meter to the computer to indicate maintenance time. Removing the key connects the Operating Time meter to the computer to indicate normal operating time. Only one of the two
meters can operate at anyone time. Either meter logs time for a minimum of one second
when a storage cycle occurs.

TABLE 5-3. POWER CONTROL PANEL SWITCH FUNCTIONS
SWITCH NAME

FUNCTION

CONTROL
POWER

When this switch is depressed, the Blower switch and Peripheral Group
switches can be activated.

BLOWERS
ON

Depressing this switch turns on cabinet blowers, power supply blowers
and furnishes power for the peripheral equipment blowers. This switch
must be on before the power supplies can be activated. The Control
Power switch must be on before this switch can be activated.

POWER
SUPPLIES
ON

When this switch is depressed and the Control Power and Blowers
switches are on, the motor generators are turned on. These sets furnish
operating power for the logic power supplies.

PERIPHERAL
GROUP I
ON

If the Control Power switch is on and this switch is depressed, ope rating power is sent to all the equipment connected to the Peripheral
Group I power distribution bus.

PERIPHERAL
GROUP II
ON

If the Control Power switch is on and this switch is depressed, operating power is sent to all of the equipment connected to the Peripheral
Group II power distribution bus.

NOTES

1. The switches are active only when main power is present at the control panel

and the applicable circuit breakers are closed (ON position). The individual
circuit breakers are located directly below the switch panel.
2. Except for the Blowers switch, the OFF switches remove power immediately.
If the Power Supplies OFF and the Blowers OFF switches are depressed in
close succession, an automatic five minute delay will keep the blowers operating.
The Power Supplies OFF switch must be depressed a minimum of half a second.
5-15

MAINTENANCE
TIME

MAINTENANCE

OPERATING
TIME

MODE

orr

II

~~OH

;;-~

POWER
BLOWERS

~

y---------UNIT I - - - - - - - - - ,

LOGIC

y------UNITX-----,

LOGIC

LOGIC

TERMINATOR

r--:- 60"'--,

,UNITIORIi:,
STORAGE

r-UHITIi:~

,60"'"7"1
MAIN
CONSOLE

,.60"'-,-]
TYPEWRITER
CONSOLE

I:.

MAIII
POWER

STORAGE

,
j

,

r - - PERIPHERAL GROlip I --,---,
POWER
SUPPLIES

. .
BLOWERS

,,\

,

r . CONTROL POWER -:J

••••
•
PRIMARY

SECONDARY

rTERMIHATOR POWER..,

•
-20'

Figure 5-9. Power Control Panel

5-16

~

"

PERIPHERAL
GROUP II

PERIPHERAL
GROUP I

SUPPlIES

.

LOGIC

•

co

Section 6

TYPEWRITER
DESCRIPTION
The 3192 Console Typewriter (Figure 6-1) is an on-line input-output (110) device; i.e. it
requires no connection to a communication channel and no function codes are issued. The
typewriter receives output data directly from storage via the lower 6 bits of the Data Bus.
Inputs to storage are handled in the same manner.
The console typewriter consists of an electric typewriter and a typewriter control panel
mounted on a desk console.

Figure 6-1. 3192 Console Typewriter

6-1

Used in conjunction with block control and the Register File, the typewriter may be used
to enter a block of internal binary-coded characters into storage and to print out data
from storage. The two storage addresses that define the limits of the block must be
stored in the register file prior to an input or output operation. Register 23* contains the
initial character address of the block, and register 33 contains the last character address,
plus one. Because the initial character address is incremented f(jr each storage reference,
it always shows the address of the character currently being stored or dumped. Output
operations occur at the rate of 15 characters per second. Input ooerations are limited by
the operator's typing speed.

OPERtATION
The general order of events when using the console typewriter for an input or output
operation is:
1. Set tabs, margins and spacing. Turn on typewriter.
2. Clear.
3. Check status.
4. Type out or type in.

SET TABS, MARGINS, AND SPACING
All tabs, margins, and paper spacing must be set manually prior to the input or output
operation. A tab may be set for each space on the typewriter between margins.

CLEAR
There are three types of clears which may be used to clear all conditions (except Encode
Function) existing in the typewriter control. These are:
• Internal Clear or a Master Clear.
This signal clears all external equipments, the communication channels, the
typewriter control, and sets the typewriter to lower case.
• Clear Channel, Search/Move Control, or Type Control instruction (77.51).
This instruction selectively clears a channel, the 8/M control, or, by placing
a "1" in bit 08 of the instruction, the typewriter control, and sets the typewriter to lower case.
" Clear Switch on typewriter.
This switch clears the typewriter control and sets the typewriter to lower case.

STATUS CHECKING
The programmer may wish to check the status of the typewriter before proceeding. This
is done with the Pause instruction. Status response is returned to the computer via two
status lines.
The typewriter control transmits two status signals that are checked by the Busy Comparison Mask using the Pause instruction. These status signals are:
Bit 09 Type Finish
Bit 10 Type Repeat
An additional status bit appears on sense line 08. This code is Type Busy, and is transmitted
by block control in-the computation section when a typewriter operation has been selected.
If the programmer is certain of the status of the typewriter, this operation may be omitted.
'The upper nine bits of registers 23 and 33 should be "0".

6-2

TYPE IN AND TYPE LOAD
The Set Type In instruction or pressing the TYPE LOAD switch on the console or typewriter
permits the operator to enter data directly into storage from the typewriter. When the TYPE
LOAD indicator on the console or typewriter glows, the operator may begin typing. The
Encode Function switch must be depressed to enable backspace, tab, carriage return, and
case shifts to be transmitted to the computer during a typewriter input operation.
Input is in character mode only. As each character is typed, the information is transmitted via the Data Bus to the storage address specified by block control. This address
is incremented as characters are transmitted. When the current address equals the terminating address, the TYPE LOAD indicator goes off and the operation is terminated.
Data is lost if the operator continues typing after the TYPE LOAD indicator goes off.

TYPE OUT AND TYPE DUMP
The typewriter begins to type out when the computation section senses a Set Type Out
instruction or the operator presses the TYPE DUMP switch on the console or typewriter.
Single 6-bit characters are sent from storage to the typewriter via the lower 6 bits of the
Data Bus. When the current address equals the terminating address, the TYPE DUMP
indicator goes off and the operation is terminated.
During a Type Out operation, the keyboard is locked to prevent loss of data in the event
a key is accidentally pressed.

CONSOLE SWITCHES AND INDICATORS
Figure 6-2 shows the switch arrangement of the typewriter control panel. The function
of each switch appears in Table 6-1. A rocker switch on the typewriter unit is used to
apply power to the typewriter motor.

Figure 6-2. Typewriter Control Panel.
6-3

TABLE 6-1. CONSOLE TYPEWRITER SWITCHES AND INDICATORS
Name

Switch (S)
Indicator (I)

Description

HIGH
TEMP

I

This indicator glows when the ambient teml--arature within
the typewriter cabinet exceeds 110 0 F.

BUSY

I

This indicator shows that the TYPE LOAD or TYPE DUMP
switch has been pressed and the operation is in progress.

POWER ON

I

This indicator shows that power is applied to the typewriter.

S&I

This switch is in parallel with the TYPE DUMP switch on the
console and causes the computer to send data to the typewriter for print-out. It is a momentary contact switch that is
illuminated until the last character in the block has been
printed or the CLEAR button is pressed.

S&I

This switch is in parallel with the TYPE LOAD switch on the
console and allows the computer to receive a block of input
data from the typewriter. The TYPE LOAD indicator remains
on until either the FINISH. REPEAT or CLEAR button is
pressed. or until the last character of the block has been
stored. If the program immediately reactivates the typewriter.
it may appear that the light does not go off.

S& I

This switch is pressed during a Type Load operation to indicate that a typing error occurred. This switch deactivates
busy sense line 10 (see PAUS instruction). If the computer
does not respond. this light remains on.

FINISH

S&I

This switch is pressed during a Type Load operation to indicate that there is no more data in the current block. This
action is necessary if the block that the operator has entered
is smaller than the block defined by registers 23 and 33. This
switch also deactivates busy sense line 09. If the computer
does not respond. this light remains on.

INTERRUPT

S&I

This switch is in parallel with the MANUAL INTERRUPT
switch on the console and is used to manually interrupt the
computer program.

ENCODE
FUNCTION

S&I

This switch enables the typewriter to send to storage the
special function codes for backspace. tab. carriage return.
upper-case shift. and lower-case shift.

CLEAR

S&I

This switch clears the typewriter controls and sets the typewriter to Ipwer case but does not cancel Encode Function.

TYPE
DUMP

TYPE
LOAD

REPEAT

6-4

CHARACTER CODES
Table 6-2 lists the internal BCD codes, typewriter printout and upper- or lower-case shift
that applies to the console typewriter. All character transmission between the computation section and the typewriter is in the form of internal BCD. The typewriter logic makes
the necessary conversion to the machine code.
NOTE

Shifting to upper case (57) or lower case (32) is .not necessary except on keyboard letters
where both upper and lower cases are available. The standard type set for the 3192 has two
sets of upper case letters and no lower case letters. This eliminates the need for specifying
a case shift.

TABLE 6-2. CONSOLE TYPEWRITER CODES

Case

Print-out
-

J
K
L
M
N

0

P
Q
o

R
(degree)
$

*
#
%

L
UorL
U or L
UorL
U or L
U or L
U or L
UorL
U or L
U or L
U
U
U
U
U

(Shift to UC)
(Space)

/
S
T
U
V

W
X
Y
Z
&
(

(Tab)
( Backspace)
(Carriage return)

L
U
U
U
U
U
U
U
U
U
U
U

or
or
or
or
or
or
or
or

L
L
L
L
L
L
L
L

Internal BCD Code

Print-out

40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71

0
1
2
3
4
5
6
7
8
9

±
=

.,

?

+
A

B
C
D
E

F
G
H
I
(Shift to LC)

72
and L

73
74
75
76

)

@

77

!

6-5

Case
L
L
L
L
L
L
L
L
L
L
U
L
U
U
L
U
U
U
U
U
U
U
U
U
U
U

or
or
or
or
or
or
or
or
or

L
L
L
L
L
L
L
L
L

U and L
U
L
U
L

Internal BCD Code

00
01
02
03
04
05
06
07
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37

Section 7

INSTRUCTIONS
GENERAL INFORMATION
INSTRUCTION WORD FORMATS
The standard 3200 machine coded instruction is 24 bits in length and generally classified
into one of two formats: word or character oriented.
Word oriented instructions are the most common of the instruction formats. Fifteen bits
are allocated for an unmodified storage address, operand, or shift count. Indirect addressing is usually available. Figure 7-1 illustrates a word oriented instruction and the significance of the first 15 bits when they represent an unmodified word address 'm' .

Bit position

23

I

18
(6 bits)

~ 14
J(

1 bit) J (2 bits)

00

~'--y--",'f
a
b
d
Symbol designators
(See Symbol Definitions)

j

I

(15 bits)

J

./

y

I
I

m

k
y

m

Word Address

I
I

I
00

14

Storage Field
Module

0-3

0-1

I

Co-ordinate Address
within field

0000-7777e (4096)

Figure 7 -1. Word-Addressed Instruction Format

Character oriented instructions allocate 17 bits for unmodified character addresses or
extended operands. Indirect addressing is not available for these instructions; however,
address modification is permissible by referencing a specific index register. Figure 7-2
illustrates the format of a character oriented instruction word and the significance of the
first 17 bits when they represent an unmodified character address 'r'.

7-1

23

I

18
(6 bits)

17

14

1( 1 bit) I

"---~ --~/ "-

'f

15

16

~

yl

00

I

(17 bits)

'---------~ ~--------,' 1

'{

biz
116

I

I
00 I

I

Characte{ Address

1

1

1

1

116 15

I

14

13

02 01

I I

00 I

I

I

~~ '----~y~---~/ ~

Storage Field
Module
0-3
0-1

Co-ordinate Address
within field
0000-77778 (4096)

Character
0-3

Figure 7 -2. Character-Addressed Instruction Format

Characters in a data word are always specified in the following manner:
23

I

18

0

17

I

12

11

I

06 05

2

I

00

3

~ character
'\ deSignators
.t ~

WORD ADDRESSES VS. CHARACTER ADDRESSES
It is often desirable to convert a word address and character position to its corresponding

character address or vice versa. The following procedure is a technique used for this purpose:
To convert a word address to a character address:
o

Octally multiply the word address by four. (During program execution, this
operation is simulated by a left shift of two binary places.)
• Add the character position to the product.
The sum will be the character address.
EXAMPLE: Given: Word address 12442, character position 2
Find:
Corresponding character address.
1.
12442
x4
52210
2.
+2
52212 = character address
To convert a character address to a word address:
• Octally divide the character address by four.
The quotient will be the word address and the remainder is the character position. No
remainder indicates character zero.
7-2

EXAMPLE:

Given: Character address 03442
Find:
Word address and character position.
00710

~03442
.:QL
4
4

2 = remainder = character position 2.
NOTE

Octal multiplication and division
tables may be found in the appendix
section of this manual.
Instruction word formats that differ
from word and character orientation
are described in the instruction listing.

SYMBOL DEFINITIONS
The following designators are used throughout the list of instructions. Additional special
symbols are used in SearchlMove and certain 1/0 instructions and are defined where
they are used.
a = addressing mode designator (a = 0, direct ~ddressing; a = 1, indirect addressing)
b = i:t:J.dex designator (unless otherwise stated)
c = denotes a character code or field
ch = denotes an I/O channel (0-7)
d = special operation designator (see individual instructions).
f = function code (6 bits, octal 00 to 77)
H = instruction modifier for INPC or OUTC indicating 6 or 12 bit I/O operation
= interval designator (decrement quantity)
j = jump, stop, or skip condition designator (see individual instructions)
k = shift count (unmodified)
m = word execution address (unmodified)
n = same as m, but the word address of the second operand
r = character execution address (unmodified)
s = same as r, but the character address of the second operand
S = instruction modifier denoting sign extension
S present, bit 17 = "1", sign extended
S absent, bit 17 = "0", sign not extended
v = a specific register (00-77) within the Register File.
x = connect code or interrupt mask
y = 15-bit operand
z = 17-bit operand
IIIIIIII = indicates zeros should be loaded into a particular area of an instruction.

INDEXING AND ADDRESS MODIFICATION
In some instructions, the execution address 'm' or 'r', or the shift count 'k' may be modified
by adding to them the contents of an index register, Bb. The 2-bit designator 'b' specifies
which of the three index registers is to be used. Symbols representing the respective
modified quantities are M, R, and K.
M =m+(B b)
R = r + (B b) the sign of Bb is extended to bit 16 (2 1L l)
K =k +(B b)
In each case, if b=O, then M=m, R=r and K=k.
7-3

ADDRESSING MODES
Three modes of addressing are used in the computer: No Address, Direct Address, and
Indirect Address.

No Address
This mode is used when an operand 'y' or a shift count ok' is placed directly into the lower
portion of an instruction word. Symbols 'a' and 'b' are not used as addressing mode and
index designators with any of the no address instructions.

Direct Address
The direct addressing mode is used in any instruction in which an operand address om'
is stored in the lower portion of the initial instruction word. This mode is specified by
making 'a' equal to O. In many instructions, address om' may be modified (indexed) by
adding to it the contents ofregister B b, M=m + (B b).

Indirect Address
It is possible to use indirect addressing only with instructions that require an execution
address 'm'. For applicable instructions, indirect addressing is specified by making 'a'
equal to 1. Several levels (or steps) of indirect addressing may be used to reach the execution address; however, execution time is delayed in direct proportion to the number
of steps. The search for a final execution address continues until 'a' equals O. It is important to note that direct or indirect addressing and address modification are two distinct and independent steps. In any particular instruction, one may be specified without
the other. Figure 7-3 shows the indirect addressing routine for a 3200 Computer.

Go to address M.
Acquire new
terms a, b, & m.

No

Original instruction
possibly containing
'a' and/or 'b'

Execute instruction
using address M.

No
Add the
b
) to m.

(B

Figure 7 -3. Indexing and Indirect Addressing Routine Flow Chart

NOTE

Unless it is otherwise stated, indirect addressing follows the above routine throughout the list of instructions.
7-4

INDEXING AND ADDRESSING MODE EXAMPLES
The following examples utilize the LDA (20) instruction; however, the process applies
to any of the instructions with an 'a' and/or 'b' designator.
23

LDA

I

18

17

I

20

16 15

14

00

m

a

a = addressing mode designator
b = index register designator

EXAMPLE 1
(ADDRESS MODIFICATION -(indexing) ONLY)

1

I

P=OOOOO

20 2

~

.
.t d
Indicates Direct A dress

IB')-13342

Add this address to

(8 2 )

mode and address modification
by 8 2

5.L

+ 13342
20 2

67772~ This

address is replaced
temporarily in the
original instruction

~67772

LDA with the 24-bit quantity stored at address 67772

p=

67771
67772

77700000 --+- This quantity is loaded into the A register

67773

EXAMPLE 2
(INDIRECT ADDRESSING ONLY)
I

p = 00001

1

204~
1Indirect Addressing

Indicates
mode but no address modification
(indexing).

L

Go to this address and acquire
new address and designator before
executing instruction.

I

~~~~~
54427
54430
54431

310

77111

~~~~?~l
This portion of operand is replaced temporarily
in the original instruction.

~

200~

t

Indicates Direct Address mode and no address modification. LDA with the 24-bit
operand stored at address 77111. (If this digit would have indicated additional indirect
addressing and/or address modification this must be done before the LDA instruction
is executed.)

7-5

EXAMPLE 3
(INDIRECT ADDRESSING AND ADDRESS MODIFICATION)
P = 00002

20

I

5~

t

.

.
In d Icates Indirect Address
mode and address modification. 8y 81.

(81}=00512

Add this address to (81).

t

54430
+00512
55142

t

Go to this address and acquire
, . . . - - - - - - - - - - - - - - - - - - - - - - - - - n e w address and designator before
executing instruction.

55141
55142
55143

77_~ 1
This portion of operand is replaced
temporarily in the original instruction.

~

20 0 37777

Indicates direct tddress mode and no
address modification. LDA with the 24-bit
operand stored at address 37777. (If this
digit would have indicated additional indirect
addressing and/or address modification, this must
be done before the LDA instruction is executed.)

Trapped Instructions
The instructions appearing in Table 7-1 are executed by the Utility System under the
control of SCOPE. The Basic Utility software system also is capable of executing these
instructions,
The computer detects the 55-70 instructions as they appear in the F register and traps
them if the BCD and Floating Point 48-bit Precision hardware is absent. Trapped instructions are processed as interrupts once they are detected. A conventional interrupt
always takes priority over the trap sequence. The following operations occur when a
trapped instruction is detected:
1. P + 1 is stored in the lower 15 bits of address 00010.
2, The upper 6 bits of F are stored in the lower 6 bits of address 00011; the upper
18 bits remain unchanged.
3. Program control is transferred to address 00011 and an RNI cycle is executed.
7-6

TABLE 7-1.
liST OF TRAPPED INSTRUCTIONS
Operation Field
55
56
57
60
61
62
63
64
65
66
67
70

---MUAQ
DVAQ
FAD

FSB
FMU
FDV
LDE
STE
ADE
SBE
SFE
EZJ,EQ
EZJ,LT
EOJ
SET

Interpretation
I.R.T., 48-bit precision
MUltiply AQ, 48-bit precision
Divide AQ, 48-bit precision
Floating point add
Floating point subtract
Floating point mUltiply
Floating point divide
Load ED
Store ED
Add to ED
Subtract from ED
Shift ED
ED zero jump, ED = 0
ED zero jump, ED < 0
ED overflow jump
Set D register

INSTRUCTION LIST
Each group of instructions is introduced with an index and, whenever necessary, a group
description. Individual instructions are all presented in the same basic format:
• Heading, which includes the assembly language mnemonic and instruction
name
• Machine code instruction format
• Instruction description
• Comments (when necessary)
• Approximate instruction execution time (add 1.25 usec for each step of indirect addressing)
The abbrev:iation, RNI, is used throughout the list of instructions to indicate the Read Next
Instruction sequence. This is a sequence of steps taken by the control section to advance the
computer to its next program step. For an extensive description of this sequence, consult
the 3200 Customer Engineering.Manual (Pub, No. 60100900).
Table 7-2 identifies the instructions and indicates on which page explicit instruction descriptions may be found. Table 7-3 is a summary of the instruction execution times. In addition to
these tables, three additional tables are provided at the end of this manual for cross reference
of the instruction list.

7-7

TABLE 7-2. INSTRUCTION SYNOPSIS AND INDEX

PAGE

INSTRUCTION

MNEMONIC

ADA, I
ADAQ, I

add to A
add to AQ

7-38

ADE

add to E

7-47

AEU
AlA
ANA, S

transmit (A) to E upper
transmit (A)
(Bh) to A

7-29

logical product (AND) of y and (A)

ANI
ANQ, S
AQA
AQE
AQJ, EQ

logical product (AND) of y and (Bh)

7-18
7-18

7-40

+-

7-26

7 -18
7-26

logical product (AND) of y and (Q)

+-

transmit (A)
(Q) to A
transmit (AQ) to E

{j"m

7-29

p

=

Q

if IAI
jump if (Al oF Q

NE

7-36
7-36

compare A with Q

GE

jump if (A)

~

Q

7-36

IT

jump if (A)

<

Q

7-36
7-13

ASE, S

skip next instruction, if (A) =

ASG, S

skip next instruction, if (A) ~ y
jump if (A) =

AZJ, EQ
NE
GE

compare A with zero

CON
COPY
CPR, I
CTI
CTO
DINT
DVA. I
DVAQ, I
EAQ
ECHA. S
EINT
ElQ
ENA
ENI
ENQ
EOJ
EUA
EXS
EZJ, EQ

IT

7-14
0

7-35

jump if (A) oF 0
jump if (A) ~ 0

7-35

{
jump if (A)

IT
CllO
CINS
ClCA

y

<

0

7-35

channel interrupt lockout
copy internal status

7-35
7-69
7-62

clear channel activity
connect

7-69
7-70

copy external status

7-60
7-53

within limits test
set console typewriter input

7-71

set console typewriter output

7 -71

disable interrupt control

7-67

divide AQ (48 by 24)

7-39

divide AQE (96 by 48)

7-42

transmit (E upper) to A and (E lower) to Q

7-29

enter A with 17-bit character address

7-15

enable interrupt control
transmit (E lower) to Q

7-60

enter A
enter index

7-15
7-15

enter Q

7-15

jump to m on E overflow
transmit (E upper) to A

7-49

sense external status
compare E with zero; jump if E

7-64
=

0

7-49

compare E with zero; jump if E

<

0

7-49

7-29

7-29

FAD, I
FDV, I

floating add to AQ
floating divide AQ

7-43
7-44

FMU, I
FSB, I

floating multiply AQ

7-44

floating subtract from AQ

7-44

Rev. H

7-8

TABLE 7-2. INSTRUCTION SYNOPSIS AND INDEX (CONTINUED)

INSTRUCTION

MNEMONIC
HLT

PAGE

unconditional stop; read next instruction
from location m
b
transmit (B )
(A) to Bb

7-30
7-26

interrupt associated processor
index jump; decrement index

7-66

index jump; increment index

7-33

INA

increase A

7-16

INAC.INT

character-addressed input to A

7-80

INAW.INT

word-addressed input to A

7-82

INCL

clear interrupt

7-65

INI

increase index

7-16
7-72

IAI
IAPR
IJO
IJI

+

INPC. INT. B. H

character-addressed input to storage

INPW. INT. B. N
INQ

word-addressed input to storage

INS
INTS
10CL

increase Q
sense internal status
sense interrupt
clear I/O. typewriter. and S/M

7-34

7-74
7-16
7-62
7-61
7-63
7-19
7-13

ISG

index skip; decrement index
b
skip next instruction. if (B ) = y
b ;:::
y
skip next instruction. if (B )

lSI

index skip; increment index

7-19

LACH

load A character

7-20

LCA. I

load A complement

7-21

ISO
ISE

7 -14

LCAQ. I

load AQ complement (double precision)

7-21

LOA. I
LOAQ. I

load A
load AQ (double precision)

7-20

LOE

load E
load index

7-48
7-22
7-21

LOI. I
LOL. I
LOQ. I
LPA. I

load logical
load Q

7-21

logical product with A

7-22
7-37

LOCH
MEQ

load Q character

7-22

masked equality search

MOVE.INT
MTH

move I characters from r to s
masked threshold search

7-54
7-58

MUA. I

mUltiply A

7-39

MUAQ.I

mUltiply AQ

7-42

OTAC. INT

character-addressed output from A

7-84

OTAW.INT

word-addressed output from A

7-86

OUTC. INT. B. H.
OUTW. INT. B. N
PAUS

character-addressed output from storage

7-76

word-addressed output from storage
pause

7-78
7-64

priority pause
transmit (Q) to E lower
skip next instruction. if (Q) = y
skip next instruction. if (Q) ;::: y

7-64
7-29
7-13

PRP
QEL
QSE. S
QSG. S
RAO. I
RTJ

replace add
return jump

7-9

7-55

7-14
7-38
7-32

Rev. H

TABLE 7-2. INSTRUCTION SYNOPSIS AND INDEX (CONTINUED)

INSTRUCTION

MNEMONIC
SACH

store character from A

SBA. I

subtract from A
subtract from AQ

PAGE
7-23
7-39

SCA. I
SCAQ

selectively complement A

7-40
7-67
7-47
7-37

scale AQ

7-52

SCHA. I

store 17-bit character address from A

7-25

SCIM

selectively clear interrupt mask

7-66

SEL

select function

7-70

SET
SFE

set D to value of y
shift E

7-46

SFPF

set floating point fault

SHA
SHAQ
SHQ

shift A
shift AQ
shift Q

SJ1
SJ2

jump if key 1 is set
jump if key 2 is set

SJ3

jump if key 3 is set

7-31
7-31

SJ4

jump if key 4 is set

7-31

SBAQ. I
SBCD
SBE

set BCD fault
subtract from E

7-49
7-67
7-50
7-52
7-52
7 -31

SJ5

jump if key 5 is set

7 -31

SJ6

jump if key 6 is set

7-31

SLS

selective stop

7-31

SQCH

store character from Q

7-24

SRCE. INT

search character equality

7-56

SRCN.INT
SSA. I

search character inequality
selectively set A

SSH

storage shift

7-56
7-37
7-50

SSIM

selectively set interrupt mask

STA. I

store A

7-66
7-23

STAQ. I

store AQ

7-24

STE

store E

7-48

STI. I

store index

7-25

STQ. I

store Q

7-24

SWA. I

store 15- bit word address from A
transmit (A) to Bh

7-25

TAl
TAM
TIA

transmit (A) to high speed memory
transmit (Bh) to A

7-28
7-27

TIM
TMA
TMI
TMQ

transmit (Bh) to high speed memory
transmit (high speed memory) to A
transmit (high speed memory) to Bh

7-28
7-28
7-28

TQM

transmit (Q) to high speed memory

UCS
UJP. I

unconditional stop
unconditional jump

XOA. S

exclusive OR y and (A)

7-32
7-17

XOI

exclusive OR y and (Bh)

7-17

XOQ. S

exclusive OR y and (Q)

7-17

transmit (high speed memory) to Q

7-10

7-27

7-27
7-27
7-31

TABLE 7-3. SUMMARY OF INSTRUCTION EXECUTION TIMES, t-tsec.

INSTRUCTION
MNEMONIC

APPROXIMATE
EXECUTION
TIME

ADA
ADAQ
ADE
AEU
AlA
ANA
ANI
ANQ
AQA
AQE
AQJ
ASE
ASG
AZJ
CILO
CINS
CLCA
CON
COPY
CPR
CTI
CTO
DINT
DVA
DVAQ

2.5
3.8
11.5*
1.3*
1.3
1.3
1.3
1.3
1.3 .
1.3*
'1.9
1.9
1.9
1.9
1.3
1.3-1.7
1.3
*••
1.3-1.7
2.5-3.4
1.3
1.3
1.3
11.25
22.5"

EAQ
ECHA
EINT
ELQ
ENA
ENI
ENQ
EOJ
EUA
EXS
EZJ

1.31.3
1.3
1.3*
1.3
1.3
1.3
1.31.3"
1.3-1.7
1.3-

FAD
FDV
FMU
FSB
HLT
IAI
IAPR
IJD
IJI
INA
INAC
INAW
INCL
INI
INPC
INPW

INSTRUCTION
MNEMONIC
INQ
INS
INTS
IOCL
ISD
ISE
ISG
lSI
LACH
LCA
LCAQ
LDA
LDAQ
LDE
LDI
LDL
LDQ
LPA
LQCH
MEQ
MOVE
MTH
MUA
MUAQ
OTAC
OTAW
OUTC
OUTW
PAUS
PRP
QEL
QSE
QSG

10.0-12.0"
20.0'
14.0-18.0'
10.0-12.0-

RAD
RTJ
SACH
SBA
SBAQ
SBCD
SBE
SCA
SCAQ
SCHA
SCIM
SEL
SET
SFE
SFPF
SHA
SHAQ

-

-.

1.3

1.9
1.9
1.3

...
...

1.3
1.3
3.3
3.3

APPROXIMATE
EXECUTION
TIME

1.3
1.3-1.7
1.3-1.7
1.3
1.9
1.9
1.9
1.9
2.5
2.5
3.8
2.5
3.8
8.0*
2.5
2.5
2.5
2.5
2.5
4.2 +4.2n
3.3
4.2 +4.2n
7.8-11.0
16.0-21.0'
3.3
3.3
3.3
3.3
2.0 us-40 ms
2.0 us-40 ms
1.3'
1.9
1.9
3.8
2.5
2.5
2.5
3.8
1.3
11.5'
2.5
1.9-3.9
2.5
1.3

...

1.3"
1.3-4.3'
1.3
1.3-2.7
1.3-2.7

n = number of words searched .
• = Trapped instruction in computers without the appropriate optional hardware package .
•• = Dependent upon interrupt response .
••• = Dependent upon a variable signal response time from an external source of equipment.

7-11

Rev. H

TABLE 7-3. SUMMARY OF INSTRUCTION EXECUTION TIMES, f.lsec. (CONTINUED)
INSTRUCTION
MNEMONIC

APPROXIMATE
EXECUTION
TIME

INSTRUCTION
MNEMONIC

1.3-2.7
1.3
1.3
2.5
3.3
3.3
2.5
3.8
1.3
2.5
3.8
8.0'
2.5
2.5
2.5

SHQ
SJl-6
SLS
SQCH
SRCE
SRCN
SSA
SSH
SSIM
STA
STAQ
STE
STI
STQ
SWA

APPROXIMATE
EXECUTION
TIME

TAl
TAM
TIA
TIM
TMA
TMI
TMQ
TQM

1.3
1.8
1.3
1.8
1.8
1.8
1.8
1.8

UCS
UJP

1.3

XOA
XOI
XOQ

1.3
1.3
1.3

-

n = number of words searched.
Trapped instruction in computers without the appropriate optional hardware package.
** = Dependent upon interrupt response.
*** = Dependent upon a variable signal response time from an external source of equipment.

*=

REGISTER OPERATIONS WITHOUT STORAGE REFERENCE
Operation Field

Interpretation

Address Field

ASE. S
QSE.S
ISE

04

y
y
y. b

Skip next instruction if (A) = y
Skip next instruction if (Q) = y
b
Skip next instruction if (B ) = y

ASG.S
QSG.S
ISG

05

y
y
y. b

Skip next instruction if (A) ;::: y
Skip next instruction if (Q) ;::: y
b
Skip next instruction if (B ) ;::: y

ENA. S

14

y

Enter A with y

ECHA. S 11

r

Enter A with 17 -bit character address

ENQ.S
ENI

14

Y
y. b

Enter 0 with y
Enter index with y

INA.S
INO.S
INI

15

Y
y
y. b

Increase A by Y
Increase 0 by Y
Increase index by y

XOA.S
XOQ.S
XOI

16

Y
y
y. b

Exclusive OR of A and y
Exclusive OR of Q and y
Exclusive OR of index and y

ANA. S
ANO.S
ANI

17

Y

y
y. b

AND of A and y
AND of 0 and y
AND of index and y

lSI
ISO
SHA
SHO

10

y. b
y. b
y. b
y. b

Index skip. incremental
Index skip. decremental
Shift A
Shift 0

SHA~

13

y. b
y. b

Shift AO
Scale AO

SCAO

12

7-12

23

18 1 7 1 6 1 5 14

10

04
b

=

I

00
(Approximate execution time: 1.9 jlsec.)

b

y

index register designator

Instruction Description: If (Bb)=y, skip to address P

+ 2; if not, RNI from

address P

+ 1.

Comments: If b = 0, y is compared to zero.

23

18 17

00

15 14

(Approximate execution time: 1.9 jlsec.)

04

y

6

Instruction Description: If (A) = y, skip to address P

+ 2; if not, RNI from address P + 1.

Comments: Only the lower 15 bits of A are used for this instruction.

23

18 17

00

15 14

(Approximate execution time: 1.9 jlsec.)

04

y

4

Instruction Description: Same as ASE except the sign of y is extended. All 24 bits of A are
recognized.

23

18 17

00

15 14

(Approximate execution time: 1.9 .jlsec.)

04

y

7

Instruction Description: If (Q)=y, skip to address P

+ 2; if not, RNI from address P + 1.

Comments: Only the lower 15 bits of Q are used for this instruction.

23

18 17

04

00

15 14

5

(Approximate execution time: 1.9 jlsec.)
y

Instruction Description: Same as QSE except the sign of y is extended. All 24 bits of Q are
recognized.
7-13

23

00

18 17 16 1 5 14

05

10

I

(Approximate execution

y

b

time~ 1.9 /Lsec.)

b = index register designator

Instruction Description: If (B b ) are equal to or greater than y, skip to address P
not, RNI from address P + 1.
Comments: If b=O, y is compared to zero.

23

18 17

05

(Approximate execution time: 1.9 /Lsec.)

y

Instruction Description: If (A) are equal to or greater than y, skip to address P
RNI from address P + 1.
Comments: (ALls) and yare considered IS-bit positive numbers.

23

18 17

2; if

00

15 14

6

+

+

2; if not,

00

15 14

(Approximate execution time: 1.9 /Lsec.)

05

y

4

Instruction Desoription: Same as ASG except the sign of y is extended. All 24 bits of A are
recognized. Positive zero (00000000) is recognized as greater than negative zero (77777777).

23

18 17

00

15 14

(Approximate execution time: 1.9 /Lsec.)

05

7

Y

Instruction Description: If (Q) are equal to or greater than y, skip to address P
RNI from address P + 1.
Comments: (QLlS) and y,are considered IS-bit positive numbers.

23

18 17

+ 2;

if not,

00

15 14

(Approximate execution time: 1.9 /Lsec.)

05

5

y

Instruction Description: Same as QSG except the sign of y is extended. All 24 bits of Q are
recognized. Positive zero (00000000) is recognized as greater than negative zero (77777777).
7-14
Rev.H

23

ENI

00

18 17 16 15 14

Enter Index with y
14

10

(Approximate execution time: 1.3 j.1sec.)

I

y

b

b = index register designator

Instruction Description: Clear index register Bb and enter y directly into it.
Comments: If b=O, this is a no-operation instruction.

23

ENA

18 17

00

15 14

(Approximate execution time: 1.3 j.1sec.)

Enter A with y

14

6

y

Instruction Description: Clear the A register and enter y directly into A.

23

ENA.S

18 17

00

15 14

Enter A with y

(Approximate execution time:
14

4

1.3 j.1sec.)

y

Instruction Description: Same as ENA except the sign of y is extended.

23

18 17 16

00

ECHA Enter Character
Address into A

(Approximate execution time: 1.3 j.1sec.)

z
d = 0 for no sign extension
d = 1 for sign extension

Instruction Description: Clear A; then enter a 17 -bit operand z (usually a character address)
into A.

23

ENQ Enter Q with y

18 17
14

00

15 14

(Approximate execution time: 1.3 j.1sec.)

7

y

Instruction Description: Clear the Q register and enter y directly into Q.

23

ENQ,S

Enter Q with y

18 17
14

15 14

5

00
y

(Approximate execution time: 1.3 j.1sec.)

Instruction Description: Same as ENQ except the sign of y is extended.
7-15

23

1 8 1 7 1 6 1 5 14

INI Increase Index by y
15

00
(Approximate execution time: 1.3 jlsec.)

I0 I

y

b

b = index register designator

Instruction Description: Add y to (B b ).
Comments: If b= 0, this is a no-operation instruction. Signs of y and Bb are extended.

23

I.NA Increas.eA by y .

18 17
15

15 14

00
(Approximate execution time: 1.3 jlsec.)

y

6

Instruction Description: Add y to (A).

INA,S Increi:lseAb~J;

23

18 17
15

15 14

00
(Approximate execution time: 1.3 jlsec.)

y

4

Instruction Description: Same as INA except the sign of

"

.,' '"

y

is extended.

,,'~

23

18 17

15 14

00

INO IrlcreaseQbyv

(Approximate execution time: 1.3 jlsec.)

15

7

Instruction Description: Add

23

y

to (Q).

18 17
15

y

15 14
5

00
y

(Approximate execution time: 1.3 jlsec.)

Instruction Description: Same as INQ except the sign of y is extended.
7-16

23

XOI EXCLUSIVE OR
of Bb and y

00

1 8 1 7 1 6 1 5 14
16

10

I

(Approximate execution time: 1.3 f,lsec.)
y

b

b = index register designator

Instruction Description: Enter the selective complement (the EXCLUSIVE OR function) of
y and (B b ) back into the same index register.
Comments: If b= 0, this is a no-operation instruction.

XOA, EXCLUSIVE OR
of A and y

23

18 17

00

15 14

(Approximate execution time: 1.3 f,lsec.)
16

y

6

Instruction Description: Enter the selective complement (the EXCLUSIVE OR function)
of y and (A) back into the A register.

XOA,S EXCLUSIVE OR
of A and y

23

18 17

00

15 14

(Approximate execution time: 1.3 f,lsec.)
4

16

y

Instruction Description: Same as XOA except the sign of y is extended.

XOQ EXCLUSIVE OR
of Q and y

23

18 17

00

15 14

(Approximate execution time: 1.3 f,lsec.)
7

16

y

Instruction Description: Enter the selective complement (the EXCLUSIVE OR function)
ofy and (Q) back into the Q register.

XOQ,S EXCLUSIVE OR
of Q and y

23

18 17

00

15 14

(Approximate execution time: 1.3 f,lsec.)
16

5

y

Instruction Description: Same as XOQ except the sign of y is extended.
7-17

23

ANI

18 17 16 15 14

AND of Bb and y
17

10

I

00
(Approximate execution time: 1.3 }lsec.)
y

b

b = index register designator

Instruction Description: Enter the logical product (the AND function) of
into the same index register.

y

and (B b ) back

Comments: If b=O, this is a no-operation instruction.

23

ANA

18 17

15 14

00

AND of A and y

(Approximate execution time: 1.3 }lsec.)
17

6

y

Instruction Description: Enter the logical product (the AND function) of y and (A) back
into the A register.

23

18 17

ANA,S AND of A and y

15 14

00
(Approximate execution time: 1.3 }lsec.)

4

17

y

Instruction Description: Same as ANA except the sign of

23

ANa AND of a and y

17

is extended.

00

15 14

18 17

y

(Approximate execution time: 1.3 }lSec.)

7

y

Instruction Description: Enter the logical product (the AND function) of
into the Q register.

23

ANa,S

18 17

y

and (Q) back

00

15 14

(Approximate execution time: 1.3 }lsec.)

AND of a and y
17

5

y

Instruction Description: Same as ANQ except the sign of y is extended.
7-18

i .ISllnd~~Ski

Incremental

23

00

18 17 16 1 5 14

(Approximate execution time: 1.9 jlsec.)
10

10 1

y

b

b = index register designator

Instruction Description: If (B b) = y, clear Bb and skip to address P

+ 2; if not, add one to (Bb)

and RNI from address P + 1.
Comments: The 10.0 instruction is a SSH (storage shift) instruction. described later in this
chapter. Positive zero (00000) and negative zero (77777) form an equal comparison.

Instruction in F

Increment (Bb) by 1
and
RNI@P+1

Yes

No
(Bb) = y ?

23

00

18 17 1 6 1 5 14

10 11 1

Clear Bb
and
RNI@P+2

y

b

(Approximate execution time: 1.9jlsec.)

b = index register designator

Instruction Description: If (B b) = y, clear Bb and skip to address P

from (B b) and RNI from address P

+ 1.

+ 2; if not, subtract one

Comments: Positive zero (00000) and negative zero (77777) form an equal comparison.

Instruction in F

Decrement (Bb) by 1
and
RNI @ P + 1

No

(Bb) = y ?

Yes

Clear Bb
and
RNI@P+2

7-19
Rev. H

LOAD
Operation Field
LOA.I
LACH
LCA.I
LOU
LOAO.I
LCAO.I
LOO.I
LOCH
LOLl

20
22
24
27
25
26
21
23
54

Address Field

Interpretation

m.b
r.B1
m.b
m.b
m.b
m.b
m.b
r.B2
m.b

Load
Load
Load
Load
Load
Load
Load
Load
Load

A

A. Character
A. Complement
A. Logical
AO
AO. Complement
0
O. Character
Index

NOTE

The LDE instruction is described in the BCD section of the instructions.
23

I

18 17 16 15 14

II
a

20

00

(Approximate execution time:

2.5

~sec.)

m

b

a = addressing mode designator
b = index register designator
b
m=storage address; M=m+(B )

Instruction Description: Load A with a 24-bit quantity from the storage address specified by M.
Comments: Indirect addressing and address modification may be used.
23

00

18 17 16

(Approximate execution time: 2.5 ~sec.)
22

i
,

I

;16

I

0201 00
00000-77777

I 0-3

'-~--~y,---~/~

word address

character
designator

If b = 1. r is modified by index
register B1; R=r -I- (B1).
If b = O. r is not modified (r = R).

Instruction Description: Load bits 00 through 05 of A with the character from storage
specified by character address R. The A register is cleared prior to the load operation.
Comments: Indirect addressing may not be used. Characters are specified in storage as follows:
23

18 17

12 11

0605

00

,7

character designators
NOTE

Since the sign of Bb is extended during character address modification, it is possible
to only reference within ± 16,38310 characters.
7-20

LCA Load A.
·Complement

23

00

18 17 16 15 14

(Approximate execution time: 2.5 /lsec.)
m

a = addressing mode designator
b = index register designator
b
m=storage address: M=m+(B )

Instruction Description: Load A with the complement of a 24-bit quantity from storage address M.
Comments: Indirect addressing and address modification may be used.

23

00

18 17 16 15 14

LDL LoadA.Logical

(Approximate execution time: 2.5 j.Lsec.)

m
a = addressing mode designator
b =index register designator

Instruction Description: Load A with the logical product (the AND function) of (Q) and the
24-bit quantity from storage address M.

23

00

18 17 1 6 1 5 14

(Approximate execution time:

m

3.8/lsec.)

a = addressing mode designator
b = index register designator
m=storage address: M=m+(Bbj

Instruction Description: Load the A and Q registers with the 24-bit quantities from addresses
M and M +1, respectively.
Comments: Addresses 77776 and 77777 should be used only if it is desirable to have M and
M + 1 as non-consecutive addresses, since one's complement arithmetic is used to form M + 1.

LCAQ Load AQ.
Complement

23

18 17 16 15 14

00
(Approximate execution time: 3.8 j.Lsec.)
m

a = addressing mode designator
b = index register designator
b
m=storage address: M=m+(B )

Instruction Description: Load regist'~rs A and Q with the complement of the 24-bit quantities from addresses M and M+1, respectively.
Comments: Addresses 77776 and 77777 should be used only if it is desirable to have M and
M + 1 as non-consecutive addresses, since one's complement arithmetic is used to form M + 1.
7-21

23

1 8 1 7 1 6 1 5 14

00

Loa Load a

(Approximate execution time:

2.5

~sec.)

m
a = addressing mode designator
b = index register designator
m = storage address; M = m +

(B

b

)

Instruction Description: Load Q with a 24-bit quantity from storage address M.
Comments: Indirect addressing and address modification may be used.

LaCH Load a.
Character

23

18 17 16

00
(Approximate execution time: 2.5 ~sec.)

23
:16

oo!

0201

i

00000-77777

I 0-3 j

'~----~y~----~/~

word address

character
designator

If b = 1, r is modified by
index register B2; R=r+(B2).
If b = 0, r is not modified (r = R).

NOTE

Since the sign of Bb is extended during character address modification, it is possible
to only reference within ± 16,38310 characters.
Instruction Description: Load bits 00. through 05 of Q with the character from storage
specified by character address R. The Q register is cleared prior to the load operation.
Comments: Indirect addressing may not be used. Characters are specified in storage as
follows:
23

18 17

o

12 11

" ,/

0605

I

2

00

3

~

character designators

23

LOI

1 8 17 1 6 1 5 14

00
(Approximate execution time: 2.5 ~sec.)

load Index
m
a = addressing mode designator
b = index register designator
m = storage address (indexing not permitted)

Instruction Description: Load the specified index register, B b, with the lower 15 bits of the
operand stored at address m.
Comments: Indirect addressing may be used but address modification is not possible. During
indirect addressing only a and m are inspected. Symbol b from the initial instruction specifies which index register is to be loaded with the lower 15-bits from the storage address.

Rev. F

7-22

STORE

Operation Field

Address Field

Interpretation

STA.I
SACH
STAQ.I
STQ.I
SQCH
STI.I
SWA.I
SCHA

m.b
r.B2

Store
Store
Store
Store
Store
Store
Store
Store

40
42
45
41
43
47
44
46

m.b
m.b
r.B1
m.b
m.b
m.b

A

A. character
AQ
Q
Q. character
index
1 5-bit word address
17-bit character address

NOTE

The STE instruction is described in the BCD instruction section.
23

1 8 1 7 16 1 5 14

00
(Approximate execution time:

m

2.5 jlsec.)

a = addressing mode designator
b = index register designator
b
m = storage address; M =m+(B )

Instruction Description: Store (A) at the storage address specified by M. The (A) remains

unchanged.
23

18 17 16

00
(Approximate execution time: 2.5 jlsec.)

42
:16

i

02 01 00

I 0-3

00000-77777

i

I

---_/'----Y--'
~
Y

'-~---

word address

character
designator

If b = 1. r is modified by
index register B2; R=r+(B2).
If b = O. r is not modified (r = R).

Instruction Description: Store the contents of bits 00 through 05 of the A register in the
specified character address. All of (A) and the remaining three characters in storage remain
unchanged.
Comments: Indirect addressing may not be used. Characters are specified in storage as follows:
23

18 17

12 11

o

0605

2

~ character
~

l'

designators

I

00

3

~

NOTE

Since the sign of Bb is extended during character address modification, it is possible
to only reference within ± 16,38310 characters.
7-23

23

18 17 16 15 14

00

STAQ Store AQ

(Approximate execution time: 5.8 I1sec.)
m

a = addressing mode designator
b = index register designator
b
m = storage address; M = m
(B )

+

Instruction Description: Store (A) and (Q) in the storage locations specified by address M
and M + 1, respectively. The (A) and (Q) remains unchanged.
Comments: Addresses 77776 and 77777 should be used only if it is desirable to have M and
M + 1 as non-consecutive addresses, since one's complement arithmetic is used to form M + l.

23

18 17 16 15 14

00

STQ Store Q

(Approximate execution time:

2.5I1sec.)

m

a = addressing mode designator
b = index register designator
b
m = storage address; M = m
(B )

+

Instruction Description: Store (Q) at the storage address specified by M. The (Q) remains
unchanged.

23

saCH

Sto,reClCharacter

18 17 16

00
(Approximate execution time: 2.5 I1sec.)

43
: 16

I

02 01 00:

I 0-3

00000-77777

I

~-----~v~----/~

word address

character
designator

If b = 1, r is modified by
index register B1; R=r
(B1).
If b = 0, r is not modified. (r = R)

+

NOTE

Since the sign of Bb is extended during character address modification, it is possible
to reference only within ± 16,38310 characters.
7-24

23

1 8 1 7 16 1 5 14

STI Store Index

00
(Approximate execution time:

m

2.5/lsec.)

a = addressing mode designator
b = index register designator
m = storage address (indexing not permitted)

Instruction Description: Store the contents of the specified index register, B b , in the lowel
15 bits of storage address m. The upper 9 bits of m and (B b ) remain unchanged.
Comments: Indirect addressing may be used, but address modification is not possible.
During indirect addressing only a and m are inspected. The b designator from the initial
instruction specifies the index register that will have its contents stored. If b = 0, zeros
are stored in the lower 15 bits of m.

23

1 8 1 7 16 1 5 14

00
(Approximate execution time: 2.5 /lsec.)

m
a = addressing mode designator
b = index register designator
m = storage address; M =m+(Sb)

Instruction Description: Store the lower 15 bits of (A) in the designated address M. The upper
9 bits of M and all of (A) remain unchanged.

S<;~~)'s~J~~B'ha~~~t'~'

23

18 17 16 15 14

00

Address

m

(Approximate execution time: 2.5 /lsec.)

a = addressing mode designator
b = index register designator
m=storage address; M=m+(Sb)

Instruction Description: Store the lower 17 bits of (A) in the address designated by M. The
upper 7 bits of M and all of (A) remain unchanged.
7-25

INTER-REGISTER TRANSFER, 24-BIT PRECISION

Operational Field
AOA
AlA
IAI
TIA
TAl
TMO
TOM
TMA
TAM
TMI
TIM

Address Field

Interpretation

b
b
b
b
v
v
v
v
v,b
v,b

Transfer
Transfer
Transfer
Transfer
Transfer
Transfer
Transfer
Transfer
Transfer
Transfer
Transfer

53

+ (0) to A
+ (Sb) to A
(Sb) + (A) to Sb

(A)
(A)

(Sb) to A
(A) to Sb
(Register v) to 0
(0) to Register v
(Register v) to A
(A) to Register v
(Register v) to Sb
(Sb) to Register v

General Instruction Description

The 53 instruction is used to move data between the A and Q registers, the index registers, and the
Register File. The contents of the transferring register remain unchanged.

AQA Transfer (A)
(Q) to A

(Approximate execution time: 1.3 /lsec.)

+

Comments: (Q) remains unchanged. Bits 00 through 11 should be loaded with zeros.

AlA Transfer (A)
b
(B ) to A

(Approximate execution time: 1.3 /lsec.)

+

b = index register designator

Comments: The sign of (B b ) is extended prior to the addition. Bits 00 through 11 should be
loaded with zeros.

IAI Transfer (A)
(B"} to Bb

(Approximate execution time:

+

1.3 /lsec.)

b = index register designator

Comments: The sign of the original (B b ) is extended prior to the addition. The upper 9 bits
ofthe sum are lost when the sum is transferred to the index register. Bits 00 through 11
should be loaded with zeros.
7-26

1817 16 1514 12 11

00
(Approximate execution time: 1.3 /-lsec.)

TIA Transfer (Bb) to A
b = index register designator

Comments: No sign extension on Bb. Prior tID the transfer, (A) is cleared. If b= 0, zeros are
transferred to A. Bits 00 through 11 are loaded with zeros.

23

1817 16 1514 12 11

TAl Transfer (A) to Bb

(Approximate execution time:

1.3 /-lsec.)

b = index register designator

Comments: The (A) remains unchanged. If b=O, this becomes a no-operation instruction.
Bits 00 through 11 should be loaded with zeros.

~%§:;;i.(;

:'~5:fMa

(Approximate execution time: 1.8 /-lsec.)
v = Register File number. 00-778

Comments: Bits 06 through 11, 15 and 16 should be loaded with zeros.

TaM Transfer (a)
to Register v

(Approximate execution time:
v = register file number. 00-778

Comments: Bits 06 through 11, 15 and 16 should be loaded with zeros.

7-27

1.8 /-lsec.)

TMA Transfer
(Register v) to A

23

18 1 7 16 1 5 14 12 11 06 05 00
(Approximate execution time: 1.8 j.Lsec.)
v = register file number. 00-778

Comments: Bits 06 through 11, 15 and 16 should be loaded with zeros.

23

18 17 16 1 5 14 12 11 06 05 00
(Approximate execution time: 1.8 j.Lsec.)

to Register v
v = register file number. 00-778

Comments: Bits 06 through 11, 15 and 16 should be loaded with zeros.

TM I ,"
Transfer' , ' b
(Register v) to B

23

18 17 16 15 14 12 11 06 05 00
(Approximate execution time: 1.8 j.Lsec.)
b = index register designator
v = register file number. 00-778

Comments: Lower 15 bits of v are transferred to Bb. Bits 06 through 11 should be loaded

with zeros.

TIM Transfer (Bb)
to Register v

23

18 1 7 16 1 5 14 12 11 06 05 00
(Approximate execution time: 1.8 j.Lsec.)
b = index register designator
v = register file number. 00-778

Comments: Upper nine bits of v remain cleared. Bits 06 through 11 should be loaded with

zeros.
7-28

INTER-REGISTER TRANSFER, 48-BIT PRECISION
Operation Field
ELQ*
QEL*
EUA*
AEU*
EAQ*
AQE*

55

Address Field

Interpretation

-

Transfer
Transfer
Transfer
Transfer
Transfer
Transfer

- -

-

- -

- -

(EL) to Q
(Q) to EL
(EU) to A
(A) to EU
(E) to AQ
(AQ) to E

"Trapped instruction if the Floating Point/Double Precision (FP/DP)
option is not present.

TRAPPED INSTRUCTIONS IF FP/DP ARITHMETIC OPTION IS NOT PRESENT

(Approximate execution time: 1.3
~sec.) option present.

Instruction Description: The 48-bit E register is split into halves-Eu and EL. With the 55
instruction, data may be moved as a 48-bit word between E and AQ, or in halves between
A and EU or Q and EL.
Comments: Bits 00 through 14 should be loaded with zeros. 55.0 and 55.4·are no-operation

instructions, even with the option present.

7-29

STOP AND JUMPS
Operation Field

Address Field

Interpretation

HLT
SLS
UCS
SJl
SJ2
SJ3
SJ4
SJ5
SJ6
RTJ
UJP,I
IJI
IJD
AZJ,EQ
NE
GE
LT
AQJ,EQ
NE
GE
LT

m

Unconditional stop; RNI from address m
Selective stop
Unconditional stop
Jump if key 1 is set
Jump if key 2 is set
Jump if key 3 is set
Jump if key 4 is set
Jump if key 5 is set
Jump if key 6 is set
Return jump
Unconditional jump
Index jump; increment index
Index jump; decrement index
Compare A with zero; jump if (A) = 0
Compare A with zero; jump if (A) ,r. 0
Compare A with zero; jump if (A) :2: 0
Compare A with zero; jump if (A) < 0
Compare A with Q; jump if (A) = (Q)
Compare A with Q; jump if (A) ,r. (Q)
Compare A with Q; jump if (A) :2: (Q)
Compare A with Q; jump if (A)< (Q)

00
77.70
77.77

m
m
m
m
m
m
m
m,b
m,b
m,b
m

01
02
03

m

NOTE

Two additional Jump instructions, EZJ and EOJ, are described under the BCD instructions.
A Jump instruction causes a current program sequence to terminate and initiates a new sequence
at a different storage location. The P register provides continuity between program steps and
always contains the storage location of the current program step. When a Jump instruction occurs,
a new address is entered into P. In most Jump instructions, the execution address m specifies the
beginning address of the new program sequence. The word at address m is read from storage,
placed in F, and the first instruction of the new sequence is executed.
Some of the Jump instructions are conditional upon a register containing a specific quantity or
upon the status of the Jump key on the console. If the condition is satisfied, the jump is made to
location m. If not, the program proceeds in its normal sequence to the next instruction.

23

18 17

00

15 14

(Approximate execution time:

00

0

m

indeterminate)

Instruction Description: Unconditionally halt at this instruction. Upon restarting, RNI from
address m.
Comments: Indirect addressing and address modification may not be used.

7-30

(Approximate execution time: 1.3 /lsec.)

SL.S !;e.lective Stop

Instruction Description: Program execution halts if the Select Stop switch on the console
is set. RNI from address P + 1 when restarting.
Comments: Bits 00 through 11 should be loaded with zeros.

(Approximate execution time:
indeterminate)

Instr.uction Description: This instruction unconditionally stops the execution of the current
program. RNI from address P + 1 when restarting.
Comments: Bits 00 through 11 should be loaded with zeros.

23

18 17

00

15 14

(Approximate execution time: 1.3 /lsec.)

00

m
j = jump keys

to 6

Instruction Description: Jump to address m if Jump key j is set; otherwise. RNI from address P + 1.
Comments: Indirect addressing and address modification may not be used.

Instruction
in F

RNI from
address P

+

No
1

Jump key
j set?

7-31

Yes

Jump to
address m

23

18 17

00

00

15 14

7

(Approximate execution time: 2.5 J.Lsec.)

m

Instruction Description: The address portion ofm is replaced with the return address, P
Jump to location m + 1 and begin executing instructions at that location.
Comments: Indirect addressing and address modification may not be used.

+ 1.

+

Store address P
in the address
portion of (m)

Begin subroutine
with instruction
at address m
1

+

Return to m
for address P

+

23

00

18 17 1 6 1 5 14

(Approximate execution time: 1.3 J.Lsec.)

m
a = addressing mode designator
b = index register designator
b
m = storage address; M = m
(B )

+

Instruction Description: Unconditionally jump to address M.
Comments: Indirect addressing and indexing may be used.
7-32

23

IJI Index Jump,
" Incremental

18 17 1 6 1 5 14

00

__

~o_2~lo~l b~____m_~

(Approximate execution time: 1.9 }1sec.)

b = index register designator
m = jump address

Instruction Description: If b = 1, 2, or 3, the respective index register is examined:
1. If (B~ = 00000, the jump test condition is not satisfied; RNI from address P
) ~ 00000, the jump test condition is satisfied. One is added to (B
m and RNI.

2. If (B

b

b
);

+ 1.

jump to addresEi

Comments: If b= 0, this is a no-operation instruction; RNI from address P + 1. Indirect
addressing and jump address modification may not be used. The counting operation is done
in a one's complement additive accumulator. Negative zero (77777) is not generated because
the count progresses from: 77775, 77776, to 00000 (positive zero) and stops. If negative zero
is initially loaded into B b , the count progresses: 77777, 00001, 00002, etc. In this case, the
counter must increment through the entire range of numbers to reach positive zero.

Instruction in F

RNI from
address P

f

Yes

+1

b

= 07
No

Yes
(Sb)

= 07
No

Add one
to (Sb)

Jump to address
'm'; RNI

7-33

)

IJD Index Jump.
Decremental

23

18 17 16 15 14
02

11 1

00

(Approximate execution time: 1.9 J.Lsec.)
m

b

b = index register designator
m = jump address

Instruction Description: If b=l, 2 or 3, the respective index register is examined:

(B b) = 00000, the jump test condition is not satisfied; RNI from address P + 1.
2. If (Bb)~OOOOO, the jump test condition is satisfied. One is subtracted from (B b); jump to
address m and RNI.
1. If

+

Comments: If b=O, this is a no-operation instruction; RNI from address P
1. Indirect
addressing and jump address modification may not be used. If negative zero (77777) is ini-

tially loaded into B b, the count will decrement through the entire range of numbers to
reach 00000 before the program will RNI from P + 1.

Instruction in F

RNI from
address P
1

Yes

b= 07

+

)

No
Yes
(Bb) = 07

'No

Subtract one
from (Bb)

Jump to address
m'; RNI

7-34

23

AZJ, Condition Compare
A with Zero, Jump

18 17 16 15 14

03

10

00

(Approximate execution time: 1.9 J.L~ec.)

I

m

= jump designator (0-3)
m = jump address

Instruction Description: The operand in A is algebraically compared with zero for an equality, inequality, greater-than or less-than condition (see table). If the test condition is
satisfied, program execution jumps to address m. If the test condition is not satisfied, RNI
from address P + 1.
Comments: Positive zero (00000000) and negative zero (77777777) give identical results when
j = 0 or 1. When j = 2 or 3, negative zero is recognized as less than positive zero. Indirect addressing and address modification may not be used.

Condition
Mnemonic

Jump
Designator j

EQ
NE
GE
LT

0
1

2
3

Test Condition
(A)=(O)
(A),c (0)
(A)::2::(O)
(A)«O)

Instruction in F

RNI from
address P

+

No
1

Is test condition
satisfied?

7-35

Yes

Jump to
address 'm'; RNI

AQJ, Condition Compare
A With Q, Jump

23

00

18 17 16 15 14

(Approximate execution time: 1.9 ,usee.)
m

j = 0-3 jump designator (0-3)
m = jump address

Instruction Description: The quantity in A is algebraically compared with the quantity in
Q for equality, inequality, greater-than or less-than condition (see table). If the test condition is satisfied, program execution jumps to address m. If the test condition is not satisfied, RNI from address P + 1.
Comments: This instruction may be used to test (Q) by placing an arbitrary value in A for
the comparison. Positive and negative zero give identical results in this test when j = 0
or 1. When j = 2 or 3, negative zero is recognized as less than positive zero. Indirect addressing and address modification may not be used.

Condition
Mnemonic

Jump
Designator j

EO
NE
GE
LT

0
1

2
3

Test Condition
(A) =
(A) ~
(A) ~
(A) <

(0)
(0)
(0)
(0)

Instruction in F

RNI from
address P

+

No
1

Is test condition
satisfied?

7-36

Yes

Jump to
address m'; RNI

LOGICAL INSTRUCTIONS WITH STORAGE REFERENCE
Operation
Field
SSA,I
SeA,1
LPA,I

35
36
37

23

Address
Field

Interpretation

m,b
m,b
m,b

Selectively set A
Selectively complement A
Logical product A

18 17 1 6 1 5 14

00
(Approximate execution time: 2.5 j.lsec.)
m

a = addressing mode designator
b = index register designator
m = storage address; M = m
(B")

+

Instruction Description: Selectively set the bits in the A register to "l's" for all corresponding "l's" in the quantity at address M.

23

18 17 16 15 14

00
(Approximate execution time: 2.5 j.lsec.)

m

a = addressing mode designator
b = index register designator
m = storage address; M = m

+ (B

b

)

Instruction Description: Selectively complement the bits in the A register that correspond
to the set bits in the quantity at address M.

23

00

18 17 16 15 14

LPA Logical Product A

(Approximate execution time: 2.5 j.lsec.)
m

a = addressing mode designator
b = index register designator
b
m = storage address; M = m
(B )

+

Instruction Description: Replace (A) with the logical product of (A) and (M).
7-37

ARITHMETIC, FIXED POINT, 24-BIT PRECISION
Operation Field
ADA.I
RAD.I
SBA.I
MUAI
OVAl

30
34
31
50
51

23

Address Field

Interpretation

m.b
m.b
m.b
m.b
m.b

Add to A
Replace add
Subtract from A
Multiply A
Divide A

00

1 8 1 7 1 6 1 5 14

(Approximate execution time: 2.5 ILsec.)

m
a = addressing mode designator
b = index register designator
m = storage address; M = m
(Sb)

+

Instruction Description: Add the 24-bit operand located at address M to (A). The sum replaces the original (A).

23

RAD

00

18 17 16 15 14

Replace Add

(Approximate execution time: 3.8 ILsec.)

m
a = addressing mode designator
b = index register designator
m = storage address; M = m
(Sb)

+

Instruction Description: Replace the quantity at address M with the sum of (M) and (A).
The original (A) remains unchanged.
7-38

23

18 17 1 6 1 5 14

00

SBA Subtract from A

(Approximate execution time: 2.5 ,usee.)
m

a = addressing mode designator
b = index register designator
m = storage address; M = m
(B b)

+

Instruction Description: Subtract the 24-bit operand located at address M from (A). The
difference is transferred to A.

23

18 17 1 6 1 5 14

00
(Approximate execution time:
,usee.)

m

7.8-11.0

a = addressing mode designator
b = index register designator
m=storage address; M = m
(B b)

+

Instruction Description: Multiply (A) by the operand located at address M. The 48-bit product
is displayed in QA with the lowest order bits in A.

23

18 17 16 15 14
51

Ia I

00
(Approximate execution time: 11.25,usec.)

m

b

a = address mode designator
b = index register designator
m = storage address; M = m

+ (B b)

Instruction Description: Divide the 48-bit operand in AQ by the operand at storage address
M. The quotient is displayed in A and the remainder with sign extended is displayed in Q.
If a divide fault occurs, the operation halts and program execution advances to the next
address. The final (A) and (Q) are meaningless if a divide fault occurs.
7-39

ARITHMETIC, FIXED POINT, 48-BIT PRECISION
Operation Field
ADAQ,I
SBAQ,I
*MUAQ,I
*DVAQ,I

32
33
56
57

Address Field

Interpretation

m,b
m,b
m,b
m,b

Add to AQ
Subtract from AQ
MUltiply AQ
Divide AQ

*Trapped instruction if arithmetic option is not present.

This group of instructions may use indirect addressing and address modification, The A and Q
registers function as a single 48-bit register with the highest order bits in A. Address 77777 is not
recommended for use with this group of instructions.

23

00

18 17 1 6 1 5 14

ADAQ Add to AQ

(Approximate execution time: 3,8 Ilsec.)

m
a = addressing mode designator
b = index register designator
b
m=storage address: M = m
(B )

+

Instruction Description: Add the 48-bit operand located in addresses M and M

+

1 to

(AQ). The sum is displayed in AQ.
Comments: The upper 24 bits of the 48-bit operand in memory are contained at address M.

23

SBAQ Subtract from AQ

I

00

18 17 16 15 14
33

IaI

b

(Approximate execution time: 3,8 Ilsec.)

m

a = addressing mode designator
b = index register designator
b
m = storage address: M = m
(B )

+

Instruction Description: Subtract the 48-bit operand located in addresses M and M

from (AQ). The difference is displayed in AQ.
7-40

+

1

HOLDS THE LOWER 48 BITS OF A 96-81T
DIVIDEND PRIOR TO EXECUTING A DVAQ

INSTRUCTION

DIVIDE:
HOLDS A 48-81T REMAINDER AFTER
EXECUTING A DVAQ INSTRUCTION

M U L TIP L Y:

HOLDS THE LOWER 49 BITS OF A PRODUCT
AFTER EXECUTING AN MUAQ INSTRUCTION

00

47

'I
I

~
~

UPPER 46 BITS OF A
96-91T .DIVIDEND

95

D I V IDE
4 B

47
,-----

48-81T DIVISOR

00

-----

I
23

00 23

001

I 23

00

23

.1._'11tJ~l:(< Sb

Instruction Description: (AQ) is shifted left, end around, until the 2 highest order bits (46 and
47) are unequal. If (AQ) should initially equal positive or negative zero, 4810 shifts are executed before the instruction terminates. During scaling, the computer counts the number
of shifts. A quantity K, called the residue, is equal to k minus the shift count. If b = 0, this
quantity is discarded; ifb= 1,2, or 3, the residue is transferred to the designated index register.
7-52

23

CPR Compare

00

18 17 16 15 14

(Within Limits Test)

(Approximate execution time:
2.5-3.4 f.1sec.)

m

a = addressing mode designator
b = index register designator
m = storage address

Instruction Description: The quantity stored at address M is tested to see if it is within the
upper limits specified by A and the lower limits specified by Q. The testing proceeds as follows:
1. Subtract (M) from (A). If (M)
2. Subtract (Q) from (M). If (Q)

3. RNI from address P

+ 3.

> (A), RNI from address P + 1; if not.
> (M), RNI from P + 2; if not,

Comments: The final state of the (A) and (Q) registers remains unchanged. (A) must be ;:::
(Q) initially or the test cannot be satisfied. 77777777 is not sensed as negative zero. The
following table is a synopsis of the CPR test:

Test
Sequence

Jump Address
if Test Satisfied

(M) > (A)
(Q) > (M)
(A) ;::: (M) ;::: (Q)

P+1
P+2
P+3

CPR Instruction
in F

Subtract (M)
from (A)

Is (M)

>

(A)

?

Yes

I

·1

RNI from
P + 1

No

Subtract (Q)
from (M)

Is (Q)

>

(M)

?,
/

No

RNI from
P + 3

7-53

Yes

RNI from
P + 2

1

MEQ.Masked
Equality. Search

23

18 17

00

15 14

m

06

(Approximate execution time: 4.2+4.2n*
/l-sec.)

i = interval designator, 0 to 7
m = storage address

Instruction Description: (A) is compared with the logical product of (Q) and (M). This instruction uses index register Bl exclusively. m is modified just prior to step 3 in the test below.
Instruction Sequence:
1. Decrement (Bl) by i. (Refer to table below.)
2. If (Bl) changed sign from positive to negative, RNI from P + 1; if not,
3. Test to see if (A) = (Q) • (M). M = m+(Bl). If (A) =(Q) • (M), RNI from P
+ 2; if not,
4. Repeat the sequence.
Comments: i is represented by 3 bits, permitting a decrement interval selection from 1 to 8.
Address modification may not be used. Positive zero and negative zero are recognized as equal
quantities.
Designator
i

Decrement
interval

1

1

2
3
4

2
3
4

5

5,

6
7
0

6
7
8

Initial Program Entry

Decrement
(B') by 'i'

Did sign of B'
change positive
to negative?

No

(A)=(Q)- (M)

RNI from

P+l

Yes

RNI from

P+2
*n = number of words searched

7-54

23

MTH Masked Threshold
Search

18 17

15 14

00

07

(Approximate execution time:
4.2+4.2n* flsec.)

m

i = interval designator. 0 to 7
m = storage address

Instruction Description: (A) is compared with the logical product of (Q) and (M). This instruction uses index register B2 exclusively. m is modified just prior to step 3 in the test below.
Instruction Sequence:
1. Decrement (B2) by "I". (Refer to table below.)
2. If (B2) changed sign from positive to negative, RNI from P + 1; if not,
3. Test to see if (A) ~ (Q) .. (M). M = m + (B2). If (A) ~ (Q) .. (M), RNI from P +
2; if not,
4. Repeat the sequence.
Comments: i is represented by 3 bits, permitting a decrement interval selection from 1 to 8.
Address modification may not be used. Positive zero and negative zero are recognized as equal
quantities.
Designator
i

Decrement
interval

1

1

2
3
4
5
6
7
0

2
3
4
5
6
7
8

Initial program entry

Decrement
(B1) by 'i'

Did sign of B 1
change positive
to negative?

No

(A)

~

(Q) • (M)

RNI from

P+1

Yes

RNI from

P
*n = number of words searched

7-55

+2

SEARCH
Operation Field

Address Field

Interpretation

71

c,r,s
c,r,s

Search for character equality
Search for character inequality

SRCE,INT
SRCN,INT

GENERAL SEARCH/MOVE NOTE

The SEARCH and MOVE instructions are mutually exclusive. Attempts to execute
one while the other is in progress will cause a reject and a skip to address P + 2,

P

71

c

Ie

(Approximate execution
time: 3,3 1Lsec.)

30

00
register

I

20

00

23
P

register

s

IINTI

18 17 16

23

P+1

00

18 17 16

23

+2

Reject Instruction
e
e
INT
s

= "0" for SRCE, equality
= "1" for SRCN, inequality
= "1" for interrupt upon completion
= last character address ofthe search

block, plus one
c

= 00-778, BCD code of search char-

acter
= first (current) character address of

the search block

Instruction Description: This instruction initiates a search through a block of character
addresses in storage looking for equality or inequality with character c. It is composed of
three words, including the two main instruction words plus a reject instruction.

As a Search progresses, r is incremented until the search terminates when either a comparison occurs between the search character c and a character in storage, or until r=s. If a
comparison does occur, the address of the satisfying character may be determined by inspecting r. To do this, transfer the contents of register 20 to A with instruction TMA
(53 0 20020).
Register 20 of the register file is reserved for the second instruction word which contains
the current character address of the search block. Register 30 is reserved for the first instruction word which contains the last character address, plus one of the search block.
Figure 7-6 is a flow chart of steps that occur during a search operation.

7-56

Load (address
P + 1) into Data
Register

Is Search/Move
Control Busy?

Transfer (Data
Bus register)
to register· 20

Transfer (F)
to register
30

Release R. F.
Initiate
Search

Await
,Search
- - - - -Control
- - - : - , . Priority
Generates Block
Control Request

Read Up
Register 20
(Address P + 1)

Restore
Register 20

Read Up
Register
(P)

L------;>f.1 No increment I
for first
character

Transfer

~I

(S2) to

S Bus

-;--1
01

--l

e; 0
Load Search
Character C
into Data Bus
Register

No
Yes

Figure 7 -6. Search Operation

Release Data
Bus; RNIfrom
Address P + 3

Restore
Register 30
(P)

MOVE
Address Field

Interpretation

l.r,s

Move l characters from r to s

Operation Field
72

MOVE Move
from r to s

MOVE,INT

l Characters

23

P

72

23

00

18 17 16

IINTI

(Approximate execution
time: 3.3 j.lsec.)

s

00

17 16

P+1
23
P

+2

00
Reject Instruction

INT = "1" for interrupt upon completion
s
= first address of character block
destination
= field length of block, 0-1778*11
= first address of character block
source

Instruction Description: This instruction moves a block of data, l characters long, from one
area of storage to another. It is composed of three words, including the two main instruction words, plus a reject instruction.
As a Move operation progresses, rand s are incremented and l is decremented until l = O.
128 characters or 32 words may be moved. When bits 00 and 01 of rand s are "0", and the
field length is a multiple of four characters, data is moved word by word. This reduces move
time by 75% over a character by character move.
Register 21 of the Register File is reserved for the second instruction word which contains
the first address of the character block source. Register 31 is reserved for the first instruction word which contains the first address of the character block destination.
Figure 7 -7 is a flow chart of steps that occur during a Move operation.

*=

1-1778 represents a field length of 1 to 127 characters; 0 represents a field length of 128 characters.

Rev, F

7-58

Load (Address
P + 1) into Data
Bus Register

Increment r
Read Up
1---<>--.;011 by 1 for
Register 21
Character
(Address P + 1)
Move

,

-:J
01

<:0

Transfer (Data
Bus Register)
to Register 21

Transfl'r (F)
to Register 31

Establish Word
or Character
Move

Establish First
Word or Character

Release R. F.
Initiate Move

Release Data
Bus RNI From
Address P + 3

Increment L

f--""-~'I by 1 for

Character Move

Decrement L
by 1 for
J:::haracter. Mov..a

Increment L
by 4 for
Word Move

No Increment
for First Word
or Character

No Increment
for First Word
or Character

Increment r by
4 for Word
Move
Decrement L
by 4 for
Word Move

Restore Register
31 (Save in restoration register)

Set Character
Address in S2
for correct
shift.

Figure 7-7. Move Instruction

SENSING
Operation

77.2
77.4
77.3

Address

Interpretation

x.ch;x~O

Sense external status
Copy external status

EXS
COpy

x.cn;x=O

INTS

x.ch

INS
CINS

x.ch;x~O

Sense interrupt
Sense internal status
Copy internal status

x.ch;x=O

00

18 17 15 14 12 11

23

(Approximate execution time: 1.3-1.7 j.lsec.)

x

77

ch = 110 channel designator. 0-7
x = external status sensing mask code
(see Comments below)

Instruction Description: When a peripheral equipment controller is connected to an I/O
channel by the CON (77.0) instruction, the EXS instruction can sense conditions within
that controller. Twelve status lines run between each controller and its I/O channel. Each
line may monitor one condition within the controller, and each controller has a unique set
of line definitions. To sense a specific condition, a "1" is placed in the bit position of
the status sensing mask that corresponds to the line number. When this instruction is recognized in a program, RNI at address P + 1 if an external status line is active when its
corresponding mask bits are "1". RNI at address P + 2 if no selected line is active.
Comments: Refer to the 3000 Series Computer Systems Peripheral Equipment Codes manual
(Pub. No. 60113400) for a complete list of status response codes.

23

00

181715141211

0000

77

(Approximate execution time: 1.3-1.7 j.lsec.)

ch = 110 channel designator. 0-7

Instruction Description: This instruction performs the following functions:
1. The external status code from I/O channel ch is loaded into the lower 12 bits of A. See

EXS instruction.
2. The contents of the Interrupt Mask register are loaded into the upper 12 bits of A. See

Table 7-4.
3. RNI from address P

+ 1.

7-60

TABLE 7-4. INTERRUPT MASK REGISTER BIT ASSIGNMENTS
Mask Bit
Positions

Mask Codes {xl

00
01
02
03
04
05
06
07
08
09
10
11

0001
0002
0004
0010
0020
0040
0100
0200
0400
1000
2000
4000

23

Interrupt Conditions Represented
External equipment interrupt line 0 active
1
2
3

4
5
6
7
Real-time clock
Exponent overflow/underflow & BCD faults
Arithmetic overflow & divide faults
Search/Move completion

00

18 1 7 1 5 14 12 11

77

4

I

ch

I

x

(Approximate execution time: 1.3-1.7 f.lsec.)

ch = I/O channel designator, 0-7
x = interrupt sensing mask code

Instruction Description: Sense for the interrupt conditions listed in Table 7-4. RNI from P
+ 1 if an interrupt line is active and the corresponding mask bit is a "1". If none of the se-

lected lines is active, RNI from P

+ 2. Internal faults are cleared as soon as they are sensed.

7-61

INS Sense Internal
Status

23

18 17 1 5 14 12 11
77

3

I

ch

00
(Approximate execution time: 1.3-1.7 J.Lsec.)

I

x

ch = I/O channel designator. 0-7
x = internal status sensing mask code.

Instruction Description: Table 7-5 lists the bit definitions of the internal status sensing
mask. Bits 00-04 and 06-07 represent conditions within I/O channel ch. Bits 05 and 08-11,
which represent internal faults, may be sensed without regard to channel designation.
To sense a specific condition, load a "1'" into the bit position of the mask that corresponds
to the condition. When this instruction is executed, RNI from address P + 1 if an internal
status line is active and the corresponding mask bit is a "I". RNI from address P + 2 if
none of the selected lines is active. Logic associated with the faults marked by an asterisk
in Table 7-5 is cleared as soon as these conditions are sensed.

TABLE 7-5. INTERNAL STATUS SENSING MASK
Mask Bit
Positions

Mask Codes (xl

00
01
02
03
04
05
06

0001
0002
0004
0010
0020
0040
0100

07

0200

08
09
10
11

0400
1000
2000
4000

Condition Represented
Parity error on channel ch
Channel ch busy reading
Channel ch busy writing
External reject active on channel ch
No-response reject active on channel ch
*lllegal write
Channel ch preset by CON or SEL. but no reading
or writing in progress
Internal I/O channel interrupt on channel ch. upon:
1) completion of read or write operation. or
2) end of record
*Exponent overflow/underflow fault (floating point)
* Arithmetic overflow fault (adder)
*Divide fault
*BCD fault

* Refer to INS instruction description .

•CINS
Status

copy'tni~~~:1

23

18 1 7 1 5 14 12 11
77

3

I

ch

I

00
(Approximate execution time: 1.3-1.7 J.Lsec.)
0000

ch = I/O channel designator. 0-7

Instruction Description: The CINS instruction performs the following functions:
1. The internal status code is loaded into the lower 12 bits of A. See INS instruction.
2. The contents of the Interrupt Mask register are loaded into the upper 12 bits of A. See

Table 7-4.
3. RNI from address P

+ 1.
7-62

CONTROL
Operation
Field

77.51
77.6
77.61

Address
Field

Interpretation

x
x
x

IOCl
PAUS
PRP

23

Clear 110, typewriter, and SearchlMove
Pause
Priority pause

18 17
77

00

12 11

x

51

(Approximate execution time: 1.3 /lsec.)

x = block control clearing mask

Instruction Description: This instruction may be used to clear the I/O channels. It also
clears all associated peripheral equipment, the typewriter or the SearchlMove control
according to bits set in the block control clearing mask. (Table 7-6).

TABLE 7-6. BLOCK CONTROL CLEARING MASK
Mask Bits

Mask Codes (x)

Controls Cleared

00
01
02
03
04
05
06
07
08
09
10
11

0001
0002
0004
0010
0020
0040
0100
0200
0400
1000
2000
4000

110 channel 0
1
2
3
4
5
6
7
Typewriter
(see note)
(see note)
Search/Move

NOTE

If bits 09 and 10 are both set or both clear, the channel(s) specified by bits 00 through 07 of the

mask are cleared i.e, Read or Write, Status, and Channel Interrupt are cleared. A 5.5 JLsec.
Clear signal is also sent to the peripheral equipment and controllers connected to the selected
channel(s),
If bit 09 is clear and bit 10 is set, the instruction will clear the channel(s) only and the 5.5
JLsec. Clear signal is not transmitted. Bit 08 clears the typewriter as well as the Type Load or
Type Dump logic in block control.

7-63
Rev. H

23

00

18 17 15 14 12 11

P

(Approximate execution time:
2.0 f.lsec. to 40 ms.)

x
00

23

P+1

Reject Instruction

x = pause sensing mask code

Instruction Description: This instruction allows the program to halt for a maximum of 40 ms
if a condition (excluding typewriter-see note) defined by the pause sensing mask exists. See
Table 7-7. If a "I" appears on a line that corresponds to a mask bit that is set, the count in P will
not advance. If the advancement of P is delayed for more than 40 ms, a reject instruction is read
from address P + 1. If none of the lines being sensed is active, or if they become inactive during
the pause, the program immediately skips to address P + 2. If an interrupt occurs and is enabled
during a PAUS, the pause condition is terminated, the interrupt sequence is initiated and the
address of the PAUS instruction is stored as the interrupted address.
Comments: Bits 12 through 14 of the instruction at P should be loaded with zeros.
NOTE

If either bit 08,09 or 10 (or any combination ofthese bits) is set and the sensed condition exists,
a pause will not occur and the instruction at P + 1 is read up immediately. If these bites) are set
but the condition(s) does not exist, the program immediately skips to P + 2. For all other bits,
the normal PAUS routine is followed. TYPE FINISH and/or TYPE REPEAT are cleared if bit
9 and/or bit 10 are set and the condition(s) does not exist.

TABLE 7-7. PAUSE SENSING MASK
Mask Bits
00
01
02
03
04
05
06
07
08
09
10
11

Mask Codes
0001
0002
0004
0010
0020
0040
0100
0200
0400
1000
2000
4000

Condition

Notes

I/O channel 0 busy
1
2
3
4
5
6
7
Typewriter busy
Typewriter NOT finish
Typewriter NOT repeat
Search/Move control busy

23

177

Channel read or write operation in
progress, or the External MC logic
within the channel is set

Typewriter input or output in progress
Finish logic not set
Repeat logic not set
Search or Move operation in progress

00

12 II

18 17
61

x

(Approximate execution time:
2.0 JLsec. to 40 ms)

x=palJse sensing mask

Instruction Description: This instruction performs the same operation as the PAUS (77.6)
instruction, however, the real-time clock is prevented from incrementing.

7-64
Rev. H

INTERRUPT
Operation Field
77.50
77.52
77.53
77.57
77.71
77.72
77.73
77.74

Interpretation

Address Field

INCL
SSIM
SCIM
IAPR
SFPF
SBCO
DINT
EINT

Clear interrupt
Selectively set interrupt mask
Selectively clear interrupt mask
Interrupt associated processor
Set floating point fault
Set BCD fault
Disable interrupt control
Enable interrupt control

x
x
x

23

12 11

18 17

00

(Approximate execution time: 1.3 JLsec.)
50

77

x

x

= interrupt mask register clealring codes

Instruction Description: This instruction clears the interrupt faults defined by the mask
codes in Table 7-8, Note that only internal I/O channel interrupts are cleared by this
instruction.

TABLE 7-8:. iNTERRUPT MASK REGISTER BH ASSIGNMENTS
Mask Bits
00
01
02
03
04
05
06
07
08
09
10
11

*

Mask Codes (x)

Interrupt Conditions Represented

0001
0002
0004
0010
0020
0040
0100
0200
0400
1000
2000
4000

I/O Channel 0 (includes interrupts gener1 ated within the channel
2 and external equipment
3 interrupts)
4

5
6
7
Real-time clock
Exponent overflow/underflow & BCD faults
Arithmetic overflow & divide faults
Search/Move completion

*Mask hits 00-07 represent internal and external I/O interrupts for all instructions except INCL.

7-65

Rev. F

23

18 17

Ou

12 11

(Approximate execution time: 1.3 iLsec.)
77

x

52

x = interrupt mask register codes

Instruction Description: This instruction selectively sets the Interrupt Mask register according to the interrupt mask code x. For each bit set to "I" in x, the corresponding bit
position in the Interrupt Mask register is set to "1" (see Table 7-8). Bit positions representing missing or nonavailable I/O channels cannot be set.
Comments: This instruction should not be executed while the interrupt system is enabled.

23

I

18 17

00

12 11

(Approximate execution time: 1.3 iLseC.)

77

x

53

x = interrupt mask register codes.

Instruction Description: This instruction selectively clears the Interrupt Mask register according to the interrupt mask code x. For each bit set to "I" in x, the corresponding bit
position in the Interrupt Mask register is set to "0" (see Table 7-8).
Comments: This instruction should not be executed while the interrupt

sysitl:~m

is enabled.

Instruction Description: The processor (computer) executing this instruction sends an interrupt to an associated processor on ilts left, via storage modules 0 and 1. The interrupt
remains active in the receiving computer until it is recognized.
Comments: Bits 00 through 11 should be loaded with zeros.
Rev.H

7-66

SFPF Set Floating
Point Fault

(Approximate execution time: 1.3 ~sec.)

Instruction Description: The floating-point fault logic sets when a floating point fault ,occurs.
This instruction is used when the optional floating point arithmetic logic is not pre~ent in
a system. An interpretive software routine should recognize any conditions which would
have caused a fault if the operation had been executed by the optional hardware.
Comments: Bits 00 through 11 should be loaded with zeros.

23

00

12 11

18 17

(Approximate execution time: 1.3 ~sec.)

Instruction Description: The BCD fault logic sets when a BCD fault occurs. This instruction
is used when the optional BCD arithmetic is not present in a system. An interpretive software routine should recognize any condition which would have caused a fault if the operation had been executed by the optional hardware.
Comments: Bits 00 through 11 should be loaded with zeros.

(Approximate execution time: 1.3 ~sec.)

Instruction Description: This instruction disables the interrupt control system. The system
remains disabled until an EINT instruction is executed. Selected interrupts may still be
sensed.
Comments: Bits 00 through 11 should be loaded with zeros.

EINT Enable
, Interrupt Control

23

18 17

77

12 11

00

(Approximate execution time: 1.3 ~sec.)

74

Instruction Description: This instruction enables the interrupt control system. After executing
this instruction, at least one and up to four more instructions may be executed before an interrupt is recognized, depending on the type of interrupt. (See Section 4.)
Comments: Bits 00 through 11 should be loaded with zeros.
7-67

Rev. F

INPUT/OUTPUT

Operation Field

77.512
77.511

77.0
77.1
77.75
77.76
73
74
75
76

ClCA
CllO
CON
SEl
CTI
CTO
INPC.INT.B.H
INAC.INT
INPW.INT.B.N
INAW.INT
OUTC.INT.B.H
OTAC,INT
OUTW,INT,B,N
OTAW, I NT

Address
Field

Interpretation
Clear channel activity
Channel interrupt lockout
Connect to external equipment
Select function
Set console typewriter input
Set console typewriter output
Character-Addressed Input to storage
Character-Addressed Input to A
Word-Addressed Input to storage
Word-Addressed Input to A
Character-Addressed Output from storage
Character-Addressed Output from A
Word-Addressed Output from storage
Word-Addressed Output from A

cm
cm
x.ch
x.ch

ch.r.s
ch
ch.m.n
ch
ch.r.s
ch
ch,m.n
ch

I/O operations with storage, unlike operations with A, are buffered. Main computer control relinquishes
control of the I/O operations and returns to the main program as soon as Read or Write signals have
been activated.
During the execution of word-addressed I/O instructions, the addresses m and n are shifted left two
places to the upper 15 bits of the 17 -bit address positions. From this time on, they are treated as character addresses.
Registers 00-178 of the Register File are now reserved for I/O operations. The lowest order octal digit (X)
of the register designator corresponds to the I/O channel ch being used. Registers 00-078 are used to
hold the instruction word which contains the current character address; 10-178 hold the instruction
word which contains the last character address ±1, depending on the operation. The Register File
controls modify bits 21-23 of the first and second I/O instruction words. The modified values, listed in
Table 7-9, are predictable. Bits 18 through 23 of register file locations 00 through 07 are used by block
control during each I/O transfer - thus, alteration of these bits by a programmer is not recommended.
In cases where the addresses require modification to obtain dynamic I/O operations, care should be
taken to provide proper read-out and restoration of the control bits. Ifthe instruction cannot be executed,
program control jumps to the reject instruction.
If the bit reserved for Interrupt Upon Completion (INT) is a "I" and the mask bit for the affected I/O
channel is a "I" and the interrupt system is enabled, the control logic receives a channel-generated
interrupt when the output operation is completed. I/O efficiency can be increased by utilizing this bit
when applicable.

NOTE
For INPC (73) and OUTC (75) instructions with H == "1," an even character count
must be used. If the count is odd, the last character will be lost.

Rev. H

7-68

TABLE 7-9. MODIFIED 1/0 INSTRUCTION WORDS

Instruction

73

..c:
....
Q)

t:

Cl

...0ro

.....S! .....
~

Q)

Q.

en

74
75

P
P+
P
P+
P
P+
P
P+

1

INPW

1

OUTC

2

0

F
(FCN REG)

If

~READ
IP

+

11

CHANNEL
BUSY?

LOAD
1 )->Zo

+

(P

(P)->Z'

YES
REJECT

WAIT FOR BLOCK CONTROL,

TO

THEN S BUS PRIORITY.

P+2

&

STORE zo (P+1)

ACTIVATE READ
WRITE ON I/O
CHANNEL 0 -> 7

OPERATION
WITH A?

IN ONE REGISTER
(00-> 07)

STORE Z' (P)
IN ONE REGISTER
(10->11)

NO

J--~

YES
'-----~

Rev. H

3

7-72

RELEASE BLOCK
CONTROL AND
SCANNER

KD

Await
PrioritYj;-___---,
Read Up
Register

Await
Reply
Reply
From
Controller

I/O Channel
Generates
Data Signal

I/O Channel
Generates
Block Control
Request

OX
A or NC

Restore
Register
0X

,

-..:J
-..:J

ICI.:i

Request
Core
Storage

Await
Priority

~:::-:-----,

Transfer
r to S2

r:,

Input One
Or Two
Characters
To r

=I

Set External
To Internal BCD
Conversion

Read Up
Register
IX

H = 0

Increment
r by I

X = I/O Channel Ch (0-7)

Terminate

B=O'H = I

'------>l!Ot Input

~Increment

r by 2

INT = I
H =0

Interrupt

I

~ Decrement
T 1 -

B = I

·Ir by I

IH = I
~Decrement

r by 2

Figure 7 -8. I/O Operation with Storage

I

+

>(

23

INPW Word Addressed
Input to Storage

18 17 16 1 5 14

00

P~I---7-4--~lo~~-n----~
23 21 20 19 18 17 16 15 14

(Approximate execution time:
3.3 tLsec.)

00

~BINIINT~m

p+11 ch
23

00
Reject Instruction _ _ _ _- - I

B
ch
INT
N
N
m

n

= "1" for backward storage
= I/O channel designator. 0-7
= "1" for interrupt upon completion
= "0" for 12- to 24-bit assembly
= "1" for no assembly
= first word address of I/O data block;

=

becomes current address as I/O operation progresses
last word address of input data block,
plus one (minus one, for backward
storage)

Bits 15 and 16 at P and 15, 16 and 20 at P + 1 should be loaded with zeros.

Instruction Description: This instruction transfers a word-addressed data block from an external equipment to storage. Transferring 12-bit bytes or 24-bit words depends upon the type of
I/O channel used. The 3206 utilizes 12-bit bytes and the 3207 uses 24-bit words.
During forward storage and 12- to 24-bit assembly, the first byte of a block of data is stored
in the upper half of the memory location specii5.ed by the storage address. Conversely, during
backward storage, the first byte is stored in the lower half of the memory location.
I/O OPERATION WITH STORAGE
INSTRUCTION SEQUENCE
REQUEST
BLOCK
CONTROL

{P)----;F
START

(FCN REG)

READ
(P

+ 1)

CHANNEL
BUSY?

LOAD
1 )----;ZO

+

{P

{P)----;Z'

YES
REJECT

WAIT FOR BLOCK CONTROL.

TO

THEN S BUS PRIORITY.

P+2

~

STORE Zo (P+ 1)

ACTIVATE READ/
WRITE ON I/O
CHANNEL 0-7 7

OPERATION
WITH A?

STORE

IN ONE REGISTER
(00-707)

NO

I---~

RNI
FROM
P+3

Rev. F

z'

(P)

IN ONE REGISTER
(10 ----; 17)

7-74

RELEASE BLOCK
CONTROL AND
SCANNER

i0

Await

I/O Channel
Generates
Data Signal

Await

Reply

read

"'--V""'O-C-h-a-nn-e-l--' Pri~;ity
Ge~r~es

Block Control
Request

Await

OX

Request
Core
Storage

Priority I Deliver
(S2) To
S Bus

Transfer
m to S2

OX
A or NC

Restore
Register

Up

Re~s~r

Input One
Word Tom

=I

Set External
To Internal
BCD Conversion

Read Up
Register
IX

"'-l
I
"'-l
01

N=O

I
B=OI

x

Terminate
Input

r-

Increment
m by2
L

I

N =1
I

= I/O Channel Ch (0-7)

.---

Increment
m by4

I

INT = I

N =0

I
Interrupt

'I

,---

B=I N = I

Decrement
m by 2
L-

r-

Decrement
m by4

Figure 7-9. 74 I/O Operation with Storage

18 17 16

23

00

s

75

23 21 20 19 18 17 16

00

23

00

(Approximate execution time:
3.3 fJ.sec.)

Reject Instruction
B
ch
H
H
INT

= "1 .. for backward storage
= I/O channel designator. 0-7
= "0" for 24- to 6-bit disassembly
= "1" for 24- to 12-bit disassembly
= "1" for interrupt upon completion
= first character address of I/O data block;

s

becomes current address as I/O operation progresses
= last character address of output data
block. plus one (minus one. for backward output)

Instruction Description: This instruction transfers a character-addressed block of data,
consisting of 6-bit characters or 12-bit bytes, from storage to an external equipment.

NOTE

If H = "1," an even character count must be used. lfthe count is odd, the last character
will be lost.
I/O OPERATION WITH STORAGE
INSTRUCTION SEQUENCE
(P)~F

START

(FCN REG)

REQUEST
BLOCK
CONTROL

I

f

READ.
(P

+ 1)

CHANNEL
BUSY?

LOAD

+ 1)---->Zo

(P

(P)---->Z'

YES
REJECT

WAIT FOR BLOCK CONTROL.

TO

THEN S BUS PRIORITY.

P+2

1--..

ACTIVATE READ
WRITE ON I/O
CHANNEL 0--) 7

OPERATION
WITH A?

STORE z' (P)
IN ONE REGISTER
(10 --) 17)

STORE Zo (P+ 1)
IN ONE REGISTER
(00 --) 07)

NO
1---iIl

RNI
FROM
P+3

Rev. H

7-76

RELEASE BLOCK
CONTROL AND
SCANNER

~

Await
Priori ty
I/O Channel
Generates
Block Control
Request

H = 0
r - ,- - - - . . ,

Read Up
Register

Tr ansfer t---..----O---.
r to S2

Increment
r by 1

OX
B =0

A or NC = 1

H:;: 1 , . . - - - - - - - - ,
Increment
r by 2

I 1

-,Restore

n I Register
OX

Set Internal
To External BCD
Conversion

H = 0
Decrement
r by 1

x

B = l'H = 1

= I/O Channel Ch (0-7)

Decrement
r by 2
,

-.:]

Await
Reply

-.:]
-.:]

Request
Core
Storage

Await
Priority IDeliver
S2 To
S Bus

Output One
Or Two
Characters
From r

INT = 1

No
Read Up
Register
lX

Does

r = s?

Reply
From
Controller

I/O Channel
Generates
Data Signal

Yes

I Set CI:annell

~ Termmate

1 I Terminate

~ Output

Figure 7-10.75 I/O Operation with Storage

Interrupt

23

1817 161514

OUTW Word-Addressed
i~glJ~put from Storage·

00

76

(Appro)5imate execution time:
3.3 JLsec)

n

23 2120 19 18 17 16

00

~14

m
23

00
Reject Instruction

B
ch
INT
m

= "1 " for backward storage
= 1/0 channel designator, 0-7
= "1" for interrupt upon completion
= first word address of 1/0 data block;

becomes current address as 1/0 operation progresses
= "0" for 24- to 12-bit disassembly
=" 1" for straight 12- or 24-bit data
transfer
= last word address of output data block,
plus one (minus one, for backward
output)

N
N
n

Instruction Description: This instruction transfers a word-addressed block of data consisting
of 12-bit bytes or 24-bit words, from storage to an external equipment.
With no disassembly, 12 or 24-bit transfer capability depends upon whether a 3206 or 3207 I/O
channel is used. If an attempt is made to send a 24-bit word o:ver a 3206 I/O channel, the upper
byte will be lost.
1/0 OPERATION WITH STORAGE

INSTRUCTION SEQUENCE

START

REQUEST
BLOCK

(P)-->F
(FCN REG)

f

{READ
(P
1)

+

CHANNEL
BUSY?

LOAD

+ 1)-->zo

(P

(P) -->Zl

CONTROL /
YES

REJECT

WAIT FOR BLOck CONTROL,

TO

THEN S BUS PRIORITY.

P+2

i~

ACTIVATE READ/
WRITE ON 1/0
CHANNEL

O~

7

OPERATION
WITH A?

NO

STORE Zo (p+ 1)

STORE Zl (P)

IN ONE REGISTER
(OO~ 07)

IN ONE REGISTER
(10~ 17)

1

~
Rev. H

RNI
FROM
P+3

~
7-78

RELEASE BLOCK
CONTROL AND
SCANNER

~

Await
Priority, Read Up
Register
OX

I/O Channel
Generates
Block Control
Request

N

=0

Transfer I _ r"\ _ A J Increment
mtoS2 ~mby2

A or NC = 1

Increment I I I Restore
m by 4
I I I Register
OX

Set Internal
To External
BCD Conversion

N

=0
Decrement
m by 2

x = I/O Channel Ch (0-7)

B = 1
N

...:J
I
...:J

c:.o

r,------. A wait

iRequest
Core
Storage

priyity 1~liver
2 To
S Bus

Output One
Word
From m

I/O Channel
Generates
Data Signal

No

Read Up
Register
lX

Does
m = n?

= 1 ,--------.
Decrement
m by 4
Await
Reply
Reply
From
Controller

INT = 1

Yes

I

Set C~annel~ Terminate.
.. Termlnate
Output

Figure 7-11. 76 I/O Operation with Storage

"

_I

Interrupt

23

INAC Input,
Character to A

181716

00

(Approximate execution time:
indeterminate)

73

23

00
Reject Instruction

ch = 1/0 channel designator. 0-7
I NT = "1" for interrupt upon completion

Instruction Description: This instruction transfers a 6-bit character from an external equipment into the lower six bits of the A register. A is cleared prior to loading, and the upper 18
bits remain cleared.
Comments: Bits 00-16 at P and P

+ 1 should be loaded with zeros.

I/O OPERATION WITH A
INSTRUCTION SEQUENCE
REQUEST
BLOCK
CONTROL

(P)--->F

START

(FCN REG)

f

I

READ
(P

+

1)

CHANNEL
BUSY?

LOAD
1 )--->Zo

+

(P

(P) ---> Z'

YES
REJECT

WAIT FOR BLOCK CONTROL.

TO

THEN S BUS PRIORITY.

P+2

.-lo

ACTIVATE READ
WRITE ON 1/0
CHANNEL O~ 7

OPERATION
WITH A?

STORE Zo (P+ 1)
IN ONE REGISTER
(00-+ 07)

NO

~.:..-~

STORE z' (P)
IN ONE REGISTER
(10-+ 17)

RNI
FROM
P+3

7-80

RELEASE BLOCK
CONTROL AND
SCANNER

kD

Await
Reply
I/O Channel
Generates
Data Signal

Await

.--------'1, Priority ....--------,
Reply From
Controller

I/O Channel
Generates
Block Control
Request

Read Up
Registers
OX & lX

x

-l
I

00
f-'

INT = 1

Input One
Char acter Or
Word To A

Terminate~

Input

Interrupt

Figure 7-12.73 I/O Operation with A

= I/O Channel Ch (0-7)

23

181716

00

INAW Input, Word to A

(Approximate execution time:
indeterminate)

74

23

00
Reject Instruction

ch

= 1/0 channel designator. 0-7
INT = "1" for interrupt upon completion

Instruction Description: This instruction transfers a 12-bit byte into the lower 12 bits of A or
a 24-bit word into all of A from an external equipment. Transferring 12 or 24 bits depends upon
whether a 3206 or 3207 I/O channel is used. (A) is cleared prior to loading and, in the case of a
12-bit input, the upper 12 bits remain cleared.
Comments: Bits 00-16 at P and P+ 1 should be loaded with zeros.
NOTE

Bits 18, 19, and 20 are all zeros when a 3206 data channel is used. If the operation with
A involves the use of a 3207, these bits take on the following significance:
Bit 20 = always a "0".
Bit 19= If bit 18="1", the state of bit 19 is of no consequence.
If bit 18 = "0", a "I" in bit 19 signifies backward operation.
A "0" in bit 19 signifies a forward operation.
I/O OPERATION WITH A
INSTRUCTION SEQUENCE

START

REQUEST
BLOCK
CONTROL

(P)->F
(FCN REG)

If

READ
(P

+ 1)

CHANNEL
BUSY?

(P

LOAD
1 )->Zo
(P)->Zl

+

YES
REJECT

WAIT FOR BLOCK CONTROL.
THEN S BUS PRIORITY.

TO
P+2

~

ACTIVATE READ
WRITE ON I/O
CHANNEL 0 -> 7

OPERATION
WITH A?

NO

STORE Zo (P+ 1)

STORE Zl (P)

RELEASE BLOCK

IN ONE REGISTER
(00-> 07)

IN ONE REGISTER
(10->17)

CONTROL AND
SCANNER

~

~0

RNI
FROM
,--_P_+,--3_ - '

V

~
7-82

~

Await

I/O Channel
Generates
Block Control
Request

Priority ,...._ _ _ _ _ _----,
Read Up
Registers
OX & IX

Output One
Character
Word From A

X = I/O Channel Ch (0-7)

-.j
I

C/J
c...l

INT = 1
Aw cu.

~

)ly

Reply From
Controller

Terminate
Output

Interrupt

Figure 7-13.74 I/O Operation with A

I/O Channel
Generates
Data Signal

23

(Approximate execution time:

OTAC Output,

75

Character from A

3.3 J..Lsec.)

00

23
Reject Instruction

ch = 1/0 channel designator, 0-7
I NT =" 1" for interrupt upon completion

Instruction Description: This instruction transfers a character from the lower 6 bits of A

to an external equipment. The original contents of A are retained.
Comments: Bits 00-16 at P and P + 1 should be loaded with zeros.

I/O OPERATION WITH A
INSTRUCTION SEQUENCE
(P)->F
START ~
(FCN REG) ~

REQUEST
BLOCK
CONTROL

H

/

CHANNEL

READ

f

(P

+

1)

BUSY?

LOAD

+ 1 )->Zo

(P

(P)->Z'
YES
REJECT

WAIT FOR BLOCK CONTROL.

TO

THEN S BUS PRIORITY.

P+2

)~

ACTIVATE READ

STORE zo (P+1)

STORE z' (P)

RELEASE BLOCK

WRITE ON 1/0
CHANNEL 0--+ 7

IN ONE REGISTER
(00 --+ 07)

IN ONE REGISTER
(10 --+ 17)

CONTROL AND

OPERATION
WITH A?

NO

~I

F:~~

~:.f3\
"\J

'----...:...P_+!......::,.3_--l

~

7-84

SCANNER

~

Await

I/O Channel
Generates
Block Control
Request

Priority ,...._ _ _ _ _ __
Read Up
Registers
OX & lX

x

Output One
Character
Word From A

= I/O Channel Ch (0-7)

-:]

00

Cl1

INT = 1

f;\

Await

Re.ply

~J

Reply From
Controller

1- - - -

Terminate
Output

Interrupt

Figure 7 -14. 75 I/O Operation with A

I/O Channel
Generates
Data Signal

23

18 17 16

OTAW Output, Word

(Approximate execution ti"me:
3.3 fJ.sec)

76

trom A

23

00
Reject Instruction

ch = 1/0 channel designator. 0-7
INT = "1" for interrupt upon completion.

Instruction Description: This instruction transfers a 12-bit byte from the lower 12 bits of A,
or (A) to an external equipment, depending upon the type of I/O channel (3206 or 3207) that is
used. (A) is retained.
Comments: Bits 00-16 at P and P + 1 should be loaded with zeros.

NOTE

Bits 18, 19, and 20 are all zeros when a 3206 data channel is used. If the operation with
A involves the use of a 3207, these bits take on the following significance:
Bit 20= always a "0".
Bit 19=Ifbit 18="1", the state of bit 19 is of no consequence.
If bit 18="0", a "I" in bit 19 signifies backward operation.
A "0" in bit 19 signifies a forward operation.
I/O OPERATION WITH A
INSTRUCTION SEQUENCE
REQUEST
BLOCK
CONTROL

(P}---> F

START

(FCN REG)

/

f

READ
(P

+ 1)

CHANNEL
BUSY?

LOAD

+ 1}--->zo

(P

(P) ---> Zl

YES
REJECT

WAIT FOR BLOCK CONTROL.
THEN S BUS PRIORITY.

TO

P+2

~

(p+

ACTIVATE READ
WRITE ON 110
. CHANNEL 0 ---+ 7

OPERATION
WITH A?

NO

STORE Zo
1)
IN ONE REGISTER

STORE Zl (P)

RELEASE BLOCK

IN ONE REGISTER

(00---+ 07)

(10---+ 17)

CONTROL AND
SCANNER

~!

R-:.N_I_---,~3

FROM

___

P+3

~
7-86

~

I/O Channel
Generates
Block Control
Request

Await
Priori ty .,_ _ _ _ _ _--,
Read Up
Registers
OX & IX

Output One
Character
Word From A

-l

OJ
-l

X

=

I/O Channel Ch (0-7)

Figure 7 -15. 76 I/O Operation with A

I/O Channel
Generates
Data Signal

Section 8
SOfTWARE SYSTEMS
GENERAL DESCRIPTION
This chapter presents a synopsis of the major software systems applicable to a 3200
COUlPuter System. The software information contained in this chapter is also valid for
3100 and 3300 Computer Systems.
Reference manuals are available for each of the systems described in this chapter and
should be consulted for detailed information. Copies of these manuals and others as they
become available may be obtained by corresponding with the nearest Control Data sales
office listed on the back cover of this manual.

3100, 3200, 3300 SCOPE
SCOPE is the oper<;ltion system for the CONTROL DATA 3100, 3200, 3300 Computers.
Modular in structure, the system provides efficient job processing while minimizing its
own memory and time requirements. Programming with the operating system is simplified by the use of control cards which are included with program decks. Among the
functions performed by SCOPE are the following:

Job Processing
•
•
It

•
•
e
It

Processes stacked or single jobs
Controls I/O and interrupt requests
Monitors compilations and assemblies
Loads and links object subprograms
Stores accounting information
Initiates recovery dumps
Prepares overlay tapes

Equipment Assignments
e
e
It
III

Logical unit references
Physical unit assignment at run time
Drivers for all standard peripheral equipment
System units which facilitate job processing and minimize monitor programming

8-1

Debugging Aids
..
..
•
•

Extensive diagnostics
Octal corrections
Snapshot dumps
Recovery dumps

library Preparation and Editing
..
II
II

Prepare a new library
Edit an existing library
List the contents of a library

3100, 3200, 3300 COMPASS
COMPASS is the comprehensive assembly system for the 3100, 3200, 3300 Computers.
Operating under 3100, 3200, 3300 SCOPE, it assembles relocatable machine language
programs. The program may consist of subprograms, each of which may be independently
assembled. COMPASS source language includes the following features:
Operation codes

Machine operations are written as one or more mnemonic or octal
subfields.

Addressing

Expressions, used as addresses, may represent either word or character locations. Expressions consist of symbols, constants, and special characters connected by + and -.

Data storage

A data area, shared by subprograms, may be specified and loaded
with data in the source program.

Common storage

A common area may be designated to facilitate communication
among subprograms.

Data definitions

Constants may be defined as octal, decimal, double-precision, integer or floating-point numbers; BCD words, BCD characters; or as
strings of bits.

Library access

Library routines may be called by reference to their entry points
or by inclusion of macros in the source program (data processing
macros, input/output macros).

Listing control

The format of the assembly listing may be controlled by pseudo
instructions.

Diagnostics

Diagnostics for source program errors are included with the output
listing.

Macro instructions

Macros may be defined in the source program or entered into the
library; the sequence of instructions will be inserted whenever the
macro name appears in the operation field.

The Assembler
The COMPASS assembly program converts programs written in COMPASS source
language into a form suitable for execution under the 3100, 3200, 3300 operating systems.
Source program input may be on punched cards or in the form of card images on magnetic
or paper tape. The output from the assembler includes an assembly listing and a relocatable binary object program on punched cards or magnetic tape.
8-2

Equipment Configuration
The assembly system, which is stored on the SCOPE library tape, is designed to operate
on a computer with a minimum of 8,192 words of storage. In addition to the SCOPE
library unit, the following input/output equipment is required:
Input unit: card reader, magnetic tape, or paper tape
Scratch unit: magnetic tape (may also be used for output)
Listable output unit: magnetic tape or printer
Object program output unit: magnetic tape or card punch

Program Structure
Source programs may be divided into subprograms which are assembled independently.
All location symbols except COMMON and DA T A symbols are local to the subprogram
in which they appear, unless they are declared as external symbols. Locations which will
be referenced by other subprograms are declared as entry points. For example, if subprogram IGOR references locations KIEV and MINSK in subprogram DEMETRI,
KIEV and MINSK must be declared external symbols in subprogram IGOR and entry
points in subprogram DEMETRI.
The links among subprograms are associated by the SCOPE loader. As each subprogram
is loaded, all external symbols and entry points are entered into a symbol table. When an
external symbol is found which matches an entry point already entered in the table, or
an entry point is found which matches an external symbol, linkage between the two
points is established.
If any external symbols are not matched with entry points after the last subprogram is

loaded, the library tape is searched for routines with the names of unmatched symbols.
If these routines are found, they are loaded and linked to the other subprograms. If un-

matched external symbols remain, the job is terminated and an error message written
by the system.

3100,3200,3300 DATA PROCESSING PACKAGE
The Data Processing Package is composed of Data Processing Routines and a General
Purpose Input/Output System.

Data Processing Routines
The Data Processing Routines, called macros, are used in COMPASS assembly language programs to do particular data handling jobs; included are the following:
TRANSMIT

Transmits any string of up to 4,095 characters from one place in
memory to another.

COMPARE

Compares fields located at A-address and B-address according to the
data processing collating sequence. Fields may contain 1 to 4,095 characters. The fields are treated as equal, regardless of their specified
lengths, by assuming blank fill to the right of the shorter field.

EDIT

Moves a numeric field to a receiving field with report editing.

MULTIPLY

Multiplies two BCD numbers and stores the result in a third.

DIVIDE

Divides one BCD number by another and stores the result in a third.
8-3

General Purpose Input/Output System ,"
The General Purpose Input/Output System is a series of library routines which provide
complete input/output control for data processing. These routines are used in COMPASS assembly programs, and they simplify programming while offering versatile data
handling and optimum usage of internal storage space and processing time. Complete,
partial or no buffering may be designated, depending upon the amount of storage the
programmer has available; multi-file reels or multi-reel files may be read or written;
fixed or variable length logical or physical records may be processed; and magnetic tape,
paper tape, cards or printer may be used for input/output units. Both labeled and unlabeled tapes may be handled. The input/output macros perform the following functions:
OPEN

Opens an input or output file.

READ

Reads one logical record into the record area or a specified area in memory.

WRITE

Writes one logical record from the record area or a specified area in memory.

CLOSE

Closes a reel or file.

In addition to the input/output operations, the programmer also describes the files to be
processed through use of macros.
FIELDESC

Defines logical records, buffers, logical units, recording density and rerun requirements.

LABELING

Describes file label and tape retention time (prevents accidental destruction of tapes).

VARIABLE

Indicates whether the size of a variable length record is determined by
a record mark or a key field.

STOP OPEN

Allows user to let files share the same areas in storage. Defines multifile reels.

The I/O System interprets each set of instructions, refers to the file description, and
then initiates the requested operation; it controls buffering, transmission errors, and
logical-physical record divisions.

3100,3200,3300 UTILITY
The Utility Package consists of a small control routine and a group of closed subroutines
which, operating under control of the SCOPE operating system, will perform such functions as tape handling, copying of records from unit to unit, and record comparison of
two files. The package is open-ended; subroutines may be added as desired.

3100, 3200, 3300 COBOL
COBOL is a programming system designed to facilitate the solution of business data
processing problems. To use COBOL, the programmer describes the problem in a language resembling English; the COBOL processor translates this source language input
into relocatable machine language for program execution.
THE COBOL language contains the elements of required COBOL as set forth by the
official government manual describing COBOL-61, plus many of the features defined as
elective COBOL.
A COBOL source program is specified in four divisions: IDENTIFICATION, ENVIRONMENT, DATA and PROCEDURE. The IDENTIFICATION division identifies
the name, author, date, and so forth of the program. The ENVIRONMENT division
defines the computer configuration required for both compilation and execution. The
DA T A division describes the format of the data files which the program is to process.
The PROCEDURE division contains a sequence of statements which describe the
processing to be performed.
8-4

The COBOL compiler is a three pass system. No object code is produced until the entire
source program has been thoroughly analyzed. Whenever possible, in-line coding is
produced. Depending on the needs of the program, the compiler provides an input/
output system which allows variable length records, up to two buffer areas per file, multifile reels, multi-reel files, rerun procedures, and so forth. In general, the features of the
COBOL input/output system correspond to those described for the Data Processing
Package.

3100, 3200, 3300 FORTRAN
The 3100,3200,3300 FORTRAN system incorporates a problem-oriented language that
facilitates simple algebraic solution of mathematical or scientific problems.
3100, 3200, 3300 FORTRAN programs are written as a sequence of statements, using
familiar arithmetic operations and English expressions. Large programs may be written
independently in sections, the sections tested, then executed together.
Statements are available to reserve areas of memory for variables and arrays. Strings of
values may be loaded with the program for reference during the program execution.
Equivalence statements allow the same areas of memory to be identified with different
variables and arrays during the execution of a program.
Type statements specify the mode in which values are to be stored. The possible types
include: REAL, INTEGER, and CHARACTER. The programmer may also declare a
special mode, type OTHER, to handle information which does not conveniently conform to the standard modes.
Arithmetic expressions are indicated by arithmetic sign and algebraic names. For example, A+B-C means add A to B and subtract C. Logical and relational operators are
available for use in expressions which may be true or false.
Statements are usually executed in sequenee. However, control statements may be
used to transfer to another part of the program. (The transfer may be specified as dependent on a test indicated by an expression in the transfer statement.)
Sets of statements which are to be executed several times with minor changes or increments may be written once with a statement to indicate how many times they are to be
repeated, and if they are to be changed each time.
Input/output operations provide a means to read information into the machine from
various sources and to record results on a selected output device. If buffered input/output operation is specified, uther operations may continue while information is read in
or out.
Facilities are also available to transfer a number of characters from one area of memory
to another, and to test machine conditions through calls to 3100, 3200, 3300 FORTRAN
library functions.
The 3100,3200,3300 FORTRAN compiler produces machine language programs which
may be executed immediately or stored for execution at a later date.

GENERALIZED SORT/MERGE PROGRAM
The GENERALIZED SORTIMERGE PROGRAM organizes data on magnetic tape
into one continuous predetermined order. SORTIMERGE operates under the SCOPE
operating system. Control cards read from the standard input unit contain file descriptions and SORTIMERGE specifications.
8-5

SORT/MERGE orders fixed or variable length tape records, blocked or unblocked,
written in either BCD or binary mode, according to a specified collating sequence. BCD
and binary collating sequences are provided within SORT/MERGE, or the user may
specify his own. The resultant output file may be merged with other presorted files in
a final merge pass, or, if a number of presorted files exist, the merge phase only can be
performed.
The SORT/MERGE program can transfer instruction execution to the user's prepared
subroutines which in turn perform the following typical functions. Other subroutines
not shown on this list may also be used:
• Edit acceptable records
• Reject records
It
Check nonstandard labels
• Modify nonstandard labels
• Generate messages for the operator
til Write secondary output file (edit sorted records)
• Prepare summary file (summarize sorted records)
• Terminate the sort process
The SORT/MERGE checks standard header and trailer labels and provides rerun
dumps. The SORT/MERGE contains an internal sort phase and a merge phase. The
sort uses the tournament replacement technique which makes maximum use of available core storage and takes advantage of existing bias in the data. The method of merging, which is selected by the user, can be normal balanced or polyphase with either
forward or backward reading.

3100, 3200, 3300 BASIC SYSTEM
Included in the 3100, 3200, 3300 BASIC system are:
• BASIC Assembler
• BASIC FORTRAN II
• BASIC Utility

BASIC Assembler
The BASIC Assembler language forms a subset of the 3100, 3200, 3300 COMPASS
language. Although designed primarily for use on a 4K configuration, it can readily be
used on larger systems. Object programs produced by the BASIC Assembler are loaded
by the self-contained loader or can be loaded by SCOPE. Source language programs
must be prepared as complete entities if they are to be loaded by the internal loader. As
a result, facilities for referencing external storage areas (COMMON, DATA) and external program elements (ENTRY, EXT. Macros) are not used in BASIC Assembler
language, nor are a few of the more complex pseudo instructions (VFD, IF). All other
features of the language are similar: operating codes, addressing, data definitions, listing
control, etc.
To assemble a BASIC Assembler program, the following configuration is required:
• Minimum of 4K words of storage
• Input unit: card reader, magnetic tape or paper tape (used for source language
input, library, and BASIC Assembler)
• Listable output unit: printer, magnetic tape, paper tape, typewriter
• Object program output unit: card punch, magnetic tape, paper tape, typewriter (All output may be written on one tape unit if desired.)
8-6

BASIC FORTRAN Ii
BASIC FORTRAN II is a problem-oriented language that performs familiar mathematical operations in arithmetic expressions and replacement statements. The source
language provides substantial power and flexibility through a variety of statements.
BASIC FORTRAN II is compatible with other FORTRAN II systems.

BASIC Utility
This package is similar to the 3100, 3200, 3300 Utility but incorporates its own loader
and input/output control routine.

CODING PROCEDURES
COMP ASS subprograms are written on standard coding sheets. A subprogram consists
of symbolic or octal machine instructions and pseudo instructions. Symbolic machine
instructions are alphabetic mnemonics for each of the machine instructions. Pseudo
instructions are COMPASS instructions used for the following operations:
• Subprogram identification and linkage
«I Data definition (constants conversion)
• Data storage
• System calls
• Assembler control
• Output listing control
• Macro definition

INSTRUCTION FORMAT
A COMPASS instruction may contain location, operation code, address, comment, and
identification fields.

location Field
A symbol in the location field (LOCN) is placed in columns 1-8. A symbol identifies the
address of an instruction or data item.
Location field symbols may be blank or consist of one to eight alphabetic or numeric
characters; the first character must be alphabetic. Embedded blanks are illegal in location symbols. The following are examples of location symbols:
A
H3
ABCDEFGH
P1234567

A single

* in column 1 of the location field signifies a line of comments.

Operation Code Field
The operation code field (OP) consists of any of the mnemonic or octal instruction codes
with modifiers, or any macro or pseudo instructions. The field begins in column 10 and
ends at the first blank column. If a modifier is used, a comma must separate the operation code from the modifier; no blank columns may intervene. A blank operation field
or a blank in column 10 results in a machine word with zeros in the operation field.
8-7

Address field
The address field begins before column Lll and after the blank which terminates the
operation field, and ends at the first blank column. It is composed of one or more subfields, depending upon the instruction. Subfields, which are separated by commas on
the coding form, specify the following quantities:
m or n
r or s
y

z
b or i
c
v

ch
x

word address
character address
operand (15-bit)
operand (17 -bit)
index register or interval quantity
character
register file location
channel
function code or comparison mask
number of characters in a block

The interpretations of the address subfields for each set of instructions are described in
Table 8-l.
An m,n,r ,s,y or z subfield may contain:
III A location symbol
III The symbol ** which causes eaeh bit in the subfield to be set to one
III The symbol * which causes the assembler to insert the relocatable address of
that instruction in the address field
III An integer constant
• An arithmetic expression
III A literal
TABLE 8-1. INSTRUCTION INTERPRETATIONS
INSTRUCTION OPERATION CODES
Subfields
00-70
m, n

F
I
E

71 Search

72 Move

73-77 1/0

word
address

-

-

b

index register

-

-

-

y or z

operand

-

-

-

-

-

c
r

L
D
s

character
address

-

character

first word
address, last
word address

address of first
character

first character
address of
source field

first
character
address

address of last
character ± 1

first character
address of
receiving field

last
character
address ± 1

ch

-

-

-

channel

x

-

-

-

1/0 or interrupt code

-

-

-

field length

i

I

interval quantity
-

8-8

-

+1

b SUBFIELD-The index field (b) specifies an index register 1-3, or a symbol or expression
which results in one of these registers. Some instructions require a particular index register. If the b subfield is used with the octal operation codes, 0-7 may be tlsed.

c SUBFIELD-The character field may contain any octal or decimal number, expression,
or a symbol which is equivalent to a 6-bit binary number. Octal numbers must be suffixed with the letter B.
ch SUBFIELD-The channel field may contain one digit to designate an input/output
channel, or a symbol equated to one of these digits, or an expression resulting in one
of the digits.

x SUBFIELD-The code field may, contain any of the interrupt or input/output codes or
comparison mask. Decimal numbers, octal numbers suffixed with the letter B, symbols
or expressions resulting in constants may be used.
v SUBFIELD-The register file sub field specifies a location which may be 008-778. Any
legal coding which results in a value 008-778 may be used.
i SUBFIELD-In the MEQ and MTH instructions, this subfield specifies a decrement
interval quantity of 1-8.

I SUBFIELD-In the MOVE instruction, this sub field specifies the number of characters
(1 to 128) to be moved.

Comments Field
Comments may be included with any instructions. A blank column must separate them
from the last character in the address field, and they may extend to column 72. Comments have no effect upon compilation but are included on the assembly listing.

Identification Field
Columns 73-80 may be used for sequence numbers or for program identification. This
field has no effect upon assembly.

PSEU DO-INSTRUCTIONS
Monitor Control
The following pseudo instructions provide communication between COMPASS subprograms and the monitor. Some are required in every subprogram; others are optional.
Unless otherwise noted, each instruction may have a location field and an address field.
IDENT m - appears at the beginning of every COMPASS subprogram. The address field
contains the name of the subprogram, which may be a maximum of eight alphanumeric
characters, the first being alphabetic. A symbol in the location field is ignored and results in an error flag (L) on the listing.
EN D m - marks the end of every subprogram. When a program (consisting of one or more
subprograms) is assembled for execution, one of the subprogram END cards must contain a location symbol in the address field to indicate the first instruction to be executed
in the program. Only one END card can contain an address field symbol. A term in the
location field is ignored.
FINis-terminates an assembly operation. It is a signal to the assembler that no more
programs are to be assembled. The FINIS card is placed after the last END card of the
last subprogram in the source program.
8-9

Symbol Assignments
The pseudo instructions, EQU; EQU, C; ENTRY; and EXT define symbols as equal to
other symbols or values, or identify symbols used to communicate with subprograms.
Linkage between symbols in separate subprograms is provided by the monitor system.
These pseudo instructions may appear anywhere between an IDENT and an END
pseudo instruction.
EOU m - assigns the result of the expression in the address field to the symbol in the
location field. The result is a 15-bit address.

The following forms are allowed:
symbol EQU symbol
symbol EQU constant (octal or decimal)
symbol EQU expression (address arithmetic)

Example:

OUT EQU JUMP+2
If JUMP is assembled to address 00100, OUT will be assigned the value 00102.
Numerical constants must follow the rules for symbolic instructions. Address arithmetic
is permitted. A location field symbol may be equated to a decimal or octal constant.

EOU, C m -

is similar to EQU, except that the result is a 17-bit address.

ENTRY m - defines location symbols which are referenced in other subprograms. These
symbols, called entry points, must be placed in the address field of an ENTRY pseudo
instruction. Any number oflocations may be declared as entry points in the same ENTRY
instruction. If two or more names appear in the address field, they must be separated
by commas. No spaces (blanks) can appear within a string of symbols. The address field
of the ENTRY pseudo instruction may be extended to column 72 and the location field
must be blank. Only word-location symbols (15-bits) may be used.

Example:

ENTRY SYM1,SYM2,SYM3
SYM1, SYM2, SYM3 can now be referenced by other subprograms.

EXT m - Symbols used by a subprogram which are defined in another subprogram are
declared as external symbols by placing them in the address field of an EXT pseudo
instruction. Only word-location symbols (15-bit) may be used. For example, to use the
external symbols SYM1, SYM2, SYM3 in subprogram A, the following pseudo instruction would be written in subprogram A:
EXT SYM1,SYM2,SYM3

These symbols must be declared as ENTRY points in some other subprogram or subprograms which are loaded for execution with subprogram A. The address field may be
extended to column 72; symbols are separated by commas. No spaces (blanks) can appear
in a string of symbols. The location field of an EXT must be blank.
Address arithmetic cannot be performed on external symbols.
8-10

Example:

FFI

IDENT
ENTRY
EXT
SJl

CAIRO
DEED, FFI
ABE, DAVID

**

e

BEN

EQU

HAKIM

e

DEED

LDA

ABE

III

RTJ

DAVID

at

e

END
END
FINIS

FFI

listing Control
The pseudo instructions which provide listing control for assembly listings are shown
below. These instructions do not appear on the assembly listing and may be placed anywhere in a program.
controls line spacing on an assembly listing. A decimal constant in the address
field designates the number of spaces to be skipped before printing the next line. If the
number of spaces to be skipped is greater than the number of lines remaining to be
printed on a page, the line printer skips to the top of the next page. A symbol in the
location field is ignored.
SPACE -

EJ ECT - causes the line printer to skip to the top of the next page when the assembled
program is listed. A symbol in the location field is ignored.

REM - is used to insert program comments in an assembly listing. The address field can
be extended to column 72. Any standard key punch character can be used in the comments. If the comments are to be written on more than one line, successive REM pseudo
instructions must be used. A symbol in the location field is ignored.
NOLIST - causes the assembler to discontinue writing a listing of the program, starting
with this instruction.

LIST - causes the assembler to resume listing the program. This instruction is used after
a NOLIST instruction; it is not necessary to use it to obtain a complete listing of a program.

8-11

Macro Instructions
MACRO - defines the beginning of a sequence of instructions that are inserted by the
assembler in the source program whenever the location symbol of the MACRO instruction appears in an operation field. The end of the sequence of instruction is marked by
an ENDM pseudo instruction. For example, if the sequence
HOPE
MACRO
(PA, MA)
LDA
PA
INA
24B
STA
MA
ENDM
were defined and the following instructions appeared in the same program
STA
GARAGE
HOPE
(DW21, D6)
LDA
FARM
the assembled output would be
STA
GARAGE
LDA
DW21
INA
24B
STA
D6
LDA
FARM
ENDM - defines the end of a MACRO sequence.
L1BM - names library macros.
NAME (p1, ... ,pn) - is used to reference macros.

The parameters pI, ... , pn are used by the routine, aT!!. NAME is a macro name.

Data Storage Assignments
The following pseudo instructions reserve storage areas for blocks of data. BSS may be
used to reserve storage blocks within the subprogram in which it appears. If these storage areas are to be referenced by other subprograms, the name assigned to the block is
declared as an entry point in the program containing the block, and as an external
symbol in the program referencing the block. Only word location symbols may be used.
COMMON identifies storage areas to be referenced by more than one subprogram.
DA T A specifies special areas which may be preloaded with data; EXT and ENTRY are
not needed to reference COMMON or DATA areas. Address arithmetic may be used,
but all symbols must have been defined before the instruction is encountered.
reserves a storage area of length m in a subprogram on a common or data storage area. The address field may contain any expression which results in a constant. The
resultant constant specifies the number of words to be used. The address field of the
first word of the reserved area is assigned the location field term of the BSS instruction.
Other words or characters in the area may be referenced by addressing arithmetic or
by indexing.

BSS m -

BSS, C m - reserves a character storage area of length m in a subprogram. The address
field is similar to the address field of BSS pseudo instruction. However, the resultant
constant specifies the number of character positions to be reserved.

COMMON - assigns location terms following it to a common storage block until a DATA
or PRG pseudo instruction is encountered. EQU, EXT, ENTRY, 1FT, IFN, IFF, IFZ,
END, ORGR, BSS and BSS,C are the only pseudo instructions which may follow a
COMMON pseudo instruction.*
*Occurrence of any other machine or data definition command causes the command and its successors to
be assembled into the subprogram area.

8-12

A
B
C

MARKET
STREET
SINGER

IDENT
COMMON
BSS
BSS
BSS

END
IDENT
COMMON
BSS
BSS
BSS
END

BURKE

20
10
6

SPINOZA
5

13
4

Location and address fields of a COMMON pseudo instruction should be blank.
COMMON may not be preset with data.
During execution, one area in storage is assigned as COMMON. All COMMON may be
filled repeatedly during execution. A storage location assigned to the nth word in
COMMON in subprogram 1 is the same location assigned to the nth word in COMMON
in subprogram 2.
If the two subprograms in the above example were loaded together, the memory as-

signments would be:
Example:

Locations in
memory relative
to the beginning
of common

Name in
subprogram
BURKE

0-4

A

Name in subprogram
SPINOZA

:.A+4

MARKET

)0

MARKET+4

)oSTREET+12

5-17

A+5 ----+A+17

STREET

18-19

A+18~A+19

SINGER

)0

SINGER+1

20-21

B

)0

SINGER+2

)0

SINGER+3

22-29

B+2

)oB+9

30-35

C

)oC+5

B+1

PRG-terminates the definition of a COMMON or DATA area.
DATA-assigns all location symbols following it to a data block until a COMMON or
PRG pseudo instruction is encountered. Data described by OCT; BCD; BCD,C; DEC;
DECD and VFD pseudo instructions may be assembled into a DATA block. Areas may
be reserved within a DATA block by the BSS and BSS,C pseudo instructions. The
following is an example of a DATA pseudo instruction coded within a subprogram:

8-13

Example:
III
III
III

CONS

LDA
DATA
OCT
PRG
STA

APRESMOI
10, 11, 12, 13

*
LEDELUGE

A data area named CONS is reserved and the octal constants 10, 11, 12, and 13 are
loaded into the four words in this area. In the source program, STA LEDELUGE would
appear in the next location after LDA APRESMOI.

Constants
Octal, decimal, and BCD constants may be inserted in a COMPASS program by using
the pseudo instructions listed below. Location terms may be used and the address field
may extend to column 72, if necessary.
OCT ml,m2, ... ,mn- inserts octal constants into consecutive machine words. A location
term is optional; if present, it will be assigned to the first word. The address field consists of one or more consecutive subterms, separated by commas. Each subterm may
consist of a sign (+or - or none), followed by up to eight octal digits. Each constant is
assigned to a separate word. If a location term is present, it is assigned to the first word.
If less than eight digits are specified, the constant is right-justified in the word and
leading zeros are inserted.
DEC ml,m2, ... , mn- inserts 24-bit decimal integer constants in consecutive machine
words. The D and B scaling is identical to the DECD scaling, but only positive integer
values less than 233 may be used. If a location term is present, it is assigned to the first
constant.
DECO Ml,m2, ... ,mn-converts decimal constants to equivalent 48-bit binary values and
stores them in consecutive groups of two machine words. Each constant may be written
in either fixed or floating point format.

The decimal numbers to be converted are written in the address field of the DE CD
instruction as follows:

Floating Point Constant format consists of a signed or unsigned decimal integer of 14
digits. It is identified as a floating point constant by a decimal point which may appear
anywhere within the digital string. A decimal scale factor indicated by D ± d is permitted. The result after scaling must not exceed the capacity of the hardware (approximately 10±30B).
Fixed Point Constant format is similar to that of the DEC single precision constants.
Up to 14 decimal digits may be specified, expressing a value the magnitude of which is
less than 247. Decimal and binary (B ± b) scale factors may be used. Low order bits are
not lost; the signed 48-bit binary result is stored in two consecutive computer words.
No spaces may occur within a number, including its associated scale factors, since a space
indicates the end of the constant. Plus signs may be omitted. Any number of constants
may appear in a DE CD instruction. Successive constants are separated by commas.
8-14

Examples:
Comments

LOCN

Op

Address Field

CONST A

DECD

-12345.

FLOATING PT CONST

CONST B

DECD

+12345

FIXED PT CONST

CONST C

DECD

-12345.D+5

FLOATING PT CONST, DECSCALE

CONST D

DECD

12345D-3

FIXED PT CONST, DECSCALE

CONST E

DECD

+12345B+8

FIXED PT CONST, BINSCALE

BCD n,C1C2, ... , C4n - inserts binary-coded decimal characters into consecutive words. If
a location term is present, it is assigned to the first word. The address field consists of
a single digit n, which specifies the number of four-character words needed to store the
BCD constant, followed by a comma and the BCD characters. The next 4n character
positions after the comma are stored. Any character string which terminates before
column 73 may be used; n is restricted accordingly.

BCD,C n,C1C2" .. , Cn- places n characters in the next available n character positions
in memory. If the previous instruction were also a BCD,C instruction, the next character position is defined as the one which follows the last position used by the previous
instruction. If a location symbol is used, it is assigned to the first character position in
this field. If the previous instruction were not a BCD,C instruction, the next character
position would be the first character position (0) of the next available word. Any character string which terminates before column 73 may be used; n is restricted accordingly.

VFD mml/vl,m20dv2 ... ,mpnp/vp- assigns data in continuous strings of bits rather than in

word units. Octal numbers, character codes, program locations and arithmetic values
may be assigned consecutively in memory, regardless of word breaks. The address field
consists of one or more data fields.
In each data field m specifies the mode of the data, n the number of bits allotted, and v
the value. Four modes are allowed:

o
H

A

C

Octal number. If it is preceded by a mmus sign, the one's complement
form is stored.
Hollerith character code. The field length must be a multiple of six. Any
printable character may appear in the v field except blanks or commas.
Either a space or comma immediately succeeds the last character.
Arithmetic expression or decimal constant. The v field consists of an expression formed according to the rules for address field arithmetic, with the
following restrictions:
1. n must be :s; 24 and I v I :S;2 n -C 1 unless a relocatable expression is used, in
which case, n = 15.
2. When a relocatable expression is used, it must be placed in the correct
position in the address portion of a word to insure that it will be relocated
by the loader.
Character expression. The rules governing the A-field apply, except that
n = 17 for a relocatable expression.

The VFD address field is terminated by the first blank column.
8-15

Example:
VFD 012/-737.A211A-X+B.H24/+A3 .A15INAME
+2.H18/BQ.

A. X. and Bare nonrelocatable symbols. Four words
are generated. with the data placed as follows:
23
11
0
23
14
8
,'-;-0-4-0-'--:-1.'----[-A--=---'1
X+ BJ 1 2 0 2

I-

-737

Arithmetic

14

o
3

Space

1

0

1

A

Word 2
0

[Name +2]

1

+

Expression

Word
23 20

2 0

I

23
,

Word Address

1

17

2

2

!

B

Word 3

11
0

5

Q

j6

5
0

1

0

0
01

Space

Word 4

Additional Pseudo Instructions
Additional lines of coding may be generated by the following pseudo instructions:
IFZ m,n - n succeeding lines of coding are assembled if m is zero. The expression n must
result in a positive numerical integer, and m may be a symbol, an address arithmetic
symbol, or a literal. If m is non-zero, n succeeding lines of coding will be bypassed by
the assembler.
IFN m,n - n succeeding lines of coding will be assembled if m is non-zero; the expression
n must result in a positive numerical integer, and m may be a symbol, address arithmetic
symbol or literal. Ifm is zero, n succeeding lines of coding will be bypassed by the assembler.
The pseudo instructions, 1FT and IFN may be used within the range of a MACRO
definition only.
1FT m,p,n, - n succeeding lines of coding will be generated if character string m equals character string p. The expression n must result in a positive numerical integer, and m and
p may be a formal parameter or a literal. If m ,r. p, n succeeding lines of coding will be
bypassed.
IFF m,p,n-n succeeding lines of coding will be generated if m ,r. p. The expression n
must result in a positive integer, and m and p may be a formal parameter or a literal. If
m = p, n succeeding lines of coding will be bypassed.
ORGR m-the value in the address field will be assembled as the beginning location for
subsequent instructions. The value may be in program, data area or common area mode.
The occurrence of a mode change pseudo operation, COMMON, DATA or PRG, terminates ORGR and subsequent instructions are assembled in the new mode.

Nop-No operation. An ENI y, 0 instruction is inserted.
TITLE - the information beginning in the address field is printed at the head of each
page of the output listing which follows. The first page of listing may be titled by presenting the TITLE card immediately following the IDENT card.
8-16

ASSEMBLY LISTING FORMAT
An assembly listing contains the source program instructions and the corresponding
octal machine instructions. The addresses assigned to each subprogram are relative
addresses only. Absolute addresses are assigned when the program is loaded by the
monitor loader. All common blocks are assigned consecutively, starting at relative location 00000. Preceding the body of the subprogram are summaries of undefined symbols,
doubly defined symbols, external names, entry point names, subprogram length, common length and data length. References to external symbols are strung together by the
assembler. The monitor loader assigns the proper absolute addresses.
The address of each instruction word is the left-most field for each instruction in the
assembled listing. (Error codes appear to the left of this field.) External address field
symbols are indicated by an X immediately to the left of the octal address field of each
instruction. P indicates Program Relocatable, and C indicates Common. Subsequent
fields from left to right on the listing are an 8-digit location contents field, a 2-digit operation code, a I-digit b-subfield, a 5-digit address, and a I-digit character position. The
remaining fields correspond to those in the symbolic source program.

Listing format:
location

location
contents

op

b

addr

5 or 6

8

2

1

5

55300000
40003301
27000173
40003362
14600000
40003350
25003300
45003357
77300400
01005301
20003325
03105306
01005311
20003325
03105314
14600001
40003341

55
40
27
40
14
40
25
45
77
01
20
03
01
20
03
14
40

0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0

char
pos

source
line

80

digits

05264
05265
05266
05267
05270
05271
05272
05273
05274
05275
05276
05277
05300
05301
05302
05303
05304

00000
P03301
P00173
P03362
00000
P03350
P03300
P03357
00400
P05301
P03325
POS306
P053ll
P033:25
P05314
00001
P03341

:3

0
0
0

:2
0
0
0

3
0

EAQ
STA
LOL
STA
ENA
STA
LOAQ
STAQ

INS

:2

UJP
LOA
AZJ,NE
UJP
LOA
AZJ,NE
ENA

0

STA

0

1
0
0

1

8-17

HOLDA8
CONTABLE"'4
HOLOAS+1
0
SIMA
TEMPo
HOLDADST
400B
*. . 4
EXPFlTFG
AD5BR5A"'3
A05BRSA
EXPFLTFG
ADSBR5B
01
HOLDSH

ERROR CODES
The following error codes may appear as the left-most field on an assembled listing. If
multiple errors are detected, multiple error codes are produced.
Code
A
D

F

o
U

C
L

M

T

Illegal character or expression in the address field.
Same symbol used in more than one location field term. Only the first symbol is recognized; the remainder are ignored. A list of doubly defined symbols appears on the assembled listing.
Symbol table is full. No more location field symbols will be recognized.
Also designates overflow of MACRO parameter table.
Illegal operation code. Zeros are substituted for the operation code.
Undefined symbol. A list of undefined symbols will appear on the output
listing.
An attempt was made to preset COMMON. The instructions are processed
as if PRG was encountered.
A symbol appears in the location field when not permitted, a symbol is
missing in the location field when one is required, or an illegal location
symbol appears.
A modifier appears in the location field when not permitted, a modifier is
missing in the operation field when one is required, or an illegal modifier
appears in the operation field.
A character address symbol was used in an address subfield requiring a
word symbol; significant bits are lost.

TABLE 8-2. COMPASS CODING FORM DESCRIPTION
FiElD

COLUMNS

Location

Use columns 1-8. Column 9 is always blank.

Operation

Begins in column 10 and continues until the
first blank column.

Address

Address may begin after the column terminating the operation field; however. it must begin
before column 41. The address field terminates
when the first blank column or column 73 is
reached.

Comments or Remarks

Comments or remarks are written between the
end of the address field and column 73.

Identification or
Sequence Number

Columns 73-80 are treated as comment by
COMPASS.

8-18

COMPASS SYSTEM CODING FORM
'"

OPERAIION,MOOIFIERS

LOCH
' ••••• , .

I

CORPORATl0N

DATE
IDENT

COMMENTS

ADDRESS FIELD

I

""'II'I~~""'"~~I"II"""""I"~.,n"'

NAME
PAGE

: 'CONTROl DATA

PROGRAM
ROUTINE
••• u" •• " ••• ,., ••

« ••• I

•• ".I' •• '"'." ••••••••••••• , Q

• • • • • • " . ' " •• ~""'."., • • • • , • • • • •

I

I
,

I

,

•••••

I

Ie "

"

"

, . . . II "

"

I

I. . . . "' un . . . . . II or II . . 'D" . . . . . . II II .. ,. n

••• , . . . , . . . . . . . r

II"'."

OJ II 1411" or

'"11'. II

OJ

u . . . . II It . . . .

10" ""

H n

11 n

1I .. I.

Figure 8-1. COMPASS Coding Form

FO::R.'I'::R.~:N"

PROGRAM
ROUTI

SJ~~"~

~ NAM~R
DATE

FORTRAN

~':c::.

0

I '

PAGE

STATE MEN"

~~;HA

I

~. ~~:HA

Z

OF
SERIAL
NUMBER

.."',."."

, ,

,

Figure 8-2. FORTRAN Coding Form

8-19

,

Appendix A
CONTROL DATA 3100, 3200, 3300 Computer Systems Character Set

Internal
BCD
Codes

External
BCD
Codes

00

12

01

Console
Typewrit,er
Characters
(Uses Internal
BCD Only)

Magnetic
Tape Unit
Characters

Punched
Card
Codes

o (zero)

o

0

01

1

1

1

02

02

2

2

2

03

03

3

3

3

04

04

4

4

4

05

05

5

5

5

06

06

6

6

6

07

07

7

7

7

10

10

8

8

8

11

11

9

9

9

12

(illegal)

±

---

2,8

13

13

=

#

3,8

14

14

"

@

4,8

15

15

---

5,8

16

16

- --

6,8

17

17

?

(file mark)

7,8

20

60

+

&

12

21

61

A

A

12, 1

22

62

B

B

12,2

23

63

C

C

12,3

24

64

D

D

12.4

25

65

E

E

.12,5

26

66

F

F

12,6

27

67

G

G

12,7

30

70

H

H

12,8

31

71

I

I

12,9

32

72

(Shift to
lower case)

+0

12,0

33

73

34

74

)

0

12,4,8

35

75

I

12,5,8

36

76

@

---

12,6,8

37

77

!

---

12,7,8

(zero)

12,3,8

(Cant.)

A-I

--

Console
Typewriter
Characters
(Uses Internal
BCD Only)

Magnetic
Tape Unit
Characters

Punched
Card
Codes

Internal
BCD
Codes

External
BCD
Codes

40

40

41

41

J

J

11. 1

42

42

K

K

11.2

43

43

L

L

11,3

44

44

M

M

11.4

45

45

N

N

11.5

46

46

0

0

11.6

47

47

P

P

11,7

50

50

Q

Q

11,8

51

51

R

R

11,9

52

52

o (degree)

-0

11.0

53

53

$

$

11. 3, 8

54

54

*

*

11. 4, 8

55

55

#

---

11. 5, 8

56

56

%

---

11. 6, 8

57

57

(Shift to
upper case)

---

11.7,8

60

20

(space)

(blank)

(blank)

61

21

/

/

0,1

62

22

S

S

0,2

63

23

T

T

0,3

64

24

U

U

0.4

65

25

V

V

0,5

66

26

W

W

0,6

67

27

X

X

0,7

70

30

Y

Y

0,8

71

31

Z

Z

0,9

72

32

&

- - -

0,2,8

73

33

, (comma)

, (comma)

0,3,8

74

34

(

%

0,4,8

75

35

(tab)

---

0,5,8

76

36

(backspace)

- --

0,6,8

77

37

(carriage return)

---

0,7,8

-

(minus)

A-2

-

(minus)

11

Appendix B
Supplementary Arithmetic Information

Appendix B

SUPPLEMENTARY ARITHMETIC INfORMATION
NUMBER SYSTEMS
Any number system may be defined by two characteristics, the radix or base and the
modulus. The radix or base is the number of unique symbols used in the system. The
decimal system has ten symbols, 0 through 9. Modulus is the number of unique quantities or magnitudes a given system can distinguish. For example, an adding machine
with ten digits, or counting wheels, would have a modulus of 1010-1. The decimal system
has no modulus because an infinite number of digits can be written, but the adding
machine has a modulus because the highest number which can be expressed is 9,999,999,999.
Most number systems are positional; that is, the relative position of a symbol determines
its magnitude. In the decimal system, a 5 in the units column represents a different quantity than a 5 in the tens column. Quantities equal to or greater than 1 may be represented
by using the 10 symbols as coefficients of ascending powers of the base 10. The number 98410 is:
9 x 1 0 2 = 9 x 1 00 = 900
+8 x 10 1 = 8 x 10 = 80
+4 x 100 = 4 x
4
98410

Quantities less than 1 may be represented by using the 10 symbols as coefficients of
ascending negative powers of the base 10. The number 0.59310 may be represented as:
1
5 x 10- = 5 )[ .1
=.5
2
+9xl0- =9x.Ol = .09
-3
+3 x 10 = 3 x .001 = .003
0.59310

BINARY NUMBER SYSTEM
Computers operate faster and more efficiently by using the binary number system. There
are only two symbols, 0 and 1; the base = 2. The following shows the positional value:
24
16

Binary point

The binary number 0 1 1 0 1 0 represents:
Ox2 5 = Ox32
+ 1 X 24 = 1 x 16
+1 X 2 3 = 1 x 8
+Ox2 2 = Ox4
+1x21=lx2
+0 x 2 0 = 0 x 1

B-1

= 0
= 16
8

=
=
=

0
2
0
2610

Fractional binary numbers may be represented by using the symbols as coefficients
of ascending negative powers of the base.

Binary Point

2 -1

2 -2

2 -3

Y2

1.4

Va

2

2 -5 ...
1/32

-4

1/16

The binary number 0.10 110 may be represented as:

1 x2 -1 = 1 x1/2
+0 x 2 -2 = 0 x 114
+1x2 -3=1x1/8
+1 x2 -4 = 1 x 1116

= 1/2
= 0
=1/8
= 1/16 =

8/16
0
2/16
1Ll6
11/1610

OCTAL NUMBER SYSTEM
The octal number system uses eight discrete symbols, 0 through 7. With base eight the
positional value is:

85
32.768

84

83

4.096

512

82
64

81
8

80
1

The octal number 5138 represents:

5 X 8 2 = 5 x 64 = 320
+1x8 1 =1x8
8
+3x8° = 3x 1
__
3_
33110

Fractional octal numbers may be represented by using the symbols as coefficients of ascending negative powers of the base.
8

-1

8

1/8

-2

1/64

8 -3
1/512

8 -4
1/4096

The octal number 0.4520 represents:

4x8 -1=4x1/8 =4/8 =256/512
+5x8 -2=5x1/64 =5/64 = 40/512
+2x8 -3=2x1/512=2/512= 2/512
298/512 = 149125610

B-2

ARITHMETIC
ADDITION AND SUBTRACTION
Binary numbers are added according to the following rules:
0+0=0
0+1=1
1+0=1
1 + 1 = 0 with a carry of 1

The addition of two binary numbers proceeds as follows (the decimal equivalents verify
the result):
Augend
Addend

0111
+0100

Partial Sum
Carry

0011
_1_

Sum

1011

(7)
+(4)

(11 )

Subtraction may be performed as an addition:
8 (minuend)

8 (minuend)
-6 (subtrahend)

or

±±- (1 O's complement of subtrahend)
2 (difference - omit carry)

2 (difference)

The second method shows subtraction performed by the "adding the complement"
method. The omission of the carry in the illustration has the effect of reducing the result
by 10.

One's Complement
The computer performs all arithmetic and counting operations in the binary one's complement mode. In this system, positive numbers are represented by the binary equivalent
and negative numbers in one's complement notation.
The one's complement representation of a number is found by subtracting each bit of
the number from 1. For example:
1111
-1001
0110

9
(one's complement of 9)

This representation of a negative binary quantity may also be obtained by substituting
"l's" for "D's" and "D's" for "l's".

.

The value zero can be represented in one's complement notation in two ways:
0000--+002
1111 --+ 112

Positive (+) Zero
Negative (-) Zero

The rules regarding the use of these two forms for computation are:
•

Both positive and negative zero are acceptable as arithmetic operands.

•

If the result of an arithmetic operation is zero, it will be expressed as positive zero.

One's complement notation applies not only to arithmetic operations performed in A,
but also to the modification of execution addresses in the F register. During address
modification, the modified address will equal '777778 only if the unmodified execution
address equals 777778 and b = 0 or (B b ) = 777778.

B-3

MULTIPLICATION
Binary multiplication proceeds according to the following rules:
OxO =
Ox 1 =
1 xO =
1x1 =

0
0

0
1

Multiplication is always performed on a bit-by-bit basis. Carries do not result from multiplication, since the product of any two bits is always a single bit.
Decimal example:
multiplicand
multiplier

14
12

partial products

I

28

\~ (shifted one place left)
16810

product

The shift of the second partial product is a shorthand method for writing the true value 140.
Binary example:

multiplicand
multiplier

P"';"

(14)
(12)

pmd,," {

product

( 16810)

1110
1100
0000
0000
1110
1110

shift to place
digits in proper
columns

101010002

The computer determines the running subtotal of the partial products. Rather than
shifting the partial product to the left to position it correctly, the computer right shifts
the summation of the partial products one place before the next addition is made. When
the multiplier bit is "I", the multiplicand is added to the running total and the results
are shifted to the right one place. When the multiplier bit is "0", the partial product subtotal is shifted to the right (in effect, the quantity has been multiplied by 102).

DIVISION
The following examples shows the familiar method of decimal division:
,--:-1-=-4_ quotient
divisor

131185
13
55

dividend
partial dividend

~
3
remainder

B-4

The computer performs divi:;;ion in a similar manner (using binary equivalents):

1110
divisor

1 1 01 11 011 1 001
1101

quotient (14)
dividend

10100
1101
1110
1101
11

partial dividends
remainder (3)

However, instead of shifting the divisor right to position it for subtraction from the partial
dividend (shown above), the computer shifts the partial dividend left, accomplishing the
same purpose and permitting the arithmetic to be performed in the A register. The computer counts the number of shifts, which is the number of quotient digits to be obtained;
after the correct number of counts, the routine is terminated.

CONVERSIONS
The procedures that may be used when converting from one number system to another
are power addition, radix arithmetic, and substitution.

TABLE B-1. RECOMMENDED CONVERSION PROCEDURES
(INTEGER AND FRACTIONAL)
Conversion

Recommended Method

Binary to Decimal
Octal to Decimal
Decimal to Binary
Decimal to Octal
Binary to Octal
Octal to Binary

Power Addition
Power Addition
Radix Arithmetic
Radix Arithmetic
Substitution
Substitution

GENERAL RULES
ri> r f:
ri < rf :

use Radix Arithmetic, Substitution
use Power Addition, Substitution

ri =

rf =

Radix of initial system
Radix of final system

B-5

POWER ADDITION
To convert a number from rj to rr (rj < rr) write the number in its expanded rj polynomial
form and simplify using rr arithmetic.

EXAMPLE 1
Binary to Decimal (Integer)
010 1112=1 (24) +0(2 3 ) + 1 (22) + 1 (21) + 1 (20)
=1 (16) +0(8) +1(4) +1(2) +1(1)
=16
+0
+4
+2
+1
=2310

EXAMPLE 2
Binary to Decimal (Fractional)
.01012 =(2 ·1 )+1 (2. 2 ) +0(2 -3) + 1(2 -4)
=0
+1/4
=5/1610

EXAMPLE 3

+0

+1116

Octal to Decimal (Integer)

3248=3(8 2 ) +2(8 1) +4(8 0)
=3(64)+2(8) +4(1)
=192 +16 +4
=21210

EXAMPLE 4
Octal to Decimal (Fractional)
.448 =4(8 -1 )+4(8. 2 )
=4/8
+4/64
=36/6410

RADIX ARITHMETIC
To convert a whole number from rj to rr (rj > rr):
1.

Divide rj by rr using rj arithmetic

2. The remainder is the lowest order bit in the new expression
3. Divide the integral part from the previous operation by rr
4. The remainder is the next higher order bit in the new expression

5. The process continues until the division produces only a remainder which will

be the highest order bit in the rf expression.
To convert a fractional number from rj to rr:
1.

Multiply rj by rr using rj arithmetic

2. The integral part is the highest order bit in the new expression
3. Multiply the fractional part from the previous operation by rr
4.

The integral part is the next lower order bit in the new expression

5. The process continues until sufficient precision is achieved or the process

terminates.
B-6

Decimal to Binary (Integer)

EXAM?LE 1

45
22
11
5
2
1

--;-

22
11
5
2
1
0

2
2
2
2
2
2

Thus: 4510 =

Thus: .2510 = .0102

-7

8

1
0

0
101101

o
o
.010

Decimal to Octal (Integer)

EXAMPLE 3

4

record
record
record
record
record
record

Decimal to Binary (Fractional)

0.5; record
1.0; record
0.0; record

273 -7 8
34 -7 8

1;
0;
1;
1;
0;
1;

1011012

EXAMPLE 2
.25 x 2
.5 x 2
.0 x 2

remainder
remainder
remainder
remainder
remainder
remainder

34 remainder 1; record
4 remainder 2; record
o remainder 4; record

1
2

_4_
421

Thus: 27310 =

4218

Decimal to Octal (Fractional)

EXAMPLE 4

.55 x 8 = 4.4; record
.4 x 8 = 3.2; record
.2 x 8 = 1.6; record

4

3

.431 ...
.431 ... 8

Thus: .5510

SUBSTITUTION
This method permits easy conversion between octal and binary representations of a
number. If a number in binary notation is partitioned into triplets to the right and left
of the binary point, each triplet may be converted into an octal digit. Similarly, each
octal digit may be converted into a triplet of binary digits.

EXAMPLE 1

Binary to Octal

Binary =
Octal =

EXAMPLE 2

110 000
6 0

001 010
2

Octal to Binary

Octal =
6
5
0
Binary = 110 101 000

B-7

2
7
2
010 010 111

SUPPLEMENTARY INSTRUCTION INFORMATION
FIXED POINT ARITHMETIC

24-Bit Precision
Any number may be expressed in the form kB n , where k is a coefficient, B a base number, and the exponent n the power to which the base number is raised.
A fixed point number assumes:
1. The exponent n = 0 for all fixed point numbers.
2. The coefficient, k, occupies the same bit positions within the computer word
for all fixed point numbers.
3. The radix (binary) point remains fixed with respect to one end of the expression.
A fixed point number consists of a sign bit and coefficient as shown below. The upper
bit of any fixed point number designates the sign of the coefficient (23 lower order bits).
If the bit is "1", the quantity is negative since negative numbers are represented in
one's complement notation; a "0" sign bit signifies a positive coefficient.
23
SIGN
BIT

00

22
COEFFICIENT

The radix (binary) point is assumed to be immediately to the right of the lowest order
bit (00).
In many instances, the values in a fixed point operation may be too large or too small
to be expressed by the computer. The programmer must position the numbers within
the word format so they can be represented with sufficient precision. The process, called
scaling, consists of shifting the values a predetermined number of places. The numbers
must be positioned far enough to the right in the register to prevent overflow but far
enough to the left to maintain precision. The scale factor (number of places shifted) is
expressed as the power of the base. For example, 5,100,00010 may be expressed as 0.51 x
107 ,0.051 X 108 , 0.0051 X 109 , etc. The scale factors are 7, S, and 9.
Since only the coefficient is used by the computer, the programmer is responsible for
remembering the scale factors. Also, the possibility of an overflow during intermediate
operations must be considered. For example, if two fractions in fixed point format are
multiplied, the result is a number < 1. If the same two fractions are added, subtracted,
or divided, the result may be greater than one and an overflow will occur. Similarly, if
two integers are multiplied, divided, subtracted or added, the likelihood of an overflow
is apparent.

48-Bit Precision (Double Precision)
The 4S-bit Add, Subtract, Multiply and Divide instructions enable operands to be
processed. The Multiply and Divide instructions utilize the E register and therefore are
executed as trapped instructions if the applicable arithmetic option is not present in a
system. Figure 7-4 in the Instruction Section illustrates the operand formats in 4S-bit
precision Multiply and Divide instructions.
B-S

FlOAlriNG POINT ARITHMETIC
As an alternative to fixed point operation, a method involving a variable radix point,
called floating point, is used. This significantly reduces the amount of bookkeeping required on the part of the programmer.
By shifting the radix point and increasing or decreasing the value of the exponent, widely
varying quantities which do not exceed the capacity of the machine may be handled.
Floating point numbers within the computer are represented in a form similar to that
used in scientific notation, that is, a coefficient or fraction multiplied by a number raised
to a power. Since the computer uses only binary numbers, the numbers are multiplied
by powers of two.
F • 2E

where:

F = fraction
E=exponent

In floating point, different coefficients need not relate to the same power of the base as
they do in fixed point format. Therefore, the construction of a floating point number
includes not only the coefficient but also the exponent.
NOTE

Refer to Figure 7-5 in the Instruction Section for the operand format and bit functions for specific floating point instructions.

Coefficient
The coefficient consists of a 36-bit fraction in the 36 lower order positions of the floating
point word. The coefficient is a normalized fraction; it is equal to or greater than Y.! but
less than 1. The highest order bit position (47) is occupied by the sign bit of the coefficient. If the sign bit is a "0", the coefficient is positive; a "I" bit denotes a negative
fraction (negative fractions are represented in one's complement notation).

Exponent
The floating point exponent is expressed as an ll-bit quantity with a value ranging from
0000 to 37778. It is formed by adding a true positive exponent and a bias of20008 or a true
negative exponent and a bias of 17778. This results in a range of biased exponents as
shown below.
True Positive
Exponent

Biased
Exponent

True Negative
Exponent

2000
2001
2002

+0
+1
+2
--

--- -

-0
-1
-2
--

-+1776
+17778

---3776
37778

-1776
-17778

47

46

--

36 35

EXPONENT (INCLUDING BIAS)

Biased
Exponent

2000*
1776
1775
----------0001
00008
00

COEFFICIENT

The exponent is biased so that floating point operands can be compared with each other
in the normal fixed point mode.
*Minus zero is sensed as positive zero by the computer and is therefore biased by 20008 rather than 17778.

B-9

As an example, compare the unbiased exponents of +528 and +0.028 (Example 1).
Number =

EXAMPLE 1

o

0

a

Coefficient
Sign

000

+52
110

000

(36 bits)
Coefficient

Exponent

Number = +0.02

a

·111

Coefficient
Sign

011

111

(36 bits)
Coefficient

Exponent

In this case +0.02 appears to be larger than +52 because of the larger exponent. If,
however, both exponents are biased (Example 2), changing the sign of both exponents
makes +52 greater than +0.02.

EXAMPLE 2

Number = +528

a

a

Coefficient
Sign

000

000

110

Exponent

(36 bits)
Coefficient

Number = +0.028

a
Coefficient
Sign

a

111

111

Exponent

011

(36 bits)
Coefficient

When bias is used with the exponent, floating point operation is more versatile since
floating point operands can be compared with each other in the normal fixed point mode.
All floating point operations involve the A, Q, and E registers, plus two consecutive
storage locations M and M + 1. The A and Q registers are treated as one 48-bit register.
Indirect addressing and address modification are applicable to this whole group of instructions.

Operand Formats
The AQ register and the storage address contents have identical formats.
In both cases the maximum possible shift is 64 (778) bit positions. Since the coefficient
consists of only 36 bits at the start, any shift greater than 36 positions will, of course,
always result in an answer equal to the larger of the two original operands.

B-10

(47)
23

(46)
22

(36) (35)
12
11

(24)
00

(A) and (M)
Sign of
Coefficient

11-bit o;;;r:and
exponent including
bias

23
(0) and (M

+ 1)

Upper 1i'bits of
operand coefficient

00

I

I

Exponents
The 3100, 3200, 3300 Computers use an ll-bit exponent that is biased by 20008 for floating point operations. The effective modulus of the exponent is ± 17778 or ± 102310.

Exponent Equalization
During floating point addition and subtraction, the exponents involved are equalized
prior to the operation.
1. Addition - The coefficient of the algebraically smaller exponent is automatically shifted right in AQE until the exponents are equal. A maximum of 778
shifts may occur.
2. Subtraction - If AQ contains the algebraically smaller exponent, the coefficient
in AQ is shifted right in AQE until the exponents are equal. If (M) and (M + 1)
have the smaller exponent, the complement of the coefficient of (M) and (M + 1)
is shifted right in AQE until the exponents are equal or until a maximum of
778 shifts are performed.

Rounding
Rounding is an automatic floating point operation and is particularly necessary when
floating point arithmetic operations yield coefficient answers in excess of 36 bits.
Although standard floating point format requires only a 36-bit coefficient, portions of
the E register are used for extended coefficients. Refer to individual instruction descriptions for E register applications.
Rounding modifies the coefficient result of a floating point operation by adding or subtracting a "I" from the lowest bit position in (~ without regard to the biased exponent.
The coefficient ofthe answer in AQ passes through the adder with the rounding quantity
before normalization. The conditions for rounding are classified according to arithmetic
operation in Table B-2.
B-ll

TABLE B-2. ROUNDED CONDITIONS FOLLOWING ARITHMETIC OPERATION

Arithmetic
OPERATION

Bit 23 of the
A Register

I

Bit 47 of the E Register
or
(Ratio of Residue/Divisor
for Divide Only)

0*

,
,

0

0*
ADD
or
SUBTRACT

,*

0

,*

Applicable
Rounding

No
Add "'1"
Subtract "'"
No

Comments: Rounding occurs as a result of inequality between the sign bits
of AQ and E.

0

No

0

Add "'"
Subtract '" "

,
,

0

MULTIPLY

0

,
,

No

Comments: A floating point multiplication yields a 76 bit coefficient. Comparison between the sign bits of AQ and E indicates that the lower 36
bits are equal to or greater than 1;2 of the lowest order bit in AQ.

I

I

I
DIVIDE

0

:2: 1;2 (absolute)

0

S;

,
,

1;2 (absolute)

:2: 1;2 (absolute)
S;

1;2 (absolute)

I

Add "'"
No
Subtract "'"
No

Comments: Rounding occurs if the answer resulting from the final residue
division is equal to or greater than 1;2

*Condition of bit 23 of the A register immediately after equalization. (Refer to Exponent Equalization on preceeding
pagel.

Normalizing
Normalizing brings the above answer back to a fraction with a value between one-half
and one with the binary point to the left of the 36th bit of the coefficient. In other words,
the final normalized coefficient in AQ will range in value from 236 to 231-1 including sign.
Arithmetic control normalizes the answer by right or left shifting the coefficient the
necessary number of places and adjusting the exponent. It does not shift the residue
that is in E.

Faults
Three conditions are considered faults during the execution of floating point instructions:
Exponent overflow (> + 17778)
2. Exponent underflow « - 17778)
3. Division by zero, by too small a number, or by a number that is not in floating
point format.
1.

These faults have several things in common:
1. They can be sensed by the INS (77.3) instruction
2. Sensing automatically clears them
3. The program should sense for these faults only after the floating point instructions have had sufficient time to go to completion
4. They may be used to cause an interrupt.
B-12

FIXED POINT/FLOATING POINT CONVERSIONS

Fixed Point to Floating Point
1. Express the number in binary.
2. Normalize the number. A normalized number has the most significant 1 posi-

tioned immediately to the right of the binary point and is expressed in the
range liz .::; k < 1.
3. Inspect the sign of the true exponent. If the sign is positive add 20008 (bias)
to the true exponent of the normalized number. If the sign is negative, add the
bias 17778 to the true exponent of the normalized number. In either case, the
resulting exponent is the biased exponent.
4. Assemble the number in floating point.
5. Inspect the sign of the coefficient. If negative, complement the assembled
floating point number to obtain the true floating point representation of the
number. If the sign of the coefficient is positive, the assembled floating point
number is the true representation.

EXAMPLE 1

Convert +4.0 to floating point

1. The number is expressed in octal.
2. Normalize. 4.0 = 4.0 x 8 0 = 0.100 x 2 3
3. Since the sign of the true exponent is positive.
add 2000s (bias) to the true exponent. Biased
exponent = 2000 + 3.
4. Assemble number in floating point format.
Coefficient = 400 000 000 ODDs
Biased Exponent = 2003s
Assembled word = 2003 400 000 000 ODDs
5. Since the sign of the coefficient is positive, the
floating point representation of +4.0 is as
shown. If, however, the sign of the coefficient
were negative, it would be necessary to complement the entire floating point word.

EXAiVlPLE 2

Convert -4.0 to floating point

1. The number is expressed in octal.
2. Normalize. -4.0 = -4.0 x 8 0 = -0.100 x 2 3
3. Since the sign of the true exponent is positive,
add 2000s (bias) to the true exponent. Biased
exponent = 2000 + 3
4. Assemble number in floating point format.
Coefficient = 400000000 ODDs
Biased Exponent = 2003s
Assembled word = 2003400000 000 ODDs
5. Since the sign of the coefficient is negative,
the assembled floating point word must be
complemented. Therefore, the true floating
point representation for
-4.0 = 5774377 777 777 777s.

B-18

EXAMPLE 3

Convert 0.510 to floating point

1. Convert to octal. 0.510 = 0.48

2. Normalize. 0.4

= 0.4 x

80

= 0.100 x 2 0

3. Since the sign of the true exponent' is positive,
add 20008 (bias) to the true exponent. Biased
exponent = 2000 + O.
4. Assemble number in floating point format.
Coefficient = 400000000 0008
Biased Exponent = 20008
Assembled word = 2000 400 000 000 0008

5. Since the sign ofthe coefficient is positive, the
floating point representation of +0.510 is as
shown. If, however, the sign of the coefficient
were negative, it would be necessary to complement the entire floating point word: This
example is a special case of floating point
since the exponent of the normalized number
is 0 and could be represented as -0. The exponent would then be biased by 17778 instead
of 20008 because of the negative exponent.
The 3100 and 3200. however. recognize -0
as + 0 and bias the exponent by 20008.

EXAMPLE 4

Convert 0.048 to floating point

1. The number is expressed in octal.

2. Normalize. 0.04 = 0.04 x 8 0 = 0.4
0.100x2-3

X 8"1

3. Since the sign of the true exponent is negative, add 17778 (bias) to the true exponent.
Biased exponent = 17778 + (-3) = 17748
4. Assemble number in floating point format.
Coefficient = 400000 000 0008
Biased Exponent = 17748
Assembled word = 17744000000000008
5. Since the sign of the coefficient is positive. the
floating point representation of 0.048 is as
shown. If. however. the sign of the coefficient
were negative. it would be necessary to complement the entire floating point word.

B-14

Floating Point to Fixed Point Format
1. If the floating point number is negative, complement the entire floating point

2.
3.

4.

5.

word and record the fact that the quantity is negative. The exponent is now
in a true biased form.
If the biased exponent is equal to or greater than 20008, subtract 20008 to obtainthe true exponent; ifless than 20008, subtract 17778 to obtain true exponent.
Separate the coefficient and exponent. If the true exponent is negative, the
binary point should be moved to the left the number of bit positions indicated
by the true exponent. If the true exponent is positive, the binary point should
be moved to the right the number of bit positions indicated by the true exponent.
The coefficient has now been converted to fixed binary. The sign of the coefficient will be negative if the floating point number was complemented in step
one. (The sign bit must be extended if the quantity is placed in a register.)
Represent the fixed binary number in fixed octal notation.

EXAMPLE 1

Convert floating point number
2003 400 000 000 OOOs to
fixed octal

1. The floating point number is positive and remains uncomplemented.
2. The biased exponent> 2000a; therefore. subtract 2000a from the biased exponent to obtain the true exponent of the number. 2003 2000 = +3
3. Coefficient = 400 000 000 OOOs = .1002.
Move binary point to the right three places.
Coefficient = 100.02.
4. The sign of the coefficient is positive because
the floating point number was not complemented in step one.
5. Represent in fixed octal notation.
100.0 x 2 0 = 4.0 x 8 0 .

EXAMPLE 2

Convert floating point number
5774377 777 777 777s to fixed octal

1. The sign of the coefficient is negative; therefore. complement the floating point number.
Complement = 2003 400 000 000 OOOs
2. The biased exponent (in complemented form)
> 2000a; therefore, subtract 2000a from the
biased exponent to obtain the true exponent
ofthe number. 2003 - 2000 = +3
3. Coefficient = 4000 000 000 OOOs = 0.1002.
Move binary point to the right three places.
Coefficient = 100.02
4. The sign of the coefficient will be negative
because the floating point number was originally complemented.
5. Convert to fixed octal. -100.02 = -4.0a

B-15

EXAMPLE 3

Convert floating point number
1774 400 000 000 0008
to fixed octal

1. The floating point number is positive and
remains uncomplemented.
2. The biased exponent < 20008; therefore, subtract 17778 from the biased exponent to obtain the true exponent of the number. 1774817778 =-3
3. Coefficient = 400 000 000 0008 = .1002.
Move binary point to the left three places.
Coefficient = .0001002
4. The sign of the coefficient is positive because
the floating point number was not complemented in step one.
5. Represent in fixed octal notation .
.0001002 = .048

BINARY CODED DECIMAL (BCD]I ARITHMETIC
General
The Binary Coded Decimal (BCD) option expands the arithmetic capabilities of a 3100, 3200,
or 3300 Computer by providing the necessary logic for loading, storing, shifting, adding and
subtracting binary coded decimal characters. A standard 24-bit data word is comprised of
four 6-bit BCD characters. The general format for a BCD word and the bit function within a
typical character are illustrated in Figure B-l. Tables B-3 and B-4 define the significance of
binary data within a character.
Figure B-2 depicts the ED register and the other digits displayed on the 3200 Console.

23

18 17

o

12 11

I

06 05
2

00
3

~C'
.! ~~
~ haracter positions
BCD Character

Figura B-1. BCD Word and Character Format

B-16

TABLE B-3. BCD SIGN BIT POSITIONS
Relative Bit Positions
6
5

Sign of BCD
Character*

+
+
+

0
0
1
1

0
1
0
1

TABLE B-4. DECIMAL/BCD CHARACTER FORMAT
Decimal
Number**

BCD Character Relative Bit

4
0
1
2

3
4
5
6
7
8
9

0

0
0
0
0
0
0
0
1
1

Positions
3
2

1

0
0
0
0
1
1
1
1
0
0

0
1
0
1
0
1
0
1
0
1

0
0
1
1
0
0
1
1
0
0

L-l_5~I_l_4~I_l_3~1~2~1~1_1~1_0~_9~_8~I~ED~~LI_7-L_6-L1_5~1_4~_3~__2-L~__o~1
__
i_tL--_-_-_-_-~_-_-_--_BCD
character
t
Overflow
digit digits

r
1

L_ _ _ _ _ _ _ _ _ _ _ _ _ _ _

lL

Sign of ED register
L - - - - - - - - - - - - - - - - - - - M S D of second operand
L---_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Sign of second operand

Figure B-2. ED Register and Supplemental Digits

*The Lowest Significant Digit of a given BCD field contains the sign of the operand in relative bit positions
5 and 6. A fault is indicated ifrelative bits 5 and (3 in the remaining characters contain anything other than
zeroes; however, the current instruction will continue to be executed.
** A fault is also indicated if an illegal character is sensed in bits 1 through 4 (1010,1011,1100,1101,1110 or 1111).

B-17

Formats: These instructions handle 4-bit BCD characters rather than whole 24-bit
words. These characters are placed into the ED register and storage in.the following ways:
1) ED Register

52

51

~

Sign
of E

!

Overflow
character
position

00

'----------~y~----------~/
BCD Characters

The 53-bit ED register can hold 12 regular BCD characters plus one
overflow character.
2) Storage

23
(M) =

18 17

12 11

o

0605

2

I

00

3

Each 24-bit storage word may be divided into four character positions of 6 bits each.
The lower 4 bits of each position may hold any BCD character, 0-9; the upper 2 bits
are reserved for the sign designator, one per field. For each field the sign accompanies
the least significant character. 10xxxx specifies negative; any other combination, positive (refer to Table B-3). The upper 2 bits of all other characters in the field must equal
zero. The most significant character precedes the least significant character of a field
in storage.

Field Length: The field length is specified by the contents of the 4-bit D register. Any
number 1-12 (0001-1100) is legal.*
Illegal Characters: By definition, any BCD characters other than 0-9 are illegal. Characters are tested for legality during:
1. Loading into E (LDE), and
2. Addition (ADE) and subtraction (SBE). If the translation of the lower four
bits of a character exceeds 9, the value zero will be used for that character.
BCD Fault: The BCD fault will occur if:
1. A sign is present in any character position other than the least significant, or
2. An illegal character other than the lowest MB is sensed during the execution
of LDE, ADE, SBE
3. The contents of D exceed 12 (will set only during a SET instruction).
*Although a fault will occur, D may equal 13 for storing 13 characters. The following sequence should be followed in storing 13 characters: '.
1) Set D (BCD fault will occur)
2) Sense for BCD fault (this clears the BCD Fault indicator)
3) Execute STE instruction.
If the BCD fault is disregarded and there is an attempt to load, add, or subtract 13 characters, only the lower
12 characters will be used. No additional fault will occur.

B-18

BCD Instruction Example

70700011
64 0 00005

EXECUTED INSTRUCTIONS:

ADDRESSES:

CONTENTS OF ADDRESS
MSC

00001

)QJ

05

~

00002

@

@ &-- -~~:::::
cD) @)~

~2

00003

4

5

LSC

10 0 101
'-v-' '----.r-"

" ,,' 5

NOTE
Only the LSC is analyzed for the sign of the
field. A BCD fault occurs if anything other
than zeros are in the upper two bits of the
remaining characters.

ANALYSIS:

70 7 00011

instruction sets the field length register (D) with 118

64 0 00005

instruction specifies an LDE with successive BCD characters starting with
the least significant character (LSC) at address R +(0-1) of 00005 = address 0001, character position 1. 118 characters are loaded into ED. The
final contents of ED are shown below.

ED

=

-0000849109825

!

(A BCD character cannot be loaded
into the 13th digit. A zero will always
be entered here during a 64 instruction.)

B-19

Appen~dix

C

Programming Reference Tables
and
Conversion Information

TABLE OF POWERS OF TWO

o
2
4
8

1
2
3

1.0
0.5
0.25
0.125

16
32
64
128

4
5
6
7

0.062
0.031
0.015
0.007

5
25
625
812 5

256
512
1 024
2 048

8
9
10
11

0.003
0.001
0.000
0.000

906
953
976
488

25
125
562 5
281 25

4
8
16
32

096
192
384
768

12
13
14
15

0.000
0.000
0.000
0.000

244
122
061
030

140
070
035
517

625
312 5
156 25
578 125

65
131
262
524

536
072
144
28B

16
17
18
19

0.000
0.000
0.000
0.000

015
007
003
001

258
629
814
907

789
394
697
348

062
531
265
632

5
25
625
812 5

048 576
2 097 152
4 194 304
8 388 608

20
21
22
23

0.000
0.000
0.000
0.000

000
000
000
000

953
476
238
119

674
837
418
209

316
158
579
289

406
203
101
550

25
125
562 5
781 25

16
33
67
134

777
554
108
217

216
432
864
728

24
25
26
27

0.000
0.000
0.000
0.000

000
000
000
000

059
029
014
007

604
802
901
450

644
322
161
580

77 5
387
193
596

390
695
847
923

625
312 5
656 25
828 125

268
536
073
2 147

435
870
741
483

456
912
824
648

28
29
30
31

0.000
0.000
0.000
0.000

000
000
000
000

003
001
000
000

725
862
931
465

290
645
322
661

298
149
574
287

461
230
615
307

914
957
478
739

062
031
515
257

5
25
625
812 5

4
8
17
34

294
589
179
359

967
934
869
738

296
592
184
368

32
33
34
35

0.000
0.000
0.000
0.000

000
000
000
000

000
000
000
000

232
116
058
029

830
415
207
103

643
321
660
830

653
826
913
456

869
934
467
733

628 906 25
814 45~ 125
407 226 562 5
703 613 281 25

68
137
274
549

719
438
877
755

476
953
906
813

736
472
944
888

36
37
38
39

0.000
0.000
0.000
0.000

000
000
000
000

000
000
000
000

014
007
003
001

551
275
637
818

915
957
978
989

228
614
807
403

366
183
091
545

851
425
712
856

806
903
951
475

640
320
660
830

625
312 5
156 25
078 125

099 511 627
2 199 023 255
4 398 046 511
8 796 093 022

776
552
104
208

40
41
42
43

0.000
0.000
0.000
0.000

000
000
000
000

000
000
000
000

000
000
000
000

909
454
227
113

494
747
373
686

701
350
675
837

772
886
443
721

928
464
232
616

237
118
059
029

915
957
478
739

039
519
759
379

062
531
765
882

5
25
625
812 5

17
35
70
140

592
184
368
737

186
372
744
488

044
088
177
355

416
832
664
328

44
45
46
47

0.000
0.000
0.000
0.000

000
000
000
000

000
000
000
000

000
000
000
000

056
028
014
007

843
421
210
105

418
709
854
427

860
430
715
357

808
404
202
601

014
007
003
001

869
434
717
858

689
844
422
711

941
970
485
242

406
703
351
675

25
125
562 5
781 25

281
562
1 125
2 251

474
949
899
799

976
953
906
813

710
421
842
685

656
312
624
248

48
49
50
51

0.000
0.000
0.000
0.000

000
000
000
000

000
000
000
000

000
000
000
000

003
001
000
000

552
776
888
444

713
356
178
089

678
839
419
209

800
400
700
850

500
250
125
062

929
464
232
616

355
677
338
169

621
810
905
452

337
668
334
667

890
945
472
236

625
312 5
656 25
328 125

726
363
181
590

333
166
583
791

618
809
404
702

164
082
541
270

062
031
015
507

5
25
625
812 5

395 851
697 925
848 962
924481

135
567
783
391

253
626
813
906

906
953
476
738

4
9
18
36

503
007
014
028

599
199
398
797

627
254
509
018

370
740
481
963

496
992
984
968

52
53
54
55

0.000
0.000
0.000
0.000

000
000
000
000

000
000
000
000

000
000
000
000

000
000
000
000

222
111
055
027

044
022
511
755

604
302
151
575

925
462
231
615

031
515
257
628

308
654
827
913

084
042
021
510

72
144
288
576

057
115
230
460

594
188
376
752

037
075
151
303

927
855
711
423

936
872
744
488

56
57
58
59

0.000
0.000
0.000
0.000

000
000
000
000

000
000
000
000

000
000
000
000

000
000
000
000

013
006
003
001

877
938
469
734

787
893
446
723

807
903
951
475

814
907
953
976

456
228
614
807

755 295
377 647
188 823
094411

1 152 921 504 606 846 976

60

0.000 000 000 000 000 000 867 361 737 988 403 547 205 962 240 695 953 369 140 625

C-l

25
125
562 5
281 25

DECIMALIBINAIW POSITION TABLE

largest Decimal
Integer

1
2
4
8
17
35
70
140

1
2
4
8
17
34
68
137
274
549
099
199
398
796
592
184
368
737

1
2
4
8
16
32
65
131
262
524
1 048
2 097
4 194
8 388
16 777
33 554
67 108
134 217
268 435
536 870
073 741
147 483
294 967
589 934
179 869
359 738
719 476
438 953
877 906
755 813
511 €27
023'255
046 511
093 022
186 044
372 088
744 177
488 355

1
3
7
15
31
63
127
255
511
023
047
095
191
383
767
535
071
143
287
575
151
303
607
215
431
863
727
455
911
823
647
295
591
183
367
735
471
943
887
775
551
103
207
415
831
663
327

Decimal
Digits
Req'd*

Number
of
Binary
Digits

1
2
3

4
5
6

7
8
9

10
11
12

13
14

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47

largest Decimal Fraction

.5
.75
.875
.937
.968
.984
.992
.996
.998
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999
.999

5
75
375
187
093
046
023
511
755
877
938
969
984
992
996
998
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999

5
75
875
437
718
859
929
964
482
741
370
185
092
046
523
761
880
940
970
985
992
996
998
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999
999

5
75
375
687 5
843 75
421 875
210 937
605 468
302 734
651 367
325 683
162 841
581 420
790 "710
395 355
197 677
098 838
549 419
274 709
137 354
068 677
534 338
767 169
883 584
941 792
970 896
985 448
992 724
996 362
998 181
999 090
999 545
999 772
999 886
999 943
999 971
999 985
999 992

5
75
375
187
593
796
898
449
244
612
806
403
701
850
425
712
356
678
339
169
034
042
021
010
505
252
626
313
156
578
789
894

5
75
875
437
218
609
304
152
076
538
769
384
692
346
173
086
543
771
385
192
596
298
649
324
162
581
290
145
572

5
75
375
687
343
171
085
042
521
260
130
065
532
266
633
816
908
454
227
113
556
278
139
569
284
642

5
75
875
937
968
484
742
371
185
592
296
148
574
287
143
071
535
767
383
191
595
797
398

5
75
375
187
093
546
773
386
193
096
048
524
762
881
940
970
985
992
996
998

5
75
875
437 5
718 75
359 375
679 687
339 843
169 921
084 960
042480
521 240
260 620
130 310
565 155
282 577
141 288

5
75
875
937
468
234
117
058
029
514
757

5
75
375
187
593
296
648
324

5
75
875
437 5
218 75

*Larger numbers within a digit group should be checked for exact number of decimal digits required.

Examples of use:
1. Q. What is the largest decimal value that can be expressed by 36 binary digits?
A.68,719,476,735.
2. Q. How many decimal digits will be required to express a 22-bit number?

A. 7 decimal digits.
C-2

OCTAL ARITHMETIC MATRICES

ADDITION-SUBTRACTION

2

3

4

5

6

7

10

3

4

5

6

7

10

11

4

5

6

7

10

11

12

5

6

7

10

11

12

13

6

7

10

11

12

13

14

7

10

11

12

13

14

15

11

12

13

14

15

16

MULTIPLICATION-DIVISION

2

3

4

5

6

7

4

6

10

12

14

16

6

11

14

17

22

25

10

14

20

24

30

34

12

17

24

31

36

43

14

22

30

36

44

52

16

25

34

43

52

61

C-3

CONSTANTS

1("

y'3

v'TO
e
In 2
In 10
10glO 2
log 10 e
10glO 10glO e
log 10 1("

3.14159 26535
1.732 050 807
3.162 277 660
2.71828 18284
0.69314 71805
2.30258 50929
0.30102 99956

89793 23846
569
1683
59045 23536
599453
94045 68402
63981

0.43429 44819
9.63778 43113

03251 82765
00537-10

1 degree
1 radian
IOglO(5)

0.49714
0.01745
57.29577
0.69897

7!
8!
9!
10!
11 !
12!

5040
40320
362,880
3,628,800
39,916,800
479,001,600

13 !
14!

6,227,020,800
87,178,291,200

15 !
16 !

1,307,674,368,000
20,922.789,888,000

1("

0.01745

98726 94133

tf13
tf14

32925

19943 29576

2.4674 01100 27233

96

3.8757

74

84585 03747

62515 20

~5

9.5631

15149

54004 49

tf16

15.0217

06149

61413 07

~7

23.5960 40842 00618

62

tf18

37.0645

72481

52567

57

~3

58.2208

97135

63712

59

(;}o

91.4531

71363

36231

53

2 •

(;}2
(;t

(;t
Rev. F

143.6543 05651

31374 95

225.6516

55645

350

354.4527

91822

91051

556.7731

43417

624

C-4

50

85435

6.0880 68189

(;t

83279

32925 11943 radians
95131 degrees
00043 36019

180

~2

26433

47

92369

07684 9

CONSTANTS (Continued)

71"2
271"2
371"2
471"2
571"2
671"2
771"2
871"2
971"2

9.86960
19.73920
29.60881
39.47841
49.34802
59.21762
69.08723
78.95683
88.82643

V2
1
(1
(1
(1
(1
(1
(1
(1
(1

+V2
+ V2)2
+ 0)4
+ 0)6
+ 0)B
+ 0)10
+ 0)12
+ 0)14
+ 0)16
( 1 +V2)18

=
=
=
=

44010
88021
32032
76043
20054
64065
08076
52087
96098

1.414
2.414
5.828
33.970
197.994
1153.999
6725.999
39201.999
228485.999
1331713.999
7761797.999

213
213
427
562
949
133
851
974
995
999
999

89358
78717
68075
57434
46793
36151
25510
14868
04227

562
562
124
748
366
448
323
491
622
246
884

61883
23766
85680
47533
09417
71300
33184
95067
56950

373
373
746
477
116
220
208
027
956
711
751

Sin .5
Cos .5
Tan .5

0.47942 55386 04203
0.87758 25618 90373
0.54630 24898 43790

Sin 1
Cos 1
Tan 1

0.84147 09848 07896
0.54030 23058 68140
1.55740 77246 5490

Sin 1.5
Cos 1.5
Tan 1.5

0.99749 49866 04054
0.07073 72016 67708
14.10141 99471 707

C-5

43909
87819
31729
75639
19549
63459
07369
51279
95189

9988
9976
9964
9952
9940
9928
9916
9904
9892

095 048 801 688
095 048 801 688
18
08
30
72
02
40
38

OCTAL-DECIMAL INTEGER CONVERSION TABLE

I

0

1

2

3

4

0

1

2

3

5

6

7

0000
0010
0020
0030
0040
0050
0060
0070

0000
0008
0016
0024
0032
0040
0048
0056

0001
0009
0017
0025
0033
0041
0049
0057

0002
0010
0018
0026
0034
0042
0050
0058

0003
0011
0019
0027
0035
0043
0051
0059

0004
0012
0020
0028
0036
0044
0052
0060

0005
0013
0021
0029
0037
0045
0053
0061

0006
0014
0022
0030
0038
0046
0054
0062

0007
0015
0023
0031
0039
0047
0055
0063

0400
0410
0420
0430
0440
0450
0460
0470

0256
0264
0272
0280
0288
0296
0304
0312

0257
0265
0273
0281
0289
0297
0305
0313

11258
0266
0274
0282
0290
0298
0306
0314

0259
0267
0275
0283
0291
0299
0307
0315

0260
0268
0276
0284
0292
0300
0308
0316

0261
0269
0277
0285
0293
0301
0309
0317

0262
0270
0278
0286
0294
0302
0310
0318

0263
0271
0279
0287
0295
0303
0311
0319

0100
0110
0120
0130
0140
0150
0160
0170

0064
0072
0080
0088
0096
0104
0112
0120

0065
0073
0081
0089
0097
0105
0113
0121

0066
0074
0082
0090
0098
0106
0114
0122

0067
0075
0083
0091
0099
0107
0115
0123

0068
0076
0084
0092
0100
0108
0116
0124

0069
0077
0085
0093
0101
0109
0117
0125

0070
0078
0086
0094
0102
0110
0118
0126

0071
0079
0087
0095
0103
0111
0119
0127

0500
0510
0520
0530
0540
0550
0560
0570

0320
0328
0336
0344
0352
0360
0368
0376

0321
0329
0337
0345
0353
0361
0369
0377

0322
0330
0338
0346
0354
0362
0370
0378

0323
0331
0339
0347
0355
0363
0371
0379

0324
0332
0340
0348
0356
0364
0372
0380

0325
0333
0341
0349
0357
0365
0373
0381

0326
0334
0342
0350
0358
0366
0374
0382

0327
0335
0343
0351
0359
0367
0375
0383

0200
I 0210
0220
0230
0240
0250
0260
0270

0128
0136
0144
0152
0160
0168
0176
0134

0129
0137
0145
0153
0161
0169
0177
0185

0130
0138
0146
0154
0162
0170
0178
0186

0131
0139
0147
0155
0163
0171
0179
0187

0132
0140
0148
0156
0164
0172
0180
0138

0133
0141
0149
0157
0165
0173
0181
0189

0134
0142
0150
0158
0166
0174
0182
0190

0135
0143
0151
0159
0167
0175
0183
0191

0600
0610
0620
0630
0640
0650
0660
0670

0384
0392
0400
0408
0416
0424
0432
0440

0385
0393
0401
0409
0417
0425
0433
0441

0386
0394
0402
0410
0418
0426
0434
0442

0387
0395
0403
0411
0419
0427
0435
0443

0388
0396
0404
0412
0420
0428
0436
0444

0389
0397
0405
0413
0421
0429
0437
0445

0390
0398
0406
0414
0422
0430
0438
0446

0391
0399
0407
0415
0423
0431
0439
0447

0340
0350
0360
L 0370

0192
0200
0208
0216
0224
0232
0240
0248

0193
0201
0209
0217
0225
0233
0241
0249

0194
0202
0210
0218
0226
0234
0242
0250

0195
0203
0211
0219
0227
0235
0243
0251

0196
0204
0212
0220
0228
0236
0244
0252

0197
0205
0213
0221
0229
0237
0245
0253

0198
0206
0214
0222
0230
0238
0246
0254

0199
0207
0215
0223
0231
0239
0247
0255

0700
0710
0720
0730
0740
0750
0760
0770

0448
0456
0464
0472
0480
0488
0496
0504

0449
0457
0465
0473
0481
0489
0497
0505

0450
0458
0466
0474
0482
0490
0498
0506

0451
0459
0467
0475
0483
0491
0499
0507

0452
0460
0468
0476
0484
0492
0500
0508

0453
0461
0469
0477
0485
0493
0501
0509

0454
0462
0470
0478
0486
0494
0502
0510

0455
0463
0471
0479
0487
0495
0503
0511

I
I

!,

II
!

I
I
II

I

II 0300
0310
I 0320
0330

6

7

4

0

1

2

3

4

5

0

1

2

3

4

5

6

7

1U10
1020
1030
1040
1050
1060
1070

0512
0520
0528
0536
0544
0552
0560
0568

0513
0521
0529
0537
0545
0553
0561
0569

0514
0522
0530
0538
0546
0554
0562
0570

0515
0523
0531
0539
0547
0555
0563
0571

0516
0524
0532
0540
0548
0556
0564
0572

0517
0525
0533
0541
0549
0557
0565
0573

0518
0526
0534
0542
0550
0558
0566
0574

0519
0527
0535
0543
0551
0559
0567
0575

1400
1410
1420
1430
1440
1450
1460
1470

0768
0776
0784
0792
0800
0808
0816
0824

0769
0777
0785
0793
0801
0809
0817
0825

0770
0778
0786
0794
0802
0810
0818
0826

0771
0779
0787
0795
0803
0811
0819
0827

0772
0780
0788
0796
0804
0812
0820
0828

0773
0781
0789
0797
0805
0813
0821
0829

0774
0782
0790
0798
0806
0814
0822
0830

0775
0783
0791
0799
0807
0815
0823
0831

1100
1110
1120
1130
1140
1150
1160
1170

0576
0584
0592
0600
0608
0616
0624
0632

0577
0585
0593
0601
0609
0617
0625
0633

0578
0586
0594
0602
0610
0618
0626
0634

0579
0587
0595
0603
0611
0619
0627
0635

0580
0588
0596
0604
0612
0620
0628
0636

0581
0589
0597
0605
0613
0621
0629
0637

0582
0590
0598
0606
0614
0622
0630
0638

0583
0591
0599
0607
0615
0623
0631
0639

1500
1510
1520
1530
1540
1550
1560
1570

0832
0840
0848
0856
0864
0872
0880
0888

0833
0841
0849
0857
0865
0873
0881
0889

0834
0842
0850
0858
0866
0874
0882
0890

0835
0843
0851
0859
0867
0875
0883
0891

0836
0844
0852
0860
0868
0876
0884
0892

0837
0845
0853
0861
0869
0877
0885
0893

0838
0846
0854
0862
0870
0878
0886
0894

0839
0847
0855
0863
0871
0879
0887
0895

1200
1210
1220
1230
1240
1250
1260
1270

0640
0648
0656
0664
0672
0680
0688
0696

0641
0649
0657
0665
0673
0681
0689
0697

0642
0650
0658
0666
0674
0682
0690
0698

0643
0651
0659
0667
0675
0683
0691
0699

0644
0652
0660
0668
0676
0684
0692
0700

0645
0653
0661
0669
0677
0685
0693
0701

0646
0654
0662
0670
0678
0686
0694
0702

0647
0655
0663
0671
0679
0687
0695
0703

1600
1610
1620
1630
1640
1650
1660
1670

0896
0904
0912
0920
0928
0936
0944
0952

0897
0905
0913
0921
0929
0937
0945
0953

0898
0906
0914
0922
0930
0938
0946
0954

0899
0907
0915
0923
0931
0939
0947
0955

0900
0908
0916
0924
0932
0940
0948
0956

0901
0909
0917
0925
0933
0941
0949
0957

0902
0910
0918
0926
0934
0942
0950
0958

0903
0911
0919
0927
0935
0943
0951
0959

1300
1310
1320
1330
1340
1350
1360
1370

0704
0712
0720
0728
0736
0744
0752
0760

0705
0713
0721
0729
0737
0745
0753
0761

0706
0714
0722
0730
0738
0746
0754
0762

0707
0715
0723
0731
0739
0747
0755
0763

0708
0716
0724
0732
0740
0748
0756
0764

0709
0717
0725
0733
0741
0749
0757
0765

0710
0718
0726
0734
0742
0750
0758
0766

0711
0719
0727
0735
0743
0751
0759
0767

1700
1710
1720
1730
1740
1750
1760
1770

0960
0968
0976
0984
0992
1000
1008
1016

0961
0969
0977
0985
0993
1001
1009
1017

0962
0970
0978
0986
0994
1002
1010
1018

0963
0971
0979
0987
0995
1003
1011
1019

0964
0972
0980
0988
0996
1004
1012
1020

0965
0973
0981
0989
0997
1005
1013
1021

0966
0974
0982
0990
0998
1006
1014
1022

0967
0975
0983
0991
0999
1007
1015
1023

rmo"
1

5

6

7

C-6

0000
to
0777
(Octal)

0000
to
0511
(Decimal)

Octal
Decimal
10000 - 4096
20000 - 8192
30000 - 12288
40000 - 16384
50000 - 20480
60000 - 24576
70000 - 28672

1000

0512

to

to

1777
(Octal)

1023
(Decimal)

OCTAL-DECIMAL INTEGER CONVERSION TABLE (Cont'd)

2000

1024

to

to

2777
(Oclal)

1535
(Decimal)

Oclal Decimal
10000 - 4096
20000 - 8192
30000 - 12288
40000 - 16384
50000 - 20480
60000 - 24576
70000 - 28672

3000

1536

to

to

3777
(Oclal)

2047
(Decimal)

0

,

2

3

4

5

6

7

0

1

2

3

4

5

6

7

2000
2010
2020
2030
2040
2050
2060
2070

1024
1032
1040
1048
1056
1064
1072
1080

1025
1033
1041
1049
1057
1065
1073
1081

1026
1034
1042
1050
1058
1066
1074
1082

102 7
1035
1043
1051
1059
1067
1075
1083

1028
1036
1044
1052
1060
1068
1076
1084

1029
1037
1045
1053
1061
1069
1077
1085

1030
1038
1046
1054
1062
1070
1078
1086

1031
1039
1047
1055
1063
1071
1079
1087

2400
2410
2420
2430
2440
2450
2460
2470

1280
1288
1296
1304
1312
1320
1328
1336

1281
1289
1297
1305
1313
1321
1329
1337

1282
1290
1298
1306
1314
1322
1330
1338

1283
1291
1299
1307
1315
1323
1331
1339

1284
1292
1300
1308
1316
1324
1332
1340

1285
1293
1301
1309
1317
1325
1333
1341

1286
1294
1302
1310
1318
1326
1334
1342

1287
1295
1303
1311
1319
1327
1335
1343

2100
211 0
2120
2130
2140
2150
2160
2170

1088
1096
1104
1112
1120
1;36
1144

1089
1097
1105
1113
1121
1129
1137
1145

1090
1098
1106
1114
1122
1130
1138
1146

1091
1099
1107
1115
1123
1131
1139
1147

1092
1100
1108
1116
1124
1132
1140
1148

1093
1101
1109
1117
1125
1133
1141
1149

1094
1102
1110
1118
1126
1134
1142
1150

1095
1103
1111
1119
1127
1135
1143
1151

2500
2510
2520
2530
2540
2550
2560
2570

1344
1352
1360
1368
1376
1384
1392
1400

1345
1353
1361
1369
1377
1385
1393
1401

1346
1354
1362
1370
1378
1386
1394
1402

1347
1355
1363
1371
1379
1387
1395
1403

1348
1356
1364
1372
1380
1388
1396
1404

1349
1357
1365
1373
1381
1389
1397
1405

1350
1358
1366
1374
1382
1390
1398
1406

1351
1359
1367
1375
1383
1391
1399
1407

2200
2210
2220
2230
2240
2250
2260
2270

1152
1160
1168
1176
1184
1192
1200
1208

1153
1161
1169
1177
1185
1193
1201
1209

1154
1162
1170
1178
1186
1194
1202
1210

1155
1163
1171
1179
1187
1195
1203
1211

1156
1164
1172
1180
1188
1196
1204
1212

1157
1165
1173
1181
1189
1197
1205
1213

1158
1166
1174
1182
1190
1198
1206
1214

1159
1167
1175
1183
1191
1199
1207
1215

2600
2610
2620
2630
2640
2650
2660
2670

1408
1416
1424
1432
1440
1448
1456
1464

1409
1417
1425
1433
1441
1449
1457
1465

1410
1418
1426
1434
1442
1450
1458
1466

1411
1419
1427
1435
1443
1451
1459
1467

1412
1420
1428
1436
1444
1452
1460
1468

1413
1421
1429
1437
1445
1453
1461
1469

1414
1422
1430
1438
1446
1454
1462
1470

1415
1423
1431
1439
1447
1455
1463
1471

2300
2310
2320
2330
2340
2350
2360
2370

1216
1224
1232
1240
1248
1256
1264
1272

1217
1225
1233
1241
1249
1257
1265
1273

1218 1219
1226 1227
1234 1235
1242 1243
1250 ,1251
1258 1259
1266 1267
1274 1275

1220
1228
1236
1244
1252
1260
1268
1276

1221
1229
1237
1245
1253
1261
1269
1277

1222
1230
1238
1246
1254
1262
1270
1278

1223
1231
1239
1247
1255
1263
1271
1279

2700
2710
2720
2730
2740
2750
2760
2770

1472
1480
1488
1496
1504
1512
1520
1528

1473
1481
1489
1497
1505
1513
1521
1529

1474
1482
1490
1498
1506
1514
1522
1530

1475
1483
1491
1499
1507
1515
1523
1531

1476
1484
1492
1500
1508
1516
1524
1532

1477
1485
1493
1501
1519
1517
1525
1533

1478
1486
1494
1502
1510
1518
1526
1534

1479
1487
1495
1503
1511
1519
1527
1535

0

1

2

3

4

5

6

.,

0

1

2

3

4

5

6

3000
3010
3020
3030
3040
3050
3060
3070

1536
1544
1552
1560
1568
1576
1584
1592

1537
1545
1553
1561
1569
1577
1585
1593

1538
1546
1554
1562
1570
1578
1586
1594

1539
1547
1555
1563
1571
1579
1587
1595

1540
1548
1556
1564
1572
1580
1588
1596

1541
1549
1557
1565
1573
1581
1589
1597

1542
1550
1556
1566
1574
1582
1590
1598

1543
1551
1559
1567
1575
1583
1591
1599

3400
3410
3420
3430
3440
3450
3460
3470,

1792
1800
1808
1816
1824
1832
1840
1848

1793
1801
1809
1817
1825
1833
1841
1849

1794
1802
1810
1818
1826
1834
1842
1850

1795
1803
1811
1819
1827
1835
1843
1851

1796
1804
1812
1820
1828
1836
1844
1852

1797
1805
1813
1821
1829
1837
1845
1853

1798
1806
1814
1822
1830
1838
1846
1854

1799
1807
1815
1823
1831
1839
1847
1855

3100
3110
3120
3130
3140
3150
3160
3170

1600
1608
1616
1624
1632
1640
1648
1656

1601
1609
1617
1625
1633
1641
1649
1657

1602
1610
1618
1626
1634
1642
1650
1658

1603
1611
1619
1627
1635
1643
1651
1659

1604
1612
1620
1628
1636
1644
1652
1660

1605
1613
1621
1629
1637
1645
1653
1661

1606
1614
1622
1630
1638
1646
1654
1662

1607
1615
1623
1631
1639
1647
1655
1663

3500
3510
3520
3530
3540
3550
3560
3570

1856
1864
1872
1880
1888
1896
1904
1912

1857
1865
1873
1881
1889
1897
1905
1913

1858
1866
1874
1882
1890
1898
1906
1914

1859
1867
1875
1883
1891
1899
1907
1915

1860
1868
1876
1884
1.892
1900
1908
1916

1861
1869
1877
1885
1893
1901
1909
1917

1862
1870
1878
1886
1894
1902
1910
1918

1863
1871
1879
1887
1895
1903
1911
1919

3200
3210
3220
3230
3240
3250
3260
3270

1664
1672
1680
1688
1696
1704
1712
1720

1665
1673
1681
1689
1697
1705
1713
1721

1666
1674
1682
1690
1698
1706
1714
1722

1667
1675
1683
1691
1699
1707
1715
1723

1668
1676
1684
1692
1700
1708
1716
1724

1669
1677
1685
1693
1701
1709
1717
1725

1670
1678
1686
1694
1702
1710
1718
1726

1671
1679
1687
1695
1703
1711
1719
1727

3600
3610
3620
3630
3640
3650
3660
3670

1920
1928
1936
1944
1952
1960
1968
1976

1921 1922
1929 1930
1937 1938
1945 1946
1953 1954
1961 -1962
1969 1970
1977 1978

1923
1931
1939
1947
1955
1963
1971
1979

1924
1932
1940
1948
1956
1964
1972
1980

1925
1933
1941
1949
1957
1965
1973
1981

1926
1934
1942
1950
1958
1966
1974
1982

1927
1935
1943
1951
1959
1967
1975
1983

3300
3310
3320
3330
3340
3350
3360
3370

1728
1736
1744
1752
1760
1768
1776
1784

1729
1737
1145
1753
1761
1769
1777
1785

1730
1738
1746
1754
1762
1770
1778
1786

1731
1739
1747
1755
1763
1771
1779
1787

1732
1740
1748
1756
1764
1772
1780
1788

1733
1741
1749
1757
1765
1773
1781
1789

1734
1742
1750
1758
1766
1774
1782
1790

1735
1743
1751
1759
1767
1775
1783
1791

3700
3710
3720
3730
3740
3750
3760
3770

1984
1992
2000
2008
2016
2024
2032
2040

1985
1993
2001
2009
2017
2025
2033
2041

1987
1995
2003
2011
2019
2027
2035
2043

1,988
1996
2004
2012
2020
2028
2036
2044

1989
1997
2005
2013
2021
2029
2037
2045

1990
1998
2006
2014
2022
2030
2038
2046

1991
1999
2007
2015
2023
2031
2039
2047

1128

C-7

1986
1994
2002
2010
2018
2026
2034
2042

7

Rev.H

OCTAL-DECIMAL INTEGER CONVERSION TABLE (Cant'd)

0

1

2

3

4

5

6

7

0

1

2

3

4

5

6

7

4000
4010
4020
4030
4040
4050
4060
4070

2048
2056
2064
2072
2080
2088
2096
2104

2049
2057
2065
2073
2081
2089
2097
2105

2050
2058
2066
2074
2082
2090
2098
2106

2051
2059
2067
2075
2083
2091
2099
2107

2052
2060
2068
2076
2084
2092
2100
2108

2053
2061
2069
2077
2085
2093
2101
2109

2054
2062
2070
2078
2086
2094
2102
2110

2055
2063
2071
2079
2087
2095
2103
2111

4400
4410
4420
4430
4440
4450
4460
4470

2304
2312
2320
2328
2336
2344
2352
2360

2305
2313
2321
2329
2337
2345
2353
2361

2306
2314
2322
2330
2338
2346
2354
2362

2307
2315
2323
2331
2339
2347
2355
2363

2308
2316
2324
2332
2340
2348
2356
2364

2309
2317
2325
2333
2341
2349
2357
2365

2310
2318
2326
2334
2342
2350
2358
2366

2311
2319
2327
2335
2343
2351
2359
2367

4100
4110
4120
4130
4140
4150
4160
4170

2112
2120
2128
2136
2144
2152
2160
2168

2113
2121
2129
2137
2145
2153
2161
2169

2114
2122
2130
2138
2146
2154
2162
2170

2115
2123
2131
2139
2147
2155
2163
2171

2116
2124
2132
2140
2148
2156
2164
2172

2117
2125
2133
2141
2149
2157
2165
2173

2118
2126
2134
2142
2150
2158
2166
2174

2119
2127
2135
2143
2151
2159
2167
2175

4500
4510
4520
4530
4540
4550
4560
4570

2368
2376
2384
2392
2400
2408
2416
2424

2369
2377
2385
2393
2401
2409
2417
2425

2370
2378
2386
2394
2402
2410
2418
2426

2371
2379
2387
2395
2403
2411
2419
2427

2372
2380
2388
2396
2404
2412
2420
2428

2373
2381
2389
2397
2405
2413
2421
2429

2374
2382
2390
2398
2406
2414
2422
2430

2375
2383
2391
2399
2407
2415
2423
2431

4200
4210
4220
4230
4240
4250
4260
4270

2176
2184
2192
2200
2208
2216
2224
2232

2177
2185
2193
2201
2209
2217
2225
2233

2178
2186
2194
2202
2210
2218
2226
2234

2179
2187
2195
2203
2211
2219
2227
2235

2180
2188
2196
2204
2212
2220
2228
2236

2181
2189
2197
2205
2213
2221
2229
2237

2182
2190
2198
2206
2214
2222
2230
2238

2183
2191
2199
2207
2215
2223
2231
2239

4600
4610
4620
4630
4640
4650
4660
4670

2432
2440
2448
2456
2464
2472
2480
2488

2433
2441
2449
2457
2465
2473
2481
2489

2434
2442
2450
2458
2466
2474
2482
2490

2435
2443
2451
2459
2467
2475
2483
2491

2436
2444
2452
2460
2468
2476
2484
2492

2437
2445
2453
2461
2469
2477
2485
2493

2438
2446
2454
2462
2470
2478
2486
2494

2439
2447
2455
2463
2471
2479
2487
2495

4300
4310
4320
4330
4340
4350
4360
4370

2240
2248
2256
2264
2272
2280
2288
2296

2241
2249
2257
2265
2273
2281
2289
2297

2242
2250
2258
2266
2274
2282
2290
2298

2243
2251
2259
2267
2275
2283
2291
2299

2244
2252
2260
2268
2276
2284
2292
2300

2245
2253
2261
2269
2277
2285
2293
2301

2246
2254
2262
2270
2278
2286
2294
2302

2247
2255
2263
2271
2279
2287
2295
2303

4700
4710
4720
4730
4740
4750
4760
4770

2496
2504
2512
2520
2528
2536
2544
2552

2497
2505
2513
2521
2529
2537
2545
2553

2498
2506
2514
2522
2530
2538
2546
2554

2499
2507
2515
2523
2531
2539
2547
2555

2500
2508
2516
2524
2532
2540
2546
2556

2501
2509
2517
2525
2533
2541
2549
2557

2502
2510
2518
2526
2534
2542
2550
2558

2503
2511
2519
2527
2535
2543
2551
2559

1

2

4

5

6

7

0

1

2

3

4

5

6

7

0

3

5000
5010
5020
5030
5040
5050
5060
5070

2560
2568
2576
2584
2592
2600
2608
2616

2561
2569
2577
2585
2593
2601
2609
2617

2562
2570
2578
2586
2594
2602
2610
2618

2563
2571
2579
2587
2595
2603
2611
2619

2564
2572
2580
2588
2596
2604
2612
2620

2565
2573
2581
2589
2597
2605
2613
2621

2566
2574
2582
2590
2598
2606
2614
2622

2567
2575
2583
2591
2599
2607
2615
2623

5400
5410
5420
5430
5440
5450
5'160
5'110

2816
2824
2832
2840
2848
2856
2864
2872

2817
2825
2833
2841
2849
2857
2865
2873

2818
2826
2834
2842
2850
2858
2866
2874

2819
2827
2835
2843
2851
2859
2867
2875

2820
2828
2836
2844
2852
2860
2868
2876

2821
2829
2837
2845
2853
2861
2869
2877

2822
2830
2838
2846
2854
2862
2870
2878

2823
2831
2839
2847
2855
2863
2871
2879

5100
5110
5120
5130
5140
5150
5160
5170

2624
2632
2640
2648
2656
2664
2672
2680

2625
2633
2641
2649
2657
2665
2673
2681

2626
2634
2642
2650
2658
2666
2674
2682

2627
2635
2643
2651
2659
2667
2675
2683

2628
2636
2644
2652
2660
2668
2676
2684

2629
2637
2645
2653
2661
2669
2677
2685

2630
2638
2646
2654
2662
2670
2678
2686

2631
2639
2647
2655
2663
2671
2679
2687

5500
5510
5520
5530
5540
5550
5560
5570

2880
2888
2896
2904
2912
2920
2928
2936

2881
2889
2897
2905
2913
2921
2929
2937

Z882
2890
2898
2906
2914
2922
2930
2938

2883
2891
2899
2907
2915
2923
2931
2939

2884
2892
2900
2908
2916
2924
2932
2940

2885
2893
2901
2909
2917
2925
2933
2941

2886
2894
2902
2910
2918
2926
2934
2942

2887
2895
2903
2911
2919
2927
2935
2943

5200
5210
522U
5230
5240
5250
5260
5270

2688
2696
2704
2712
2720
2728
2736
2744

2689
2697
2705
2713
2721
2729
2737
2745

2690
2698
2706
2714
2722
2730
2738
2746

2691
2699
2707
2715
2723
2731
2739
2747

2692
2700
2708
2716
2724
2732
2740
2748

2693
2701
2709
2717
2725
2733
2741
2749

2694
2702
2710
2718
2726
2734
2742
2750

2695
2703
2711
2719
2727
2735
2743
2751

5600
5610
5620
5630
5640
5650
5660
5670

2944
2952
2960
2968
2976
2984
2992
3000

2945
2953
2961
2969
2977
2985
2993
3001

2946
2954
2962
2970
2978
2986
2994
3002

2947
2955
2963
2971
2979
2987
2995
3003

2948
2956
2964
2972
2980
2988
2996
3004

2949
2957
2965
2973
2981
2989
2997
3005

2950
2958
2966
2974
2982
2990
2998
3006

2951
2959
2967
2975
2983
2991
2999
3007

5300
5310
5320
5330
5340
5350
5360
5370

2752
2760
2768
2776
2784
2792
2800
2808

2753
2761
2769
2777
2785
2793
2801
2809

2754
2762
2770
2778
2786
2794
2802
2810

2755
2763
2771
2779
2787
2795
2803
2811

2756
2764
2772
2780
2788
2796
2804
2812

2757
2765
2773
2781
2789
2797
2805
2813

2758
2766
2774
2782
2790
2798
2806
2814

2759
2767
2775
2783
2791
2799
2807
2815

5700
5710
5720
5730
5740
5750
5760
5770

3008
3016
3024
3032
3040
3048
3056
3064

3009
3017
3025
3033
3041
3049
3057
3065

3010
3018
3026
3034
3042
3050
3058
3066

3011
3019
3027
3035
3043
3051
3059
3067

3012
3020
3028
3036
3044
3052
3060
3068

3013
3021
3029
3037
3045
3053
3061
3069

3014
3022
3030
3038
3046
3054
3062
3070

3015
3023
3031
3039
3047
3055
3063
3071

C-8

4000
to
4777
(Octal)

2048
to
2559
(Decimal)

Octal Decimal
10000 - 4096
20000 - 8192
30000 - 12288
40000 - 16384
50000 - 20480
60000 - 24576
70000 - 28672

5000
to
5777
(Octal)

2560
to
3071
(Decimal)

OCTAL-DECIMAL INTEGER CONVERSION TABLE (Cont'd)

6000
to
6777
(Octal)

3072
to
3583
(Decimal)

Octal Decimal
10000 - 4096
20000 - 8192
30000 - 12288
40000 - 16384
50000 - 20480
60000 - 24576
70000 - 28672

7000
to
7777
(Octal)

3584
to
4095
(Decimal)

5

6

7

3332
3340
3348
3356
3364
3372
3380
3388

3333
3341
3349
3357
3365
3373
3381
3389

3334
3342
3350
3358
3366
3374
3382
3390

3335
3343
3351
3359
3367
3375
3383
3391

3395
3403
3411
3419
3427
3435
3443
3451

3396
3404
3412
3420
3428
3436
3444
3452

3397
3405
3413
3421
3429
3437
3445
3453

3398 3399
3406 3407
3414 3415
3422 3423
3430 3431
3438 3439
3446 3447
3454 3455

3458
3466
3474
3482
3490
3498
3506
3514

3459
3467
3475
3483
3491
3499
3507
3515

3460
3468
3476
3484
3492
3500
3508
3516

3461
3469
3477
3485
3493
3501
3509
3517

3462
3470
3478
3486
3494
3502
3510
3518

3463
3471
3479
3487
3495
3503
3511
3519

3521
3529
3537
3545
3553
3561
3569
3577

3522
3530
3538
3546
3554
3562
3570
3578

3523
3531
3539
3547
3555
3563
3571
3579

3524
3532
3540
3548
3556
3564
3572
3580

3525
3533
3541
3549
3557
3565
3573
3581

3526
3534
3542
3550
3558
3566
3574
3582

3527
3535
3543
3551
3559
3567
3575
3583

1

2

3

5

6

3847
3855
3863
3871
3879
3887
3895
3903

0

1

2

3

6400
6410
6420
6430
6440
6450
6460
6470

3328
3336
3344
3352
3360
3368
3376
3384

3329
3337
3345
3353
3361
3369
3377
3385

3330
3338
3346
3354
3362
3370
3378
3386

3331
3339
3347
3355
3363
3371
3379
3387

3143
3151
3159
3167
3175
3183
3191
3199

6500
6510
6520
6530
6540
6550
6560
6570

3392
3400
3408
3416
3424
3432
3440
3448

3393
3401
3409
3417
3425
3433
3441
3449

3394
3402
3410
3418
3426
3434
3442
3450

3206
3214
3222
3230
3238
3246
3254
3262

3207
3215
3223
3231
3239
3247
3255
3263

6600
6610
6620
6630
6640
6650
6660
6670

3456
3464
3472
3480
3488
3496
3504
3512

3457
3465
3473
3481
3489
3497
3505
3513

3269
3277
3285
3293
3301
3309
3317
3325

3270
3278
3286
3294
3302
3310
3318
3326

3271
3279
3287
3295
3303
3311
3319
3327

6700
6710
6720
6730
6740
6750
6760
6770

3520
3528
3536
3544
3552
3560
3568
3576

5

6

7

0

5

6

0

1

2

3

4

7

6000
6010
6020
6030
6040
6050
6060
6070

3072
3080
3088
3096
3104
3112
3120
3128

3073
3081
3089
3097
3105
3113
3121
3129

3074
3082
3090
3098
3106
3114
3122
3130

3075
3083
3091
3099
3107
3115
3123
3131

3076
3084
3092
3100
3108
3116
3124
3132

3077
3085
3093
3101
3109
3117
3125
3133

3078
3086
3094
3102
3110
3118
3126
3134

3079
3087
3095
3103
3111
3119
3127
3135

6100
6110
6120
6130
6140
6150
6160
6170

3136
3144
3152
3160
3168
3176
3184
3192

3137
3145
3153
3161
3169
3177
3185
3193

3138
3146
3154
3162
3170
3178
3186
3194

3139
3147
3155
3163
3171
3179
3187
3195

3140
3148
3156
3164
3172
3180
3188
3196

3141
3149
3157
3165
3173
3181
3189
3197

3142
3150
3158
3166
3174
3182
3190
3198

6200
6210
6220
6230
6240
6250
6260
6270

3200
3208
3216
3224
3232
3240
3248
3256

3201
3209
3217
3225
3233
3241
3249
3257

3202
3210
3218
3226
3234
3242
3250
3258

3203
3211
3219
3227
3235
3243
3251
3259

3204
3212
3220
3228
3236
3244
3252
3260

3205
3213
3221
3229
3237
3245
3253
3261

6300
6310
6320
6330
6340
6350
6360
6370

3264
3272
3280
3288
3296
3304
3312
3320

3265
3273
3281
3289
3297
3305
3313
3321

3266
3274
3282
3290
3298
3306
3314
3322

3267
3275
3283
3291
3299
3307
3315
3323

3268
3276
3284
3292
3300
3308
3316
3324

0

1

2

3

4

4

4

7

7000
7010
7020
7030
7040
7050
7060
7070

3584
3592
3600
3608
3616
3624
3632
3640

3585
3593
3601
3609
3617
3625
3633
3641

3586
3594
3602
3610
3618
3626
3634
3642

3587
3595
3603
3611
3619
3627
3635
3643

3588
3496
3604
3612
3620
3628
3636
3644

3589
3497
3605
3613
3621
3629
3637
3645

3590
3598
3606
3614
3622
3630
3638
3646

3591
3599
3607
3615
3623
3631
3639
3647

7400
7410
7420
7430
7440
7450
7460
7470

3840
3848
3856
3864
3872
38&0
3888
3896

3841
3849
3857
3865
3873
3881
3889
3897

3842
3850
3858
3866
3874
3882
3890
3898

3843
3851
3859
3867
3875
3883
3891
3899

3844
3852
3860
3868
3876
3884
3892
3900

3845
3853
3861
3869
3877
3885
3893
3901

3846
3854
3862
3870
3878
3886
3894
3902

7100
7110
7120
7130
7140
7150
7160
7170

3648
3656
3664
3672
3680
3688
3696
3704

3649
3657
3665
3673
3681
3689
3697
3705

3650
3658
3666
3674
3682
3690
3698
3706

3651
3659
3667
3675
3683
3691
3699
3707

3652
3660
3668
3676
3684
3692
3700
3708

3653
3661
3669
3677
3685
3693
3701
3709

3654
3662
3670
3678
3686
3694
3702
3710

3655
3663
3671
3679
3687
3695
3703
3711

7500
7510
7520
7530
7540
7550
7560
7570

3904
3912
3920
3928
3936
3944
3952
3960

3905
3913
3921
3929
3937
3945
3953
3961

3906
3914
3922
3930
3938
3946
3954
3962

3907
3915
3923
3931
3939
3947
3955
3963

3908
3916
3924
3932
3940
3948
3956
3964

3909
3917
3925
3933
3941
3949
3957
3965

3910
3918
3926
3934
3942
3950
3958
3966

3911
3919
3927
3935
3943
3951
3959
3967

7200
7210
7220
7230
7240
7250
7260
7270

3712
3720
3728
3736
3744
3752
3760
3768

3713
3721
3729
3737
3745
3753
3761
3769

3714
3722
3730
3738
3746
3754
3762
3770

3715
3723
3731
3739
3747
3755
3763
3771

3716
3724
3732
3740
3748
3756
3764
3772

3717
3725
3733
3741
3749
3757
3765
3773

3718
3726
3734
3742
3750
3758
3766
3774

3719
3727
3735
3743
3751
3759
3767
3775

7600
7610
7620
7630
7640
7650
7660
7670

3968
3976
3984
3992
4000
4008
4016
4024

3969
3977
3985
3993
4001
4009
4017
4025

3970
3978
3986
3994
4002
4010
4018
4026

3971
3979
3987
3995
4003
4011
4019
4027

3972
3980
3988
3996
4004
4012
4020
4028

3973
3981
3989
3997
4005
4013
4021
4029

3974
3982
3990
3998
4006
4014
4022
4030

3975
3983
3991
3999
4007
4015
4023
4031

7300
7310
7320
7330
7340
7350
7360
7370

3776
3784
3792
3800
3808
3816
3824
3832

3777
3785
3793
3801
3809
3817
3825
3833

3778
3786
3794
3802
3810
3818
3826
3834

3779
3787
3795
3803
3811
3819
3827
3835

3780
3788
3796
3804
3812
3820
3828
3836

3781
3789
3797
3805
3813
3821
3829
3837

3782
3790
3798
3806
3814
3822
3830
3838

3783
3791
3799
3807
3815
3823
3831
3839

7700
7710
7720
7730
7740
7750
7760
7770

4032
4040
4048
4056
4064
4072
4080
4088

4033
4041
4049
4057
4065
4073
4081
4089

4034
4042
4050
4058
4066
4074
4082
4090

4035
4043
4051
4059
4067
4075
4083
4091

4036
4044
4052
4060
4068
4076
4084
4092

4037
4045
4053
4061
4069
4077
4085
4093

4038
4046
4054
4062
4070
4078
4086
4094

4039
4047
4055
4063
4071
4079
4087
4095

C-9

OCTAL-DECIMAL FRACTION CONVERSION TABLE

OCTAL

DEC.

OCTAL

DEC.

.125000
.126953
.128906
.130859
.132812
.134765
.136718
.138671

.200
.201
.202
.203
.204
.205
.206
.207

.250000
.251953
.253906
.255859
.257812
.259765
.261718
.263671

.300
.301
.302
.303
.304
.305
.306
.307

.375000
.376953
.378906
.380859
.382812
.384765
.386718
.388671

.110
.111
.112
.113
.114
.115
.116
.117

.140625
.142578
.144531
.146484
.148437
.150390
.152343
.154296

.210
.211
.212
.213
.214
.215
.216
.217

.265625
.267578
.269531
.271484
.273437
.275390
.277343
.279296

.310
.311
.312
.313
.314
.315
.316
.317

.390625
.392578
.394531
.396484
.398437
.400390
.402343
.404296

.031250
.033203
.035156
.037109
.039062
.041015
.042968
.044921

.120
.121
.122
.123
.124
.125
.126
.127

.156250
.158203
.160156
.162109
.164062
.166015
.167968
.169921

.220
.221
.222
.223
.224
.225
.226
.227

.281250
.283203
.285156
.287109
.289062
.291015
.292968
.294921

.320
.321
.322
.323
.324
.325
.326
.327

.406250
.408203
.410156
.412109
.414062
.416015
.417968
.4 19921

.030
.031
.032
.033
.034
.035
.036
.037

.046875
.048828
.050781
.052734
.054687
.056640
.058593
.060546

.130
.131
.132
.133
.134
.135
.136
.137

.171875
.173828
.175781
.177734
.179687
.181640
.183593
.185546

.230
.231
.232
.233
.234
.235
.236
.237

.296875
.298828
.300781
.302734
.304687
.306640
.308593
.310546

.330
.331
.332
.333
.334
.335
.336
.337

.421875
.423828
.425781
.427734
.429687
.431640
.433593
.435546

.040
.041
.042
.043
.044
.045
.046
.047

.062500
.064453
.066406
.068359
.070312
.072265
.074218
.076171

.140
.141
.142
.143
.144
.145
.146
.147

.187500
.189453
.191406
.193359
.195312
.197265
.199218
.201171

.240
.241
.242
.243
.244
.245
.246
.247

.312500
.314453
.316406
.318359
.320312
.322265
.324218
.326171

.340
.341
.342
.343
.344
.345
.346
.347

.437500
.439453
.441406
.443359
.445312
.447265
.449218
.451171

.050
.051
.052
.053
.054
.055
.056
.057

.078125
.080078
.082031
.083984
.085937
.087890
.089843
.091796

.150
.151
.152
.153
.154
.155
.156
.157

.203125
.205078
.207031
.208984
.210937
.212890
.214843
.216796

.250
.251
.252
.253
.254
.25f
.25(
.257

.328125
.330078
.332031
.333984
.335937
.337890
.339843
.341796

.350
.351
.352
.353
.354
.355
.356
.357

.453125
.455078
.457031
.458984
.460937
.462890
.464843
.466796

.060
.061
.062
.063
.064
.065
.066
.067

.093750
.095703
.097656
.099609
.101562
.103515
.105468
.107421

.160
.161
.162
.163
.164
.165
.166
.167

.218750
.220703
.222656
.224609
.226562
.228515
.230468
.232421

.260
.261
.262
.263
.264
.265
.266
.267

.343750
.345703
.347656
.349609
.351562
.353515
.355468
.357421

.360
.361
.362
.363
.364
.365
.366
.367

.468750
.470703
.472656
.474609
.476562
.478515
.480468
.482421

.070
.071
.072
.073
.074
.075
.076
.077

.109375
.111328
.113281
.115234
.117187
.119140
.121093
.123046

.170
.171
.172
.173
.174
.175
.176
.177

.234375
.236328
.238281
.240234
.242187
.244140
.246093
.248046

.270
.271
.272
.273
.274
.275
.276
.277

.359375
.361328
.363281
.365234
.367187
.369140
.371093
.373046

.370
.371
.372
.373
.374
.375
.376
.377

.484375
.486328
.488281
.490234
.492187
.494140
.496093
.498046

DEC.

OCTAL

.000
.001
.002
.003
.004
.005
.006
.007

.000000
.001953
.003906
.005859
.007812
.009765
.011718
.013671

.100
.101
.102
.103
.104
.105
.106
.107

.010
.011
.012
.013
.014
.015
.016
.017

.015625
.017578
.019531
.021484
.023437
.025390
.027343
.029296

.020
.021
.022
.023
.024
.025
.026
.027

OCTAL

DEC.

C-IO

OCTAL-DECIMAL FRACTION CONVERSION TABLE (Cont'd)

OCTAL

DEC.

OCTAL

DEC.

OCTAL

DEC.

OCTAL

DEC.

.000000
.000001
.000002
.000003
.000004
.000005
.000006
.000007

.000000
.000003
.000007
.000011
.000015
.000019
.000022
.000026

.000100
.000101
.000102
.000103
.000104
.000105
.000106
.000107

.000244
.000247
.000251
.000255
.000259
.000263
.000267
.000270

.000200
.000201
.000202
.000203
.000204
.000205
.000206
.000207

.000488
.000492
.000495
.000499
.000503
.000507
.000511
.000514

.000300
.000301
.000302
.000303
.000304
.000305
.000306
.000307

.000732
.000736
.000740
.000743
.000747
.000751
.000755
.000759

.000010
.000011
.000012
.000013
.000014
.000015
.000016
.000017

.000030
.000034
.000038
.000041
.000045
.000049
.000053
.000057

.000110
.000111
.000112
.000113
.000114
.000115
.000116
.000117

.000274
.000278
.000282
.000286
.000289
.000293
.000297
.000301

.000210
.000211
.000212
.000213
.000214
.000215
.000216
.000217

.000518
.000522
.000526
.000530
.000534
.000537
.000541
.000545

.000310
.000311
.000312
.000313
.000314
.000315
.000316
.000317

.000762
.000766
.000770
.000774
.000778
.000782
.000785
.000789

.000020
.000021
.000022
.000023
.000024
.000025
.000026
.000027

.000061
.000064
.000068
.000072
.000076
.000080
.000083
.000087

.000120
.000121
.000122
.000123
.000124
.000125
.000126
.000127

.000305
.000308
.000312
.000316
.000320
.000324
.000328
.000331

.000220
.000221
.000222
.000223
.000224
.000225
.000226
.000227

.000549
.000553
.000556
.000560
.000564
.000568
.000572
.000576

.000320
.000321
.000322
.000323
.000324
.000325
.000326
.000327

.000793
.000797
.000801
.000805
000808
.000812
.000816
.000820

.000030
.000031
.000032
.000033
.000034
.000035
.000036
.000037

.000091
.000095
.000099
.000102
.000106
.000110
.000114
.0001 i8

.000130
.000131
.000132
.000133
.000134
.000135
.000136
.000137

.000335
.000339
.000343
.000347
.000350
.000354
.000358
.000362

.000230
.000231
.000232
.000233
.000234
.000235
.000236
.000237

.000579
.000583
.000587
.000591
.000595
.000598
.000602
.000606

.000330
.000331
.000332
.000333
.000334
.000335
.000336
.000337

.000823
.000827
.000831
.000835
.000839
.000843
.000846
.000850

.000040
.000041
.000042
.000043
.000044
.000045
.000046
.000047

.000122
.000125
.000129
.000133
.000137
.000141
.000144
.000148

.000140
.000141
.000142
.000143
.000144
.000145
.000146
.000147

.000366
.000370
.000373
.000377
.000381
.000385
.000389
.000392

.000240
.000241
.000242
.000243
.000244
.000245
.000246
.000247

.000610
.000614
.000617
.000621
.000625
.000629
.000633
.000637

.000340
.000341
.000342
.000343
.000344
.000345
.000346
.000347

.000854
.000858
.000862
.000865
.000869
.000873
.000877
.000881

.000050
.000051
.000052
.000053
.000054
.000055
.000056
.000057

.000152
.000156
.000160
.000164
.000167
.000171
.000175
.000179

.000150
.000151
.000152
.000153
.000154
.000155
.000156
.000157

.000396
.000400
.000404
.000408
.000411
.000415
.000419
.000423

.000250
.000251
.000252
.000253
.000254
.000255
.000256
.000257

.000640
.000644
.000648
.000652
.000656
.000659
.000663
.000667

.000350
.000351
.000352
.000353
.000354
.000355
.000356
.000357

.000885
.000888
.000892
.000896
.000900
.000904
.000907
.000911

.000060
.000061
.000062
.000063
.000064
.000065
.000066
.000067

.000183
.000186
.000190
.000194
.000198
.000202
.000205
.000209

.000160
.000161
.000162
.000163
.000164
.000165
.000166
.000167

.000427
.000431
.000434
.000438
.000442
.000446
.000450
.000453

.000260
.000261
.000262
.000263
.000264
.000265
.000266
.000267

.000671
.000675
.000679
.000682
.000686
.000690
.000694
.000698

.000360
.000361
.000362
.000363
.000364
.000365
.000366
.000367

.000915
.000919
.000923
.000926
.000930
.000934
.000938
.000942

.000070
.000071
.000072
.000073
.000074
.000075
.000076
.000077

.000213
.000217
.000221
.000225
.000228
.000232
.000236
.000240

.000170
.000171
.000172
.000173
.000174
.000175
.000176
.000177

.000457
.000461
.000465
.000469
.000473
.000476
.000480
.000484

.000270
.000271
.000272
.000273
.000274
.000275
.000276
.000277

.000701
.000705
.000709
.000713
.000717
.000720
.000724
.000728

.000370
.000371
.000372
.000373
.000374
.000375
.000376
.000377

.000946
.000949
.000953
.000957
.000961
.000965
.000968
.000972

C-ll

OCTAL-DECIMAL FRACTION CONVERSION TABLE (Cont'd)

OCTAL

DEC.

OCTAL

DEC.

OCTAL

DEC.

OCTAL

DEC.

.000400
.000401
.000402
.000403
.000404
.000405
.000406
.000407

.000976
.000980
.000984
.000988
.000991
.000995
.000999
.001003

.000500
.000501
.000502
.000503
.000504
.000505
.000506
.000507

.001220
.001224
.001228
.001232
.001235
.001239
.001243
.001247

.000600
.000601
.000602
.000603
.000604
.000605
.000606
.000607

.001464
.001468
.001472
.001476
.001480
.001483
.001487
.001491

.000700
.000701
.000702
.000703
.000704
.000705
.000706
.000707

.001708
.001712
.001716
.001720
.001724
.001728
.001731
.001735

.000410
.000411
.000412
.000413
.000414
.000415
.000416
.000417

.001007
.001010
.001014
.001018
.001022
.001026
.001029
.001033

.000510
.000511
.000512
.000513
.000514
.000515
.000516
.000517

.001251
.001255
.001258
.001262
.001266
.001270
.001274
.001277

.000610
.000611
.000612
.000613
.000614
.000615
.000616
.000617

.001495
.001499
.001502
.001506
.001510
.001514
.001518
.001522

.000710
.000711
.000712
.000713
.000714
.000715
.000716
.000717

.001739
.001743
.001747
.001750
.001754
.001758
.001762
.001766

.000420
.000421
.000422
.000423
.000424
.000425
.000426
.000427

.001037
.001041
.001045
.001049
.001052
.001056
.001060
.001064

.000520
.000521
.000522
.000523
.000524
.000525
.000526
.000527

.001281
.001285
.001289
.001293
.001296
.001300
.001304
.001308

.000620
.000621
.000622
.000623
.000624
.000625
.000626
.000627

.001525
.001529
.001533
.001537
.001541
.001544
.001548
.001552

.000720
.000721
.000722
.000723
.000724
.000725
.000726
.000727

.001770
.001773
.001777
.001781
.001785
.001789
.001792
.001796

.000430
.000431
.000432
.000433
.000434
.000435
.000436
.000437

.00106B
.001071
.001075
.001079
.001083
.001087
.001091
.001094

.000530
.000531
.000532
.000533
.000534
.000535
.000536
.000537

.001312
.001316
.001319
.001323
.001327
.001331
.001335
.001338

.000630
.000631
.000632
.000633
.000634
.000635
.000636
.000637

.001556
.001560
.001564
.001567
.001571
.001575
.001579
.001583

.000730
.000731
.000732
.000733
.000734
.000735
.000736
.000737

.001800
.001804
.001808
.001811
.001815
.001819
.001823
.001827

.000440
.000441
.000442
.000443
.000444
.000445
.000446
.000447

.001098
.001102
.001106
.001110
.001113
.001117
.001121
.001125

.000540
.000541
.000542
.000543
.000544
.000545
.000546
.000547

.001342
.001346
.001350
.001354
.001358
.001361
.001365
.001369

.000640
.000641
.000642
.000643
.000644
.000645
.000646
.000647

.001586
.001590
.001594
.001598
.001602
.001605
.001609
.001613

.000740
.000741
.000742
.000743
.000744
.000745
.000746
.000747

.001831
.001834
.001838
.001842
.001846
.001850
.001853
.001857

.000450
.000451
.000452
.000453
.000454
.000455
.000456
.000457

.001129
.001132
.001136
.001140
.001144
.001148
.001152
.001155

.000550
.000551
.000552
.000553
.000554
.000555
.000556
.000557

.001373
.001377
.001380
.001384
.001388
.001392
.001396
.001399

.000650
.000651
.000652
.000653
.000654
.000655
.000656
.000657

.001617
.001621
.001625
.001628
.001632
.001636
.001640
.001644

.000750
.000751
.000752
.000753
.000754
.000755
.000756
.000757

.001861
.001865
.001869
.001873
.001876
.001880
.001884
.001888

.000460
.000461
.000462
.000463
.000464
.000465
.000466
.000467

.001159
.001163
.001167
.001171
.001174
.001178
.001182
.001186

.000560
.000561
.000562
.000563
.000564
.000565
.000566
.000567

.001403
.001407
.001411
.001415
.001419
.001422
.001426
.001430

.000660
.000661
.000662
.000663
.000664
.000665
.000666
.000667

.001647
.001651
.001655
.001659
.001663
.001667
.001670
.001674

.000760
.000761
.000762
.000763
.000764
.000765
.000766
.000767

.001892
.001895
.001899
.001903
.001907
.001911
.001914
.001918

.000470
.000471
.000472
.000473
.000474
.000475
.000476
.000477

.001190
.001194
.001197
.001201
.001205
.001209
.001213
.001216

.000570
.000571
.000572
.000573
.000574
.000575
.000576
.000577

.001434
.001438
.001441
.001445
.001449
.001453
.001457
.001461

.000670
.000671
.000672
.000673
.000674
.000675
.000676
.000677

.001678
.001682
.001686
.001689
.001693
.001697
.001701
.001705

.000770
.000771
.000772
.000773
.000774
.000775
.000776
.000777

.001922
.001926
.001930
.001934
.001937
.001941
.001945
.001949

C-12

GLOSSARY, INSTRUCTION TABLES and INDEX
GLOSSARy ....................................................................... 1
INSTRUCTION TABLES. . . . . . . . . . .. . .. . .. . . .. . .. .. .. . . .. .. .. .. .. .. . .. . . .. .. .. .. ...
(See Section 7 for detailed instruction and designator descriptions.)
Table 1. Octal Listing of Instructions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Table 2. Alphamnemonic Listing ofInstructions ...................................
Table 3. Function Listing of Instructions ..........................................

7
7
12
17

INDEX ............................................................................ 23

GLOSSARY
A REGISTER - Principal arithmetic register; operates as a 24-bit additive accumulator
(modulus 224-1).
ABSOLUTE ADDRESS-Synonymous with Address.
ACCESS TIME-The time needed to perform a storage reference, either read or write.
In effect, the access time of a computer is one storage reference cycle.
ACCUMULATOR-A register with provisions for the addition of another quantity to
it5 content.
ADDER-A device capable of forming the sum of two or more quantities.
ADDRESS-A 15-bit operand which identifies a particular storage location; a 17-bit
operand which identifies a particular character location in storage.
ADDRESS MODIFICATION Normally tlie derivation of a storage address from the
sum of the execution address and the contents of the specified index register.
AND FUNCTION -A logical function in Boolean algebra that is satisfied (has the value
"I") only when all of its terms are "1's". For any other combination of values it is
not satisfied and its value is "0".
ARGUMENT - An operand or parameter used by a program or an instruction.
ASSEMBLER - A program which translates statements to machine language. Normally,
one source language statement results in the generation of one line of object code.
BASE A quantity which defines some system of representing numbers by positional
notation; radix.
BINARY-CODED DECIMAL (BCD)
are represented by a binary code.

A form of decimal notation where decimal digits

BIT - Binary digit, either "1" or "0".
BLOCK-A sequential group of storage words or characters in storage.
BOOTSTRAP-Any short program which facilitates loading of the appropriate system
executive.
BRANCH - A conditional jump. Refer to Jump.
BREAKPOINT - A point in a routine at which the computer may be stopped by manual
switches for a visual check of progress.
Bl, B2, B3 REGISTERS- Index registers used primarily for address modification
and/or counting.
BUFFER - Any area that is used to hold data temporarily for input or output, normally
storage.
BYTE - A portion of a computer word.
CAP ACITY - The upper and lower limits of the numbers which may be processed in
a register, or the quantity of information which may be stored in a storage unit. If
the capacity of a register is exceeded, an overflow is generated.
CHANNEL-An Input/Output (I/O) transmission path that connects the computer
to an external equipment.
CHARACTER-A group of 6 bits which represents a digit, letter or symbol from the
typewriter.
1

CLEAR - An operation that removes a quantity from a register by placing every stage
ofthe register in the "0" state. The initial contents of the register are destroyed by
the Clear operation.
COMMAND - Synonymous with Instruction.
COMPILER-A program with the compatability to generate more than one line of
machine code (instruction or data word) from one source language statement.
COMPLEMENT-Noun: See One's Complement or Two's Complement. Verb: A command which produces the one's complement of a given quantity.
CONTENT-The quantity or word held in a register or storage location.
CORE - A ferromagnetic toroid used as the bi-stable device for storing a bit in a
memory plane.
COUNTER-A register or storage location, the contents of which may be incremented
or decremented.
D REGISTER-A 4-bit field length register used for BCD operations.
DOUBLE PRECISION - Providing greater precision in the results of arithmetic operations by appending 24 additional bits of lesser significance to the initial operands.
ENTER-The operation where the current contents of a register or storage location are
replaced by some defined operand.
EQUALIZE - Adjusting the operand of the algebraically smaller exponent to equal the
larger, prior to adding or subtracting the floating point coefficients.
EXCLUSIVE OR A logical function in Boolean algebra that is satisfied (has the value
"I") when any of its terms are "I". It is not satisfied when all its terms are "I" or
w hen all its terms are "0".
EXECUTION ADDRESS-The lower 15 or 17 bits of a 24-bit instruction. Most often
used to specify the storage address of an operand. Sometimes used as the operand.
EXIT - Initiation of a second control sequence by the first, occurring when the first is
near completion; the circuit involved in exiting.
F REGISTER-Program Control register. Holds a program step while the single 24-bit
instruction contained in it is executed.
FAULT-Operational difficulty which lights an indicator or for which interrupt may be
selected.
FIXED POINT-A notation or system of arithmetic in which all numerical quantities
are expressed by a predetermined number of digits with the binary point implicitly
located at some predetermined position; contrasted with floating point.
FLIP-FLOP (FF)-A bi-stable storage device. A "I" input to the set side puts the FF
in the "I" state; a "I" input to the clear side puts the FF in the "0" state. The
FF remains in astate indicative of its last "I" input. A stage of a register consists of a FF.
FLOATING POINT A means of expressing a number, X, by a pair of numbers, Yand
Z, such that X = Yn Z • Z is an integer called the exponent or characteristic; n is a base,
usually 2 or 10; and Y is called the fraction or mantissa.
FUNCTION CODE - See Operation Code.
INCREASE - The increase operation adds a quantity to the contents of the specified
register.
INDEX DESIGNATOR-A 2-bit quantity in an instruction; usually specifies an index
register whose contents are to be added to the execution address; sometimes specifies
the conditions for executing the instruction.
2

INDIRECT ADDRESSING-A method of address modification whereby the lower 18
bits ofthe specified address become the new execution address and index designator.
INSTRUCTION - A 24- or 48-bit quantity consisting of an operation code and several
other designators.
INTEGRATED REGISTER FILE - The upper 6410 locations of core storage. Reserved
for special operations with block control.
INTERR UPT - A signal which results in transfer of control, following completion of the
current instruction cycle, to a fixed storage location.
INTERRUPT REGISTER-A 24-bit register whose individual bits are set to "I" by
the occurrence of specific interrupt conditions, either internal or external.
INTERRUPT MASK REGISTER-A 24-bit register whose individual bits match those
ofthe Interrupt register. Setting bits of the Interrupt Mask register to "1's" is one
of the conditions for selecting interrupt.
INVERTER-A circuit which provides as an output a signal that is opposite to its
input. An inverter output is "I" only if all the separate OR inputs are "0".
JUMP - An instruction which alters the normal sequence control of the computer and,
conditionally or unconditionally, specifies the location of the next instruction.
LIBRARY - Any collection of programs (routines) and/or subprograms (subroutines).
LOAD - The Load operation is composed of two steps: a) The register is cleared, and
b) The contents of storage location M are copied into the cleared register.
LOCATION - A storage position holding one computer word, usually designated by a
specific address.
LOGICAL PRODUCT-In Boolean algebra, the AND function of several terms. The
product is "I" only when all the terms are "I"; otherwise it is "0". Sometimes
referred to as the result of bit-by-bit multiplication.
LOGICAL SUM-In Boolean algebra, the OJR function of several terms. The sum is
"1" when any or all of the terms are "I"; it is "0" only when all are "0".
LOOP-JRepetition of a group of instructions in a routine.
MACRO CODE-A method of defining a subroutine which can be generated and/or
inserted by the assembler.
MASK-In the formation of the logical product of two quantities, one quantity may
mask the other; i.e., determine what part of the other quantity is to be considered.
If the mask is "0", that part of the other quantity is unused; if the mask is "1", the
other quantity is used.
MASTEJR CLEAR-A general command produced by pressing one of two switches:
a) Internal Master Clear- Clears all operational registers and control FF's in the
processor. b) External Master Clear - Clears all external equipments and the communication channels.
MNEMONIC CODE-A three- or four-letter code which represents the function or
purpose of an instruction. Also called Alphabetic Code.
MODULUS-An integer which describes certain arithmetic characteristics of registers,
especially counters and accumulators, within a digital computer. The modulus of a
device is defined by rn for an open-ended device and rn_l for a closed (end-around)
device, where r is the base of the number system used and n is the number of digit
positions (stages) in the device. Generally, devices with modulus rn use two's complement arithmetic; devices with modulus rn_l use one's complement.
3

NORMALIZE-To adjust the exponent and mantissa of a floating point result so that
the mantissa lies in the prescribed standard (normal) range.
NORMAL JUMP-An instruction that jumps from one sequence of instructions to a
second, and makes no preparation for returning to the first sequence. Also referred
to as an Unconditional Jump.
NUMERIC CODING A system of abbreviation in which all information is reduced to
numerical quantities. Also called Absolute or Machine Language coding.
OBJECT PROGRAM-The machine language version of the source program.
ONE'S COMPLEMENT- With reference to a binary number, that number which
results from subtracting each bit of a given number from "1". The one's complement
of a number is formed by complementing each bit of it individually, that is, changing
a "1" to "0" and a "0" to a "1". A negative number is expressed by the one's complement of the corresponding positive number.
ON -LINE OPERATION - A type of system application in which the input or output
data to or from the system is fed directly from or to the external equipment.
OPERAND- Usually refers to the quantity specified by the execution address.
OPERATION CODE (Function Code)-A 6-bit quantity in an instruction specifying
the operation to be performed.
OPERATIONAL REGISTERS-Registers which are displayed on the operator's section of the console.
OR FUNCTION - A logical function in Boolean algebra that is satisfied (has the value
"1") when any of its terms are "1". It is not satisfied when all terms are "0". Often
called the inclusive OR function.
OVERFLOW - The capacity of a register is exceeded.
PARAMETER-An operand used by a program or subroutine.
PARITY CHECK-A summation check in which the binary digits in a character are
added and the sum checked against a previously computed parity digit; i.e., a check
which tests whether the number of ones is odd or even.
P REGISTER-The Program Address Counter (P register) is a one's complement
additive register (modulus 2 15 _1) which defines the storage addresses containing the
individual program steps.
PROGRAM-A precise sequence of instructions that accomplishes the solution of a
problem. Also called a routine.
PSEUDO CODE - A statement requesting a specific operation by the assembler or compiler.

Q REGISTER-Auxiliary 24-bit arithmetic register which assists the A register in the
more complicated arithmetic operations.
RADIX- The number of different digits that can occur in a digit position for a specific
number system. It may be referred to as the base of a number system.
RANDOM ACCESS-Access to storage under conditions in which the next position from
which information is to be obtained can be independent of the previous one.
READ - To remove a quantity from a storage location.
REGISTER-The internal logic used for temporary storage or for holding a quantity
during computation.
REJECT - A signal generated under certain circumstances by either the external equipment or the processor during the execution of Input/Output instructions.
4

REPLACE- When used in the title of an instruction, the result of the execution of the
instruction is stored in the location from which the initial operand was obtained.
When replace is used in the description of an instruction, the contents of a location
or register are substituted by the operand. The Replace operation implies clearing the
register or portion of the register in preparation for the new quantity.
REPL Y - A response signal in I/O operations that indicates a positive response to some
previous operation or request signal.
RETURN JUMP - An instruction that jumps from a sequence of instructions to initiate
a second sequence and prepares for continuing the first sequence after the second is
completed.
ROUTINE - The sequence of operations which the computer performs, also called a
program.
SCALE FACTOR- One or more coefficients by which quantities are multiplied or
divided so that they lie in a given range of magnitude.
S REGISTER- The 13-bit S register displays the address of the word.
SHIFT-To move the bits of a quantity right or left.
SIGN BIT - In registers where a quantity is treated as signed by use of one's complement notation, the bit in the highest order stage ofthe register. If the bit is "1", the
quantity is negative; if the bit is "0", the quantity is positive.
SIGN EXTENSION -The duplication of the sign bit in the higher order stages of a
register.
SOFTWARE-Programs and/or subroutines.
SOURCE LANGUAGE-The language used by the programmer to define his program.
STAGE-The FFs and inverters associated with a bit position of a register.
STATUS-The state or condition of circuits within the processor, I/O channels, or
external equipment.
STO RE - To transmit information to a device from which the unaltered information can
later be obtained. The Store operation is essentially the reverse of the Load operation. Storage location M is cleared, and the contents of the register are copied into M.
SUBROUTINE - A set of instructions that is used at more than one point in program
operation.
SYMBOLIC CODING-A system of abbreviation used in preparing information for
input into a computer; e.g., Shift Q would be SHQ.
TOGGLE - To complement each specified bit of a quantity, i,e.: "1" to "0" or "0" to "1".
TRANSMIT (Transfer) - The term transfer implies register contents are moved; i.e.,
the contents of register 1 are copied into register 2. Unless specifically stated, the
contents are not changed during transmission. The term transmit is often used
synonymously with transfer.
TWO'S COMPLEMENT-Number that results from subtracting each bit of a number
from "0". The two's complement may be formed by complementing each bit of the
given number and then adding one to the result, performing the required carries.
UNDERFLOW - An illegal change of sign from - to +, e.g., subtracting from a quantity
such that the result would be less than - (2n-l), where n is the modulus. In floating
point notation, this occurs where the value of the exponent becomes less than
2- 10 +1(-17778).
5

WORD - The content of a storage location. It can be an instruction or 24 bits of data.
WRITE - To enter a quantity into a storage location.
X RE G ISTER - An arithmetic transfer register. N onaddressable and nondisplayed.
Z REGISTER - A 28-bit storage data register. Receives the data and parity bits as
they are read from storage or written into storage. Nonaddressable but displayed
on the 'T' panel in the storage module.

6

TABLE 1. OCTAL LISTING OF INSTRUCTIONS
OCTAL
OPERATION
CODE

MNEMONIC
CODE

ADDRESS
FIELD

INSTRUCTION DESCRIPTION

PAGE
NO.

0..

7-30
7-31
7 -31
7-31
7-31
7-31
7-31

Unconditional stop, RNI

m upon restarting

SJ1

m
m

If jump key 1 is set. jump to m

SJ2

m

If jump key 2 is set. jump to m

SJ3

If jump key 3 is set, jump to m

SJ5

m
m
m

SJ6

m

If jump key 6 is set. jump to m

RTJ

m

P + 1 --. m (address portion). RNI
to m for P
1

01
02.0
02.1-3

UJP.I

m,b

Unconditional jump to m

02.4
02.5-7

No operation (see 14.0)
IJD

m.b

03.0
03.1
03.2
03.3
03.4
03.5
03.6
03.7
04.0
04.1-3
04.4

AZJ.EQ

m

04.5

00.0
00.1
00.2
00.3
00.4
00.5
00.6
00.7

HLT

SJ4

If jump key 4 is set, jump to m
If jump key 5 is set. jump to m

+

No operation (see 14.0)

IJI

I

m,b

b
If (B ) = 0, RNI
RNI @ m

0..

m +1. return

7-32
7-32

® P + 1; if (B b) r!- 0, (B b) - 1 ---; B~
7-33

If (B b) = 0, RNI @ P
RNI @ m

+ 1; if (B b) r!- 0,

b
(B ) -

,

1

AQJ.LT

m

+1
If (A) r!- O. RNI 0.. m, otherwise RNI 0.. P + 1
If (A) 2: 0, RNI @ m, otherwise RNI @ P + 1
If (A) < 0, RNI 0.. m. otherwise RNI 0.. P + 1
If (A) = (Q), RNI 0.. m. otherwise RNI 0.. P + 1
If (A) r!- (Q). RNI @ m, otherwise RNI 0.. P + 1
If (A) 2: (Q). RNI 0.. m, otherwise RNI @ P + 1
If (A) < (Q). RNI 0.. m, otherwise RNI @ P + 1

ISE

If y

=

0, RNI @ P + 2, otherwise RNI @ P +1

ISE

Y
y,b

If y

=

(B

RNI @ P

RNI

ASE.S

y

If y = (A). RNI @ P
Sign of y is extended

RNI

QSE.S

y

If y = (Q). RNI @
Sign of y is extended

RNI @

AZJ.NE

m

AZJ.GE

m

AZJ.LT
AQJ.EQ

m
m

AQJ.NE

m

AQJ.GE

m

If (A) = 0, RNI @ m, otherwise RNI @ P

b
).

+ 2, otherwise
+ 2, otherwise
P + 2. otherwise

0..
0..

+1
+ 1.
P + 1.

P

+

® P + 1.

+

+ 1.

y

If y = (A), RNI @ P
2, otherwise RNI
Lower 15 bits of A are used

04.7

QSE

y

If y = (Q). RNI @ P
2, otherwise RNI @ P
Lower 15 bits of Q are used

+ 2, otherwise RNI @ P + 1
+ 2. otherwise RNI @ P + 1
P + 2, otherwise RNI @ P + 1.

Y
y,b

If Y

ISG
ASG.S

y

If (A) 2: y. RNI @

05.5

QSG,S

y

If (Q) 2: y, RNI @ P

05.6
05.7
06.0-7

ASG

y

Sign of y is extended
If (A) 2: y, RNI @ P
2. otherwise RNI

QSG

y

MEQ

m.i

(B

b

)

=

0, RNI @ P

2: y, RNI

0..

P

MTH

m.i

+ 2,

otherwise RNI @ P

SSH

m

+
P + 2, otherwise

+1
If (Q) 2: y, RNI @
RNI @ P + 1
(B1) - i ---; B1; if (B1) negative, RNI @ P + 1; if (B1)
positive, test (A) = (Q) 1\ (M).if true RNI 0.. P + 2;
if false, repeat sequence
(B2) - i ---; B2; if (B2) negative, RNI @ P + 1; if (B2)
positive, test (A) 2: (Q) 1\ (M). if true. RNI @ P + 2;
0..

P

lSI

y,b

+

7-54

+

+

7

7-14
7 -14
7-14

7-55

Test sign of (m). shift (m) left one place end around
and replace in storage. If sign negative, RNI 0.. P
2;
otherwise RN I 0.. P
1
b
If (B b) = y, clear Bb and RNI @ P
2; if (B ) r!- y,
(B b)
1 ---; B b, R N I @ P
1

+

10.1-3

7-13
7-14
7-14

+ 1.

if false, repeat sequence

10.0

7-13

7 -14

Sign of y is extended

07.0-7

7 -13
7-13

ASE

ISG

7-34
7-35
7-35
7-35
7-35
7-36
7-36
7-36
7-36
7-13
7-13

P

04.6

05.0
05.1-3
05.4

b

B,

+

7-50
7-19
Rev. F

TABLE 1. OCTAL LISTING OF INSTRUCTIONS (CONTINUED)
OCTAL
OPERATION
CODE

PAGE
NO.

INSTRUCTION DESCRIPTION

MNEMONIC
CODE

ADDRESS
FIELD

10.4

ISD

y, b

Skip next instruction if Y = 0

10.5-7

ISD

Y,b

If lsb) = y, cl~ar Sb and RNI @ P
1
(S ) - 1 ---> Sand RNI @ P

7-19

+

+ 2;

if (Sb) ~ y,

7-19
7-15
7-15

z ---> A. lower 17 bits of A are used
z ---> A, sign of z extended

11.0
11.4
12.0-3

ECHA

z

ECHA,S

z

SHA

Y,b

12.4-7

SHQ

Y,b

13.0-3

SHAQ

y,b

13.4-7

SCAQ

y,b

14.0

No operation

14.1-3
14.4

ENI

y,b

Clear Sb, enter y

7-15

ENA,S

Y

Clear A, enter y, sign extended

14.5
14.6
14.7
15.0
15.1-3

ENQ,S

Y

Clear Q, enter y, sign extended

ENA

Y

Clear A, enter y

ENQ
No operation
INI

Y

Clear Q, enter y

7-15
7-15
7-15
7-15

y,b

Increase (Sb) by y, signs of y and Sb are extended

15.4
15.5

INA,S

Y

Increase (A) by y, sign extended

INQ,S

Y

Increase (Q) by y, sign extended

15.6
15.7
16.0
16.1 -3

INA

Y
Y

Increase (A) by Y

XOI

y,b

16.4

XOA,S

y

16.5

XOQ,S

Y

16.6
16.7

XOA

y

XOQ

Y

V
YV
y V
y V
y V

17.0
17.1-3

No operation

INQ
No operation

+

Shift (A). Shift count K = k
(Sb) (signs of k and Sb
extended). If bit 23 of K = "1 ", shift right; complement of lower 6 bits equal shift magnitude. If
bit 23 of K = "0", shift left and lower 6 bits equal
shift magnitude. Left shifts end around; right shifts
end off
Shift (Q). Shift count K = k
(Sb) (signs of k and Sb
extended). If bit 23 of K = "1", shift right; complement of lower 6 bits equal shift magnitude. If
bit 23 of K = "0", shift left; lower 6 bits equal shift
magnitude. Left shifts end around; right shifts end off
Shift (AQ) as one register. Shift count K = k
(Sb)
(signs of k and Sb extended). If bit 23 of K = "1",
shift right; complement of lower 6 bits equal shift
magnitude. If bit 23 of K = "0", shift left; lower 6
bits equal shift magnitude. Left shifts end around;
right shifts end off

+

+

Shift (AQ) left end around until upper 2 bits of A are
unequal. Residue K = k - shift count. If b = 1, 2,
or 3, K ---> Sb; if b = 0, K is discarded

7-50

7-52

7-52

7-52

No operation (COMPASS assembled NOP)

Increase (Q) by Y
y

(Sb)
(A)

Sb

--->

--->

A. Sign of y extended

(Q)

--->

Q. Sign of y extended

(A)

--->

A, no sign extension

(Q)

--->

Q, no sign extension

7-16
7-16
7-17
7-17
7-17
7-17
7-17

ANI

y,b

y /\ (Sb)

17.4
17.5
17.6

ANA,S

Y

Y /\ (A)

--->

ANQ,S

Y

y /\ (Q)

--->

Q, sign of y extended

ANA

Y

y /\ (A)

--->

A, no sign extension

17.7
20
21

ANQ
LDA,I

Y

y /\ (Q)

--->

Q, no sign extension

m,b

(M)

LDQ,I

m,b

(M)

22

LACH

r,l

(R)

--->

A. Load lower 6 bits of A

7-20

23
24

LQCH

r,2

(R)

--->

Q. Load lower 6 bits of Q

7-22

LCA,I

m,b

(M)

A

7-21

Rev. F

--->
--->

--->

--->

Sb

7-16
7-16
7-16

A. sign of y extended

A
Q

8

7-18
7-18
7-18
7-18
7-18
7-20
7-22

TABLE 1. OCTAL LISTING OF INSTRUCTIONS (CONTINUED)
OCTAL
OPERATION
CODE

25
26
27
30
31
32
33
34
35

MNEMONIC
CODE

LDAO,I
LCAO,I

INSTRUCTION DESCRIPTION

ADDRESS
FiElD

m,b

(M)->A, (M

m,b

(M)->A, (M

+ 1)->0
+ 1)->0

LDU

m,b

(M) 1\ (0) -> A

ADA,I

m,b

Add (M) to (A) -> A

SBA,I

m,b

(A) minus (M) -> A

ADAO,I

m,b

Add (M,M

SBAO,I

m,b

(AO) minus (M,M

+ 1) to (AO) -> AO
+ 1) -> AO

RAD,I

m,b

Add (M) to (A) -> (M)

SSA,I

m,b

Where (M) contains a "1" bit, set the corresponding
bit in A to "1"

36

SCA.I

m,b

Where (M) contains a "1" bit, complement the corresponding bit in A

37
40
41
42
43
44
45
46
47
50

LPA,I

m,b

(M) 1\ (A) -> A
(A)->(M)

51
52

53
53
53
53
53
53
53
53
53
53
53

STA,I

m,b

STO,I

m,b

(O)->(M)

SACH

(AOO.05) -> R

SOCH

r,2
r,1

(000·05)

SWA,I

m,b

(AOO·14) -> (MOO·14)

STAO,I

m,b

(AO) -> (M,M

SCHA.I

m,b

STI,I

m,b

(AOO·16) -> (MOO-16)
b
(B ) -> (MOO-14)

MUA.I

m,b

Multiply (A) by (M) -> ~A.
product in A

DVA,I

m,b

(A) -;- (M) -> A. remainder -> 0

CPR,I

m,b

R

+ 1)

+
+

TIA

b

(M) > (A)' RNI @ P
1
(0) > (M), RNI @ P
2
(A) ~ (M) ~ (0)' RNI @ P
b
Clear (A).(B ) -> AOO-14

TAl

b

(AOO-14) -> Bb

TMO

v

(v)->O

TOM

v

(0) ->V

TMA

v

(v)->A

TAM

v

(A)->v

TMI

v,b

TIM

v,b

(VOO-14) -> Bb
b
(B ) -> VOO-14

AOA
AlA
IAI

b
b

PAGE
NO.

7-21
7-21
7-21
7-38
7-39
7-40
7-40
7-38
7-37

7-37
7-37
7-23
7-24
7-23
7-24
7-25
7-24
7-25
7-25

Lowest order bits of

7-39
7-39
}

+3

(A) and (Q)

7-53
are unchanged

Add (A) to (0) -> A
b
Add (A) to (B ) -> A
b
Add (A) to (B ) -> Bb Sign of Bb extended prior to
addition

7-27
7-27
7-27
7-27
7-28
7-28
7-28
7-28
7-26
7-26
7 -26

All other combinations of 53.00-77 are undefined
and will be rejected by the assembler

54
55.0
55.1
55.2
55.3
55.4
55.5
55.6
55.7

(MOO-14) -> Bb

7-22

ELO

(EL) -> 0

EUA

(EU) ->A

EAO

(EUEL) ->AO

7-29
7-29
7-29

LOI,I

m,b

No operation

No operation
OEL

(0) -> EL

7-29

AEU

(A) -> EU

AOE

(AO) -> EUEL

7-29
7-29

9

Rev, F

TABLE 1. OCTAL LISTING OF INSTRUCTIONS (CONTINUED)
OCTAL
OPERATION
CODE

MNEMONIC
CODE

PAGE
NO.

INSTRUCTION DESCRIPTION

ADDRESS
FiElD

+ 1) ---> AQE

7-42

56

MUAQ.I

m.b

Multiply (AQ) by (M.M

57

DVAQ

m.b

(AQE) -7- (M.M
1) ---> AQ and remainder with sign
extended to E. Divide fault halts operation and program advances to next instruction

60

FAD.I

m.b

61

FSB.I

m.b

62

FMU.I

m.b

63

FDV.I

m.b

+

+ 1) to (AQ) ---> AQ
Floating point subtraction of (M.M + 1) from (AQ)--->AQ
Floating point multiplication of (AQ) and (M.M + 1)
---> AQ
Floating point division of (AQ) by (M.M + 1) ---> AQ.
Floating point addition of (M.M

7-42
7-43
7-44
7-44
7-44

remainder with sign extended to E
LDE

64

r.1

Load E with up to 12 numeric BCD characters from
storage. BCD field length is specified by (D). Characters are read consecutively from least significant
character at address (R
(D) - 1) until the most
significant character at address R is in E. (E) is shifted
right as loading progresses. The sign of the field is
acquired along with the least significant character

7-48

+

65

STE

r.2

Store up to 13 numeric BCD characters from E. Least
significant character is stored at R
(D) - 1 continuing back to most significant character stored in R

7-48

66

ADE

r.3

Up to twelve 4-bit characters (most significant character at address R) are added to (E). Sum appears in
E. (D) register specifies field length

7-47

67

SBE

r.3

Up to twelve 4-bit characters (most significant character at address R) are subtracted from (E). Difference
appears in E. (D) specifies field length

7-47

70.0-3

SFE

y.b

Shift E in one character (4 bit) steps. Left shift: bit
23 = "0". magnitude of shift = lower 4 bits of K = k
b
(B ). Right shift: bit 23 = "1". magnitude of shift
b
= lower 4 bits of complement of K = k
(B )

7-49

+

+

+

,c. O.

+1

70.4

EZJ.EQ

m

(E) = O. jump to m; (E)

70.5

EZJ.LT

m

(E)

70.6

EOJ

m

Jump to m if E overflows. otherwise RNI @ P

70.7

SET

y

Set (D) with lower 4 bits of y

7-46

7-56

< O.

RNI @ P

jump to m; (E) ~ O. RNI @ P

+1

7-49

+1

71

***

SRCE.INT

c.r.s

Search for equality of character c in a list beginning
at location r until an equal character is found, or until
character location s is reached; 0 ::; c ::; 6310

71

****

SRCN.INT

c.r.s

MOVE.INT

c.r.s

Same as SRCE except search condition is for inequality
Move c characters from r to s; 1 ::; c ::; 12810

INPC.INT.

ch.r.s

72
73

**

73

*

B.H

74

**

INAC.INT
INPW.INT.
B.N

ch
ch.m.n

7-49
7-49

7-56
7-58

A 6- or '12-bit character is read from peripheral device
and stored in memory at a given location
(A) is cleared and a 6-bit character is transferred from
a peripheral device to the lower 6 bits of A

7-80

Word address is placed in bits 00-14. 12- or 24-bit
words are read from a peripheral device and stored
in memory

7-74

7-72

74

*

INAW.INT

ch

(A) is cleared and a 12- or 24-bit word is read from a
peripheral device into the lower 12 bits or all of A
(word size depends on 1/0 channel)

7-82

75

**

OUTC.INT.

ch.r.s

Storage words disassembled into 6- or 12-bit characters
and sent to a peripheral device

7-76

75

*

OTAC.INT

ch

Character from lower 6 bits of A is sent to a peripheral
device. (A) retained

7-84

76

**

OUTW.INT
B.N

ch.m.n

Words read from storage to a peripheral device

7-78

B.H

*7 -bit operation code. bit 17 = "1 "
**7 -bit operation code. bit 17 = "0"
Rev. F

10

***7 -bit operation code. bit 17 in P
****7 -bit operation code, bit 17 in P

+1=
+1 =

"0"
"1 "

TABLE 1. OCTAL LISTING OF INSTRUCTIONS (CONTINUED)
OCTAL
OPERATION
CODE

*

MNEMONIC
CODE

ADDRESS
FiElD

INSTRUCTION DESCRIPTION

PAGE
NO.

OTAW,INT

ch

Word from lower 12 bits or' all of A (depending on
type of liD channel) sent to a peripheral device

7-86

77.0

CON

x,ch

If channel ch is busy, reject instruction, RNI (Q, P + 1
If channel ch is not busy, 12-bit connect code sent on
channel ch with connect enable, R N I Cit P + 2

7 -70

77.1

SEl

x,ch

If channel ch is busy, read reject instruction from
P + 1. If channel ch is not busy, a 12-bit function
code is sent on channel ch with a function enable,
RNI @ P + 2

7-70

77.2

EXS

x,ch

Sense external status if "1" bits occur on status lines
in any of the same positions as "1" bits in the mask,
RNI Cit P + 1. If no comparison, RNI (Q, P + 2

7-60

77.2

COpy

ch

External status code from liD channel ch -> lower
12 bits of A, contents of interrupt mask register->
upper 12 bits of A; RNI @ P + 1

7-60

77.3

INS

x,ch

Sense internal status if "1" bits occur on status lines
in any of the same positions as "1" bits in the mask,
RNI @ P + 1. If no comparison, RNI @ P + 2

7-62

77.3

CINS

ch

Interrupt mask and internal status to A

7-62

77.4

INTS

x,ch

Sense for interrupt condition; if "1" bits occur simultaneously in interrupt lines and in the interrupt mask,
RNI @ P + 1; if not, RNI @ P + 2

77.50

INCl

x

77.51

10Cl

x

Interrupt faults defined by x are cleared
Clears I/O channel or search/move control as defined
by bits 00-07, 08 and 11 of x,

7 -63

77.511

CllO

cm

lockout external interrupts while
channel(s) are busy.

7-69

77.512

ClCA

cm

77.52

SSIM

x

Clear channel activity, not
peripherals.
Selectively set interrupt mask register for each "1"
bit in x. The corresponding bit in the mask register
is set to "1"

77.53

SCIM

x

77.54-56
77.57

No operation
IAPR

77.6

PAUS

x

77.61

PRP

x

77.70

SlS

77.71

SFPF

Set floating point fault logic

77.72

SBCD

Set BCD fault logic

7 -67

77.73

DINT

Disables interrupt control

7-67

77.74

EINT

Interrupt control is enabled, allows one more instruction to be executed before interrupt

7 -67

77.75

CTI

Set Type In }

77.76

CTO

Set Type Out

77.77

UCS

Unconditional stop.

76

Selectively clear interrupt mask register for each" 1"
bit in x. The corresponding bit in the mask register
is set to "0"
Interrupt associated processor
Sense busy lines. If" 1" appears on a line corresponding to" 1 " bits in x, do not advance P. If P is inhibited
for longer than 40 ms, read reject instruction from
P+ 1. If no comparison, RNI (Q, P+2
Same as PAUS, except real-time
clock is prevented from incrementing.
Program stops if Selective Stop switch is on; upon
restarting, RNI Cit P + 1

11

Beginning character address must be
present in location 23 of register file
and last character
address + 1 must be preset in location 33 of the file
Upon restarting, RNI @ P+ 1

7-61
7-65

7-69

7 -66

7 -66
7 -66

7-64

7-64
7-31
7 -67

7 -71

7-31

Rev.H

TABLE 2. ALPHAMNEMONIC LISTING OF INSTRUCTIONS

MNEMONIC
CODE

OCTAL
OPERATION
CODE

ADA.I
ADAQ.I
ADE

30
32
66

AEU
AlA
ANA
ANA.S
ANI
ANQ
ANQ.S
AQA
AQE
AQJ.EQ
AQJ.GE
AQJ.LT
AQJ.NE
ASE

55.6
53.(0+b)4
17.6
17.4
17.1-3
17.7
17.5
53.04
55.7
03.4
03.6
03.7
03.5
04.6

ASE.S

04.4

ADDRESS
FIELD

m.b
m.b
r.3

Y

Y /\ (Q) -; Q. no sign extension

Y

Y /\ (Q) -> Q. sign of y extended

Add (A) to (Q) -; A
m
m
m
m
y
y
y
y

AZJ.EQ
AZJ.GE
AZJ.LT
AZJ.NE

03.0
03.2
03.3
03.1

CllO

77.511

m
m
m
m
cm

CINS

77.3

ch

ClCA

77.512

cm

CON

77.0

x.ch

COPY

77.2

ch

CPR.I

52

m,b

CTO
DINT
DVA.I
DVAQ

77.76
77.73
51
57

EAQ
ECHA
ECHA.S
EINT

55.3
11.0
11.4
77.74

Up to twelve 4-bit characters (most significant character at address R) is added to (E). Sum appears in E.
(D) specifies field length
(A)-> EU
Add (A) to (Bb) -> A
y /\ (A) -> A. no sign extension
y /\ (A) -; A. sign of y extended
Y /\ (B b) -; Bb

05.6
05.4

77.75

7-38
7-40

Add (M) to (A) -> A
Add (M.M + 1) to (AQ) -> AQ

b
y
y
y.b

ASG
ASG.S

CTI

PAGE
NO.

INSTRUCTION DESCRIPTION

(AQ) -; EUEL
If (A) = (Q). RNI @ m.
If (A) ~ (Q). RNI @ m.
If (A) < (Q). RNI @ m.
If (A) ~ (Q). RNI @ m.
If y = (A). RNI @ P +
lower 15 bits of A are
If y = (A). RNI @ P +
Sign of y is extended.

z
z

P+
P+
P+
P+

1
1
1
1
@ P+ 1

7-13
@ P+ 1

7-13

If (A) ~ y. RNI @ P+2. otherwise RNI @
If (A) ~ y. RNI @ P+2. otherwise RNI @
Sign of y is extended
If (A) = O. RNI @ m. otherwise RNI @ P +
If (A) ~ O. RNI @ m. otherwise RNI @ P +
If (A) < O. RNI @ m. otherwise RNI @ P +
If (A) ~ O. RNI @ m. otherwise RNI @ P +
lockout external interrupts while
channel(s) are busy.
Interrupt mask and internal status to A

P+ 1
P+ 1
1
1
1
1

Clear channel activity, not
peripherals.
If channel ch is busy. reject instruction. RN I @ P + 1
If channel ch is not. busy. 12-bit connect code sent on
channel ch with connect enable. RNI @ P + 2
External status code from I/O channel ch to lower
12-bits of A. contents of interrupt mask register to
upper 12-bits of A. RNI @ P
1

+

+

(M( > (AI. RN' @ P
1
}.
(Q) > (M). RNI @ P + 2
(A) and (Q)
(A) ~ (M) ~ (Q). RNI @ P + 3
are unchanged

Sot Typ'

m.b
m.b

otherwise RNI @
otherwise RNI @
otherwise RNI @
otherwise RNI @
2. otherwise RNI
used
2. otherwise RNI

7-47
7-29
7-26
7 -18
7 -18
7-18
7-18
7-18
7-26
7-29
7-36
7-36
7-36
7-36

7-14
7-14
7-35
7-35
7-35
7-35
7-69
7-62
7-69

7-70

7-60
7-53

'0 } preset
B,g'oo'o. 'h""", ,ddee" m"" b,
in location 23 of register file

and last character address + 1 must
Set Type Out be preset in location 33 of the file
Disables interrupt .control
(A) +- (M) -> A. remainder -; Q
(AQE) +-(M.M + 1) -> AQ and remainder with sign
extended to E. Divide fault halts operation and program advances to next instruction
(EUEU -;AQ
z -; A. lower 17 bits of A are used
z -> A. sign of z extended
Interrupt control.is enabled. Allows one more instruction to be executed before interrupt

7"71
7-67
7-39

7-42
7-29
7-15
7-15
7-67

TABLE 2. ALPHAMNEMONIC LISTING OF INSTRUCTIONS (CONTINUED)

MNEMONIC
CODE

OCTAL
OPERATION
CODE

PAGE
NO.

INSTRUCTION DESCRIPTION

ADDRESS
FIELD

(El)~Q

7-29

y

Clear A, enter y

7-15

Y

Clear A, enter y, sign extended

7-15

y,b

Clear B

ElQ

55.1

ENA

14.6

ENA.S

14.4
14.1-3
14.7

y

Clear Q, enter y

7-15

ENQ.S

14.5

y

Clear Q, enter y, sign extended

7-15

EOJ

70.6

m

Jump to m if E overflows, otherwise RNI  AQ

7-43

FDV,I

63

m,b

Floating point division of (AQ) by (M,M + 1) --> AQ
Remainder with sign extended to E

7-44

FMU,I

62

m,b

Floating point multiplication of (AQ) and (M,M + 1)
~AQ

7-4Lj.

FSB,I

61

m,b

Floating point subtraction of (M,M + 1) from (AQ)-->AQ

7-44

HlT

00.0

m

53 (4+b)4

b

Unconditional stop, RNI  B ,
RNI (g m
b
b
b
b
If (B ) = O. RNI QJ. P + 1; if (B ) o;L 0, (B ) + 1 -; B ,
RNI QJ m

ENI
ENQ

(E)

m,b

<

b

,

7-15

enter y

0, jump to m; (E) :2: 0, RNI QJ P + 1

7-49

7-26

7-34

IJI

02.1-3

m,b

INA

15.6

y

Increase (A) by y

7-16

INA.S

15.4

7 -16

73

*

Y
ch

Increase (A) by y, sign of y is extended

INAC,INT

(A) is cleared and a 6-bit character is transferred from
a peripheral device to the lower 6 bits of A

7-80

INAW,INT

74

*

ch

(A) is cleared and a 12- or 24-bit word is read from
a peripheral device into the lower 12 bits or all of A
(word size depends on liD channel)

7-82

INCl

77.50

x

INI

1 5.1 -3

y,b

Interrupt faults defined by x are cleared
Increase (B b) by y, signs of y and Bb are extended

INPC,INT,B,H

73 **

ch,r,s

A 6- or 12-bit character is read from a peripheral
device and stored in memory at a given location

7-72

ch,m,n

Word Address is placed in bits 00-14, 12- or 24-bit
words are read from a peripheral device and stored
in memory

7-74

INPW,INT.B,N 74

**

7-33

7-65
7-16

INQ

15.7

y

Increase(Q)byy

7-16

INQ,S

15.5

Increase (Q) by y, sign of y is extended

7 -16

INS

77.3

Y
x,ch

Sense internal status if" 1 " bits occur on status lines
in any of the same positions as "1" bits in the mask,
RNI QJ P+ 1. If no comparison, RNI @ P+2

7-62

INTS

77.4

c,ch

Sense for interrupt condition; if "1" bits occur simultaneously in interrupt lines and in the interrupt mask,
RNI ~L P + 1, if not, RNI  B , RNI @ P + 1
(R) -> A; load lower 6 bits of A
(M)->A
(M)->A, (M + 1)->Q
(M)->A
(M)->A, (M + l)->Q
Load E with up to 12 numeric BCD characters from
storage. BCD field length is specified by (D) register.
Characters are read consecutively from least significant character at address (R + (D) -1) until the most
significant character at address M is in E. (E) is shifted
right as loading progresses. The sign of the field is
acquired along with the least significant character
(Moo-14) -> Bb
(M) A (Q)->A
(M)->Q
(M) A (A)->A
(R) -> Q; load lower 6 bits of Q
(B1) - i -> B1; if (B1) negative, RNI @ P + 1; if (8 1)
positive, test (A) = (Q) 1\ (M); if true, RNI @ P + 2,
if false, repeat sequence
Move c characters from r to s; I ~ c ~ 12810
(B2) - i -, B2; if (B2) negative, RNI @ P + 1; if (B2)
positive, test (A) ~ (Q) A (M); if true, RNI @ P + 2;
if false, repeat sequence
Multiply (A) by (M) -> QA; lowest order bits of product in A

50

m,b

MUAQ,I

m,b

OTAC,INT

56
75*

ch

OTAW,INT

76*

ch

OUTC,
INT,B,H

75

OUTW,
INT,B,H

76*"

ch,m,n

Words read from storage to peripheral device

PAUS

77.6

x

PRP

77.61

x

QEL
QSE

55.5
04.7

y

QSE,S

04.5

y

QSG

05.7

y

Sense busy lines. If" 1 " appears on a line corresponding to "1" bits in x, do not advance P. If P is inhibited
for longer than 40 ms, read reject instruction from
P + 1. If no comparison, RNI @ P + 2
Same as PAUS except real-time
clock is prevented from incrementing.
(Q) -> EL
If y = (Q). RNI @ P + 2, otherwise RNI@P+l;
lower 15 bits of Q are used
If y = (Q). RNI @ P + 2, otherwise RNI @ P + 1
Sign of y is extended
If (Q) ~ y, RNI @ P + 2, otherwise RNI @ P + 1

ch,r,s

*7 -bit operation code, bit 17 = ''1''
Rev. H

Multiply (AQ) by (M,M + 1) -> AQE
Character from lower 6 bits of A is sent to peripheral
device, (A) retained
Word from lower 12 bits or all of A (depending on
type of 1/0 channel) sent to a peripheral device
Storage words disassembled into 6 or 12-bit characters
and sent to a peripheral device

14

7-19
7-13
7-13
7-14
7-14
7-19
7-20
7-21
7-21
7-20
7-21

7-48
7-22
7-21
7-22

MUA,I

"'it

PAGE
NO.

7-37
7-22

7-54
7-58

7-55
7-39
7-42
7-84
7-86
7-76
7-78

7-64

7-64
7-29
7-13
7-13
7-14

**7 -bit operation code, bit 17 = "0"

TABLE 2. ALPHAMNEMONIC LISTING OF INSTRUCTIONS (CONTINUED)

MNEMONIC
CODE

OCTAL
OPERATION
CODE

ADDRESS
FiElD

QSG.S

05.5

y

RAD,I

34

m,b

RTJ

00.7

m

SACH

42

r,2

SBAI
SBAQ,I

31
33
77.72
67

m,b
m,b

SBCD
SBE

r,3

IIIISTRUCTION DESCRIPTION

PAGE
NO.

If (Q) 2': y, RNI @ P + 2, otherwise RNI @ P + 1
Sign of y is extended
Add (M) to (A) -> (M)

7-14

P + 1 -> M (address portion) RNI @ m +
to m for P + 1
(AOO-05) -> R
(A) minus (M) -> A
(AQ) minus (M, M + 1) -> AQ

Set BCD fault logic
Up to twelve 4-bit characters (most significant character at address m) is subtracted from E. Difference
appears in E. (D) register specifies field length.
Where (M) contains a "1" bit. complement the corresponding bit in A
Shift (AQ) left end around until upper 2 bits of A are
unequal. Residue K = k-shift count. If b = 1, 2, or 3,
K -> Bb; if b=O, K is discarded

SCAI

36

m,b

SCAQ

13,4-7

y,b

SCHAI
SCIM

46
77.53

m,b

(AOO-16) -> (MOO-16)

x

SEL

77.1

x,ch

Selectively clear Interrupt Mask Register for each
"1" bit in x. The corresponding bit in the mask register
is set to "0"
If channel ch is busy, read reject instruction from
P + 1. If channel ch is not busy, a 12-bit function
code is sent on channel ch with a function enable,
RNI@P+2
Set (D) with lower 4 bits of y
Shift (E) in one character (4-bit) steps. Left shift: bit
23 = "0", magnitude of shift = lower 4 bits of K = k
+ (B\ Right shift: bit 23 = "1", magnitude of shift=
b
lower 4 bits of complement of K = k + (B )
Set floating point fault logic
b
Shift (A). Shift count K=k + (B ) (signs of k and Bb
extended). If bit 23 of K = "1", shift right; complement of lower 6 bits equal shift magnitude. If bit 23
of K = "0", shift left; lower 6 bits equal shift magnitude. Left shifts end around; right shifts end off

SET

SFE

SFPF

70.7
70.0-3

Y
k,b

SHA

77.71
12.0-3

y,b

SHAQ

13.0-3

y,b

SHQ

SJl
SJ2
SJ3
SJ4

SJ5
SJ6

12.4-7

00.1
00.2
00.3
00.4
00.5
00.6

y,b

m

m
m
m
m

m

Shift (AQ) as one register. Shift count K = k + Bb
(signs of k and Bb extended). If bit 23 of K = "1", shift
right and complement of lower 6 bits equal shift magnitude. If bit 23 of K = "0", shift left and lower 6 bits
equal shift magnitude. Left shifts end around; right
shifts end off
b
Shift (Q), Shift count K = k + (B ) (signs of k and Bb
extended). If bit 23 of K = "1", shift right; complement of lower 6 bits equal shift magnitude. If bit 23
of K = "0". shift left; lower 6 bits equal shift magnitude. Left shifts end around; right shifts end off
If jump key 1 is set, jump to m
If jump key 2 is set, jump to m
If jump key 3 is set, jump to m
If jump key 4 is set, jump to m
If jump key 5 is set. jump to m
If jump key 6 is set. jump to m

15

7-38

1. return
7-32
7-23
7-39
7-40
7-67

7-47
7-37

7-52
7-25

7-66

7-70
7-46

7-49
7-67

7-50

7-52

7-52
7-31

7 -31
7-31
7-31
7-31
7-31

TABLE 2. ALPHAMNEMONIC LISTING OF INSTRUCTIONS (CONTINUED)

MNEMONIC
CODE

OCTAL
OPERATION
CODE

ADDRESS
FIELD

SLS

77.70

SGCH

43

r,1

SRCE.INT

71*

c.r.s

SRCN.INT

71**

c.r.s

SSA.I

35

SSH

INSTRUCTION DESCRIPTION

Program stops if Selective Stop switch is on; upon
restarting RNI @ P + 1
(GOO.05) ---; R

PAGE
NO.

7-31
7-24

Search for equality of character c in a list beginning
at location r until an equal character is found, or until
character location s is reached; 0 :::;; c :::;; 6310
Same as SRCE except search condition is for inequality

7-56

m.b

Where (M) contains a "1" bit. set the corresponding
bit in A to "1"

7-37

10.0

m

Test sign of (m). shift (m) left one place. end around
and replace in storage. If sign negative. RNI @ P + 2;
otherwise RNI @ P + 1

7-50

SSIM

77.52

x

STA.I

40

m.b

Selectively set interrupt mask register for each "1"
bit in x. The corresponding bit in the mask register is
set to "1 "
(A) ---; (M)

STAG.I

45

m.b

(AG) ---; (M ,M + 1 )

7-24

STE

65

r.2

7-48

STI.I

47

m.b

Store up to 13 numeric BCD characters from E. Least
significant character stored at R+(D)-1 continuing
back to most significant character stored at R
(B b) ---; (MOO.14)

STG.I

41

m.b

(G) ---; (M)

7-24

SWA.I

44

m,b

(AOO·14) ---; (MOO·14)

7-25

TAl

53

b

(AOO.14) ---; Bb

7-27

TAM

53

v

(A) ---; v

7-28

TIA

53

b

7-27

TIM

53

v.b

TMA

53

v

TMI

53

v.b

TMG

53

v

b
Clear (A). (B ) ---; AOO·14
b
(B ) ---; V00.14
(v) ........ A
b
(VOO.14) --> B
(v) ........ G

53

v

(G)-->v

7-27

TGM
UCS
UJP.I

77.77
01

7-66
7-23

7-25

7-28
7-28
7-28
7-27

Unconditional stop. Upon restarting RNI @ P + 1.

7-31

m.b

Unconditional jump to M

7-32

y V (A) --> A. no sign extension
y V (A) ---; A, sign of y is extended
y V (B b) ---; Bb

7-17

y V (G) ---; G. no sign extension

7-17

Y V (G) ---; G. sign of y is extended

7-17

XOA

16.6

y

XOA.S

16.4

y

XOI

16.1-3

XOG

16.7

y.b
y

XOG.S

16.5

Y

*7-bit operation code. bit 17 in P + 1 = "0"
**7-bit operation code. bit 17 in P + 1 = "1"

Rev. F

7-56

16

7-17
7-17

TABLE 3. FUNCTION LISTING OF INSTRUCTIONS

FUNCTION

Transfers

MNEMONIC
CODE

PAGE
NO.

INSTRUCTION DESCRIPTION

AEUttt

(A)----> EU

7-29

ANAt

y A (A b ) ---" A

7-18

ANA.S

y A (A) ---" A, sign of y extended
y A (B b) ----> Bb

7-18

y A (Q)----> Q. no sign extension

7-18

ANlt
ANQt

7-18

ANQ.S

y A (Q) ----> Q. sign of y extended

7 -18

EAQttt

(EU EL) ---->AQ

7-29

ELQttt

(EL) ---->Q

7-29

ENA

Clear A. enter y

7-15

ENA.S

Clear A. enter y. sign extended

ENI

Clear Bb. enter y

7 -15
7 -15

ENQ

Clear Q. enter y

7-15

ENQ.S

Clear Q. enter y. sign extended

7-15

EUAttt

(EU)----> A
(M)---->A

7-21

LDA.I

(M)---->A. (M+ 1)---->Q
(M)----> A

7-20

LDAQ.I

(M)---->A. (M

LDEt

LDLI

Load E with up to 12 numeric BCD characters from storage.
BCD field length is specified by (D) register. Characters are read
consecutively from least significant character at address (R
(D)-l) until the most significant character at address R is in E.
(E) is shifted right as loading progresses. The sign of the field is
acquired along with the least significant character
(MOO.14) ----> Bb

LDUt

(M) A (Q)---->A

7-21

LDQ.I

(M)---->Q

7-22
7-37

LCA.lt
LCAQ.lt

7-29
7-21

+ l)---->Q

7-21

+
7-48
7-22

LPA.lt

(M) A (A)---->A

SSA.lt

Where (M) contains a "1" bit, set the corresponding bit in A to "1"

7-37

STA.I

(A)---->(M)

7-23

STAQ.I

(AQ)----> (M.M

STEttt

Store up to 13 numeric BCD characters from E. Least significant
character stored at R
(D)-l continuing back to most significant character stored in R
(B b) ----> (MOO-14)
(Q)---->(M)

STLI
STQ.I

+ 1)

7-24

+

7-48
7-25
7-24
7-25

TAl

(AOO-14) ----> (MOO.14)
(AOO-14) ----> Bb

TAM

(A) ---->v

7-28

b
Clear (A). (B ) ----> AOO·14
b
(B ) ----> V OO · 14
(v) ---->A

7-27

7-28

TMQ

(vOO. 14) ----> Bb
(v)---->Q

TQM

(Q)---->v

XOAt

y V (A)

7-27
7-17

XOA.St
XOlt

y V (A) ----> A. sign of y is extended
y V (B b) ----> Bb

7-17
7-17

XOQt

y V (Q) ----> Q. no sign extension

7 -17

SWA.I

TIA
TIM
TMA
TMI

7-27

7-28
7-28
7-27

A. no sign e)(tension

t Requires additional operation prior to transfer.
tt Trapped Instruction if optional floating point/48-bit precision hardware is absent.
t t t Trapped Instruction if optional BCD hardware is absent.

17

Rev. F

TABLE 3. FUNCTION LISTING OF INSTRUCTIONS (CONTINUED)

FUNCTION

Transfers
(Continued)

Character
Operation

MNEMONIC
CODE

XOQ.St

y V (Q) ---. Q. sign of y is extended

MOVE.INT
QELttt

Move c characters from r to s: I S c S
(Q)---.EL

SACH

(Aoo.os) ---. (R)

7-23

SCA.I

Where (M) contains a "'" bit. complement the corresponding
bit in A
Set (D) with lower 4 bits of y

7-37

SETttt
ECHA
ECHAS
LACH
LQCH
SQCH

Arithmetic

PAGE
NO.

INSTRUCTION DESCRIPTION

7-17
7-58

12810.

7-29

z ---> AOO·16
Z --->

7-46
7-15
7-15

A sign extended

(R) ---. ADD-OS

7-20

(R) ---. Qoo·os

7-22
7-24

(Qoo.os) ---. (R)

SCHA.I

(AOO-16) --->

ADAI

Add (M) to (A) ---. A

ADAQ.I
ADEttt

Add (M.M
1) to (AQ) ---> AQ
Up to twelve 4-bit characters (most significant character at
address R) is added to (E). Sum appears in E. (D) register specifies field length

AlA

Add (A) to (B b )

AQA

Add (A) to (Q) ---. A

7-26

AQEttt

(AQ) ---. (EU EL)
(A) -;- (M) ---> A. Remainder -> Q

7-29

OVAl
DVAQtt

(M 00·16)

7-25

+

--7

7-47
7-26

A

7-39

+

1) ---> AQ and remainder with sign extended
(AQE) -;- (M.M
to E. Divide fault halts operation and program advances to next
instruction

7-42

Floating point addition of (M.M

7-43

FDV.ltt

+ 1) to (AQ)
Floating point division of (AQ) by (M.M + 1)

FMU.ltt

with sign extended to E
Floating point mUltiplication of (AQ) and (M.M

FADtt

7-38
7-40

->

--->

+

AQ

AQ. remainder

+

1)

--->

AQ

7-44
7-44

Floating point subtraction of (M.M
1) from (AQ) -> AQ
Add (A) to (B b) -> Bb Sign of Bb extended prior to addition

7-44

IAI
INA

Increase (A) by y

INA.S
INI

Increase (A) by y. sign extended
b
Increase (B ) by y. signs of y and Bb are extended

7 -16
7 -16
7 -16

INQ

Increase (Q) by y

7-16

INQ.S
MUA.I
MUAQ.ltt

Increase (Q) by y. sign extended
Multiply (M) by (A) ---. QA. Lowest order bits of product in A

7-39

FSB.ltt

RAD.I
SBA.I
SBAQ.I

MUltiply (AQ) by (M.M
Add (M) to (A) ---. (M)
(A) minus (M) -> A
(AQ) minus (M.M

+

+

1)

->

AQE

1) ---. AQ

7-26

7 -16
7-42
7-38
7-30
7-40

SBEttt

Up to twelve 4-bit characters (most significant character at
address R) is subtracted from E. Difference appears in E. (D)
register specifies field length

7-47

Jumps and

HLT

Unconditional stop: RNI @; m upon restarting

7-30

Stops

SJ1

If jump key 1 is set. jump to m

SJ2

If jump key 2 is set. jump to m

SJ3
SJ4

If jump key 3 is set. jump to m
If jump key 4 is set. jump to m

7 -31
7 -31
7 -31

SJ5

If jump key 5 is set. jump to m

7 -31

SJ6

If jump key 6 is set. jump to m

7-31

Rev. F

18

7 -3J

TABLE 3. FUNCTION LISTING OF INSTRUCTIONS (CONTINUED)

FUNCTION

MNEMONIC
CODE

7-31

UCS

Program stops if Selective Stop switch is on; upon restarting.
RNI@;P+1
Unconditional stop. Upon restarting. RNI @; P + 1

UJP.I

Unconditional jump to 'm

7-32

RTJ

P + 1 ---+ m (address portion). RN I @ m + 1, return to m for
P+1
If (A) = (Q). RNI @ m. otherwise RNI @ P + 1

7-36

Jumps and

SLS

Stops
(Continued)

Decision

PAGE
NO.

INSTRUCTION DESCRIPTION

AQJ.EQ

7-31

7-32

AQJ,GE

If (A) ;:0: (Q). RNI @ m. otherwise RNI @ P +

1

7-36

AQJ,LT

If (A)

(Q). RNI @ m. otherwise RNI @ P +

1

7-36

AQJ.NE

If (A) ~ (Q). RNI @ m. otherwise RNI @ P +

1

7-36

ASE

Ify = (A). RNI @ P +
bits of A are used

ASE.S

Ify = (A). RNI @ P + 2. otherwise RNI @ P +
extended

ASG
ASG,S

If (A) ;:0: y. RNI @ P

AZJ.EQ

<

+

2. otherwise RNI @ P +

7-13

2. otherwise @ P +

If (A) ;:0: y, RNI @; P +
of y is extended
If (A)

O. RNI

=

1. Lower 15
1. Sign ofy is
7-13
7-14

1

2. otherwise RNI @; P +

1. Sign
7-14
7-35

® m. otherwise RNI @ P + 1

AZJ.GE

If (A) ;:0: 0, RNI @ m. otherwise RNI @ P +

1

7-35

AZJ.LT
AZJ.NE

If (A) < O. RNI @ m. otherwise RNI @ P +
If (A) ~ O. RNI @ m. otherwise RNI @ P +

1
1

7-35

CPR.I

(M) > (M).
(Q) > (M).
(A) ;:0: (M) ;:0: (Q)

EOJttt

Jump to m if E overflows. otherwise RNI @; P +

EZJ.EQttt

(E) =

EZJ.LTttt

7-49

IJD

(E) < O. jump to m; (E) ;:0: O. RNI @ P + 1
b
b
If (B ) = 0, RNI @ P + 1; if (Bb) ~
(B ) -1 ---+ Bb. RNI @ m

IJI
ISD

If (B ) = 0, RNI @ P + 1; if (B b) ~
(B ) + 1 ---+ Bb. RNI @ m
If y = 0, RNI @ P
2; if y ~ 0, RNI @ P
1

7-33
7-19

ISO

If (B ) = y. clear Bb and RNI @ P + 2; if (B ) ~ y, (B ) -1 ---+Sb
and RNI @ P + 1

ISE
ISE

If y=O. RNI @ P+2, otherwise RNI @ P+ 1
If y = (B\ RNI @. P + 2, otherwise RNI @ P + 1

7-13

ISG

If y

=0. RNI @ P+2. otherwise RNI @ P+ 1

7-14

ISG

If (B

y. RNI @ P + 2. otherwise RNI @ P + 1

7-14

lSI

If (B ) = y. clear Bb and RNI @ P + 2; if (B ) ~ y. (B ) +
---+ Bb. RNI @ P + 1

SRCE,INT

Search for equality of character c in a list beginning at location r
until an equal character is found, or until character location s is
reached;
~ c ~ 6310

7-56

SRCN.INT

Same as SRCE except search condition is for inequality

7-56

SSH

Test sign of (m), shift (m) left one place end around and replace
in storage. If sign negative. R N I @ P + 2; otherwise R N I @ P + 1
(B 1) - i ---+ B 1; if (B 1) negative. RNI @ P + 1; if (B1) positive. test
(A) ;:0: (Q) II. (M). if true. RNI@; P + 2. if false. repeat sequence

RNI @ P +
RNI @ P +
RNI @ P +

O. jump to m; (E)

b

+

~

1 }
2
3

b

b

(A) and (Q) are
unchanged

O. RNI @ P +

o.
o.

b

7-33
7-49

1

7-49

1

b

+

b

) ;:0:

7-35

b

b

b

1

MTH

(B2 - i ---+ (B2); if (B2) negative. RN I @ P +

PAUS

Sense busy lines. If "1" appears on a line corresponding to "1"
bits in x. do not advance P. If P is inhibited for longer than 40 ms.
read reject instruction from P + 1. If no comparison. RNI @
P+2
Same as PAUS except real-time clock
is prevented from incrementing.

(A) ;:0: (Q)

PRP

II.

1; if (B2) positive, test
(M); if true. RNI @ P + 2; if false. repeat sequence

19

7-19

7 -13

°

MEQ

7-34

7-19

7-50
7-54
7-55

7-64

7-64
Rev. H

TABLE 3. FUNCTION LISTING OF INSTRUCTIONS (CONTINUED)

FUNCTION

Decision
(Continued)

MNEMONIC
CODE

OSE
OSE,S
OSG
OSG,S

Shifts

SHA

SHAO

SHO

SCAO

SFEttt

INSTRUCTION DESCRIPTION

+
+
+

PAGE
NO.

+
+
+

Ify = (0), RNI @ P
2; otherwise RNI @ P
1. lower 15 bits
of 0 are used
If y = (0), RNI @ P
2. Otherwise RNI @ P
1. Sign of y is
extended
If (0) ;::0: y, RNI @ P
2, otherwise RNI @ P
1
If (0) ;::0: y, RNI @ P
2, otherwise RNI @ P
1. Sign of y is
extended
b
Shift (A). Shift count K = k
(B ) (signs of k and Bb extended).
If bit 23 of K = "1 ", shift right; complement of lower 6 bits equal
shift magnitude. If bit 23 of K = "0", shift left; lower 6 bits equal
shift magnitude. left shifts end around; right shifts end off
b
Shift (AO) as one register. Shift count K = k
(B ) (signs of k
and Bb extended). If bit 23 of K = "1", shift right; complement
of lower 6 bits equal shift magnitude. If bit 23 of K = "0", shift
left; lower 6 bits equal shift magnitude. left shifts end around;
right shifts end off
b
Shift (0). Shift count K=k
(B ) (signs of k and Bb extended).
If bit 23 of K = "1 ", shift right; complement of lower 6 bits equal
shift magnitude. If bit 23 of K = "0", shift left; lower 6 bits equal
shift magnitude. left shifts end around; right shifts end off
Shift (AO) left end around until upper 2 bits of A are unequal.
Residue K=k-shift count. If b=1, 2, or 3, K->Bb; if b=O, K is
discarded
Shift E in one character (4-bit) steps. left shift: bit 23 = "0",
magnitude of shift = lower 4 bits of K = k
(B \ Right shift: .bit
23 = ''1'', magnitude of shift = lower 4 bits of complement of
b
K = k
(B )

+

Inputl
Output

CllO
ClCA
CON

+

+

+

CTI

CTO
EXS

Test sign of (m), shift (m) left one place end around and replace
in storage. If sign negative, RNI @ P
2; otherwise RNI @ P
1

+

+

lockout external interrupts while
channel(s) are busy.
Clear channel activity, not the peripherals.
If channel ch is busy, read reject instruction from P
1. If channel ch is not busy, 12-bit connect code sent on channel ch with
connect enable, RNI @ P
2
External status code from 1/0 channel ch to lower 12-bits of A,
contents of interrupt mask register to upper 12-bits of A. RN I
@P+1
Set Type In }
Beginning character address must
be preset in location 23 of
register file and last character
Set Type Out
address
1 must be preset in
location 33 of the file.
Sense external status if "1" bits occur on status lines in any of
the same positions as "1" bits in the mask, RNI @ P
1. If no
comparison. RNI @ P
2
(A) IS cleared and a 6-bit character is transferred from a peripheral device to the lower 6 bits of A
(A) is cleared and a 12 or 24-bit word is read from a peripheral
device into the lower 12 bits or all of A (Word size depends on
1/0 channel)
A 6 or 12-bit character is read from peripheral device and stored
in memory at a given location
Word address is placed in bits 00-14; 12- or 24-bit words are
read from a peripheral device and stored in memory

+

+

+

INAC,INT
INAW,INT

INPC,INT,B,H
INPW.INT.B,N

Rev. H

7-14

7-50

7-52

7-52

7-52

+

+

COpy

7 -13
7 -14

+

+

SSH

7 -13

7-49
7-50

7-69
7-69

7-70

7-60

7-71

+

7-60
7-80

7-82

7-72
7-74

IOCl

Clears I/O channel or search/move control as defined by bits
00-07. 08. and 11 of x.

7-63

OTAC,INT

Character from lower 6 bits of A is sent to peripheral device,
(A) retained

7-76

20

TABLE 3. FUNCTION LISTING OF INSTRUCTIONS (CONTINUED)

FUNCTION

Inputl
Output
(Continued)

MNEMONIC
CODE

INSTRUCTION DESCRIPTION

PAGE
NO.

OTAW,INT

Word from lower 12 bits or all of A (depending on type of 1/0
channel) sent to a peripheral device

7-86

OUTC,INT,B,H

Storage words disassembled into 6 or 12-bit characters and sent
to a peripheral device

7-76

OUTW,INT.B,H

Words read from storage to peripheral device

7-78

SEL

If channel ch is busy, read reject instruction from P
1. If channel ch is not busy, a 12-bit function code is sent on channel ch
with a function enable, RNI @ P
2

+

+

Interrupt

CINS
DINT

Interrupt mask and internal status to A
Disable interrupt control

7-70
7-62
7-67

EINT

Interrupt control is enabled, allows one more instruction to be
executed before interrupt occurs

7-67

IAPR

Interrupt associated processor

7-66

INCL

Interrupt faults defined by x are cleared

7-65

INS

Sense internal status if "1" bits occur on status lines in any of
the same positions as "1" bits in the mask, RNI @ P
1. If no
comparison, RNI @ P
2

7-62

INTS

Sense for interrupt condition; if "1" bits occur simultaneously in
interrupt lines and in the interrupt mask, RNI @ P
1; if not.
RNI @ P+2

7-61

SSIM

Selectively set Interrupt mask register, for each" 1" bit in x. The
corresponding bit in the mask register set to "1 ".

7-66

SBCD

Set BCD fault logic

7-67

SCIM

Selectively clear interrupt mask register for each "1" bit in x.
The corresponding bit in the mask register is set to "0".

7-66

SFPF

Set floating point fault logic

7-67

+

+

+

21

INDEX
Console Keyboard . . . . . . . . . . . . . . . ..... 5-8
Console Typewriter .................... 6-1
Control Instructions .................. 7-63
Conversions
Word Address-Character Address ....... 7-2
Numbers ....................... '" B-5
Octal-Binary .................. C-6, C-10
D Register ............................... 1-8
Data Bus ............................ 1-10
Register . . . " . . . . . . . . . . . . . . . . . . ... 1-8
Data Processing Package ........... ' ... 8-3
E Register ........................ 1-9,5-1
Error Codes ......................... 8-18
F Register ........................... 1-7
Faults, Arithmetic .................... 4-1
Field Length Register (See D Register)

A Register ........................... 1-6
Accumulator (See A Register)
Addressing
Addressing Modes ............... 7-4,7-5
Address Modification and Indexing ..... 7-3
Absolute Addresses .................. 2-3
Word-Character Conversions .......... 7-2
Arithmetic
Faults ............................. 4-1
Fixed Point .................... 7-38, 7-40
Floating Point ...................... 7-43
Supplementary Information ........ App. B
Assemblers (See COMPASS and BASIC
Assemblers)
Assembly Listing Format ................ 8-17
Auto Load/Auto Dump ................... 3-3
Examples ............................ 5-12
Interim Subroutine .................... 3-3
Reserved Addresses .................... 2-4
B b Registers ............................. 1-8
BASIC Assembler ........................ 8-6
BCD ................................... 7-46
Block Control and Interrupt Module ....... 1-3
Block Control
Section ............................... 1-10
Clearing Mask ........................ 7-63
Breakpoint
Address .............................. 5-13
Mode ................................. 5-13
Switch ................................ 5-7
C Register ........................... 1-7,5-1
Character Address-Word Address
Conversions ........................... 7-2
Character Positions ...................... 1-6
Character Set ........................ App. A
Clear, Master .................... 5-8,5-9
Clock, Real-Time ........................ 1-12
COBOL ................................. 8-4
Codes
Interrupt .............................. 4-5
Error ...... '" ...................... , .8-18
Typewriter Character ................ 6-5
Coding
Procedures ........................ 8-7
Forms ........................... 8-19
Compare Instruction ................. 7-53
Communication Register (See C Register)
COMPASS Assembler ................. 8-2
Coding Form ...................... 8-19
Computer Organization ............... 1-6
Consoles ......................... 1-4,5-1
Switches and Indicators .............. 5-2

Fixed Point Arithmetic ............... B-8
Floating Point Arithmetic ............. B-9
FORTRAN .............................. 8-5
Coding Form ......................... 8-19
Indexing
Address Modification ................... 7-3
Examples ............................. 7-5
Index Registers (See B b Registers)
Input/Output
Channels .............................. 1-3
Characteristics ......................... 3-1
Instructions ..................... 7-68, 7-69
Interface Signals ....................... 3-1
Parity ............................ 1-13,3-2
Instructions (See also specific instructions) . 7-1
Execution Times ...................... 7-11
Format .................. 7-1,7-14,7-45,8-7
Interpretations ......................... 8-8
Index ..... '" .......................... 7-8
Listings ............................... 7-7
(Also see back of book for Octal, Alphamnemonic and Function Listings on pp. 7, 12,
and 17)
Macro ................................ 8-12
Pseudo- ................................ 8-9
Symbols ........... pp. 7, 12 (in back of book)
Trapped 7-6, 7-7 (See also pp. 7-42 to p. 7-49)
Interface Signals ......................... 3-1
Inter-Register Transfer
24-Bit Precision ....................... 7-26
48-Bit Precision ....................... 7-29
Interrupt
Clearing and Sensing .................. .4-4
Codes ................................. 4-5
Control ................................ 4-4
23

Instructions .......................... 7-65
Internal ............................... 4-1
I/O .................................... 4-3
Mask Register ......................... 4-3
Power Failure ......................... 4-2
Priority ............................... 4-4
Processing ............................. 4-5
Real time .............................. 4-2
System ................................ 4-1
Trapped Instruction .................... 4-2
Jump Instructions ...................... 7-30
Keyboard (See Console Keyboard)
Load Instructions ....................... 7-20
Logical Instructions
(with Storage Reference) ............... 7-37
Loudspeaker, Console ..................... 5-4
Macro Instructions ...................... 8-12
Main Control & Arithmetic Module ....... 1-3
Master Clear ......................... 5-8,5-9
Memory
Configurations, Optional ................ 1-3
Protection . . . . . . ................... 2-3, 2-5
Meters, Elapsed Time ................... 5-15
Modularity .............................. 1-1
Move Instruction ........................ 7-58
Number Systems ........................ B-1
Octal-Decimal Con version Table
Integer ................................ C-6
Fraction .............................. C-I0
Optional Arithmetic ...................... 1-4
P Register ............................... 1-7
Pause Sensing Mask .................... 7-64
Parameters, Instruction (See Symbol Definitions)
Parity .................................. 1-12
Storage ............................... 1-12
I/O ............................... 1-13.3-2
Peripheral Equipment ............... 1-1,1-13
Power Control Panel ................ 1-4,5-15
Program Address Counter (See P Register)
Programming Reference Table ......... App. C
Pseudo-Instructions ...................... 8-9
Q Register ............................... 1-7
Radix Arithmetic ........................ B-6
Read/Write Characteristics ............... 2-2
Single-Character Mode ................. 2-2
Double-Character Mode ................. 2-2
Triple-Character Mode ................. 2-2
Full-Word Mode ....................... 2-2
Address Mode .......................... 2-2
Real-Time Clock .........................1-12
Registers (See also specific registers)
Characteristics. . . . . . . . . . . . . . . . . . . . . . .. 1-9
Descriptions ........................... 1-6
Displays ............................... 5-1

Operations ............................ 7-12
Shifts . . . . ............................ 7-50
Register File ............................ l-l{J
Register File Assignments ............... 1-11
S Bus .................................. 1-10
S Register ............................... 1-8
Satellite Configurations .................. 3-5
Search Instructions ................. 7-50,7-56
Sense Instructions ....................... 7-60
SCOPE .................................. 8-l
Software Systems ........................ 8-1
SORT/MERGE Program, Generalized ...... 8-5
Status
Checking (Typewriter) ................. 6-2
Indicators .......................... 5-4,5-5
Internal Status Sensing Mask .......... 7-62
Stop Instructions ........................ 7-30
Storage
Addressing ............................ 2-3
Characteristics ......................... 2-1
Control Panel .......................... 2-1
Module ................................ 1-3
Parity ................................ 1-12
Protection ............................. 2-3
Registers .............................. 2-2
Sharing ............................... 2-3
Shift ................................. 7-50
Word Format .......................... 1-6
Store Instructions ....................... 7-23
Switches
Console ........................... 5-7,5-10
Keyboard .............................. 5-9
Power Control Panel ................... 5-15
Storage Protection ..................... 2-5
Typewriter Console ..................... 6-3
Symbol Definitions ....................... 7-3
System Description ....................... 1-1
Temperature Warning .................... 5-6
Typewriter, Console ...................... 6-1
Codes ................................. 6-5
Status Checking ....................... 6-2
Switches and Indicators ................ 6-4
Tabs, Margins and Spacing ............. 6~2
Type Dump ............................ 6-3
Type In ................................ 6-3
Type Load ............................. 6-3
Type Out .............................. 6-3
Utility Package .......................... 8-4
Word Address ............................ 7-1
Word Address - Character Address
Conversions ........................... 7-2
Word Format ............................ '1-6
X Register ............................... 1-7
Z Register ............................... 1-8

24

COMMENT SHEET
CONTROL DATA 3200 COMPUTER SYSTEM
REFERENCE MANUAL
PUB. NO. 60043800

FROM:

NAME: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
BUSINESS
ADDRESS: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __

THESE COMMENTS REFER TO REV. _ _ OF THIS MANUAL.

COMMENTS:

(DESCRIBE ERRORS,SUGGESTED ADDITIONS OR
DELETIONS, ETC. INCLUDE PAGE NUMBER.)

w

Z
::::i
~

Z

o
.....
<
I-

:::l
U

col
~I

-:1

>
~I

;;;1
N

",I
to)

::E 1

:31
...

I

NO POSTAGE STAMP NECESSARY IF MAILED IN U.S.A .
FOLD ON DOTTED LINES AND STAPLE

STAPLE

STAPLE

:OLD

FOLD

-------------------------------------------~
FIRST CLASS
PERMIT NO. 8241

MINNEAPOLIS, MINN.

BUSINESS REPLY MAIL

w

Z
::;

NO POSTAGE STAMP NECESSARY IF MAILED IN U.S.A.

~

z
o
....

«

POSTAGE WILL BE PAID BY

I-

::::>

u

CONTROL DATA CORPORATION
81001 34TH AVENUE SOUTH
MINNEAPOLIS, MINNESOTA 55440
ATTN: TECHNICAL PUBLICATIONS DEPT.
PLANT TWO

OLD

FOLD

•e,

-;

e
e
e

e
e
e
e

Ie
e
e

e
e
e
e·

e
e
e

..,.-::-

j .• :

CONTROL DATA
CORPORATION

. CORPORATE HEADIlUARTERS. 8100 34th AVE. SO •• MINNEAPOLIS. MINN. 55440
SALES OFFICES AND SERVICE CENTERS IN MAJOR CITIES THROUGHOUT THE WORLD

Pub. No. 60043800

Litho in U.S.A.



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.3
Linearized                      : No
XMP Toolkit                     : Adobe XMP Core 4.2.1-c041 52.342996, 2008/05/07-21:37:19
Format                          : application/pdf
Creator                         : HyperGEAR,Inc.
Create Date                     : 2007:06:06 21:33:41+09:00
Creator Tool                    : HyperGEAR,Inc.
Modify Date                     : 2018:05:07 13:02:43-07:00
Metadata Date                   : 2018:05:07 13:02:43-07:00
Producer                        : Adobe Acrobat 9.0 Paper Capture Plug-in
Document ID                     : uuid:214012fb-4535-0340-88f7-515f6bdd0422
Instance ID                     : uuid:a0c6ef32-f36c-9d42-ab48-dbc9c5fc9d8c
Page Count                      : 240
Author                          : HyperGEAR,Inc.
EXIF Metadata provided by EXIF.tools

Navigation menu