Many 
operations 
are 
performed  in 
floating-point 
format. 
Other 
typical 
characteristics 
include 
high  system 
input/ 
output 
transfer 
rates. 
General-purpose 
features 
are 
described 
in 
the 
following 
paragraphs. 
Floating-Point 
Hardware.  Both  short 
(32-bit) 
and 
long 
(64-bit) 
formats 
are 
avai 
lable 
in 
the 
floating-point 
in-
structions. 
Under  program 
control, 
the 
user may 
select 
optional 
zero 
checking, 
normalization, 
floating-point 
rounding 
and 
significance 
checking. 
Significance 
check-
ing  permits use of short 
floating-point 
format for  high 
pro-
cessing 
speed 
and 
storage economy 
and 
of  long 
floating-
point 
format 
when 
loss  of 
significance 
is 
detected. 
Indirect 
Addressing. 
Indirect 
addressing 
facilitates 
table 
linkages 
and 
permits 
keeping 
data 
sections 
of a  program 
separate 
from 
procedure 
sections 
for 
ease 
of 
maintenance. 
Displacement 
Indexing.  Indexing  by  means  of  a  IIfloat-
ing
ll 
displacement 
permits 
accessing 
a 
desired 
unit 
of 
data 
without 
considering 
its 
size. 
The 
index 
registers 
automatically 
align 
themselves 
appropriately; 
thus, 
the 
same 
index 
register 
may  be used on 
arrays 
with 
different 
data 
sizes. 
For 
example, 
in a  matrix 
multiplication 
of 
any 
array 
of 
full  word, 
single-precision, 
fixed-point 
numbers, 
the 
results may  be stored  in a 
second 
array 
as 
double-precision 
numbers,  using 
the 
same 
index 
quantity 
for  both  arrays.  If 
an 
index 
register 
contains 
the 
value 
of 
k, 
then 
the 
user 
always 
accesses 
the 
kth 
element, 
whether 
it 
is  a 
byte, 
halfword,  word,  or  doubleword. 
Incrementing 
by  various 
quantities 
according 
to 
data 
size 
is  not 
required; 
instead, 
incrementing 
is 
always 
by  units 
in  a 
continuous 
array 
table 
regardless 
of 
the 
size 
of 
data 
element 
used. 
Instruction 
Set. 
The  instructions  permit  short,  highly 
optimized 
programs 
to 
be 
written. 
These 
are 
rapidly 
assembled 
and 
minimize  both program 
space 
and 
execu-
tion 
time. 
Conversion Instructions. 
Two 
generalized 
conversion 
in-
structions 
provide 
for 
bidirectional 
conversions 
between 
internal 
binary 
and  any 
other 
weighted 
number  system, 
including 
BCD. 
Call 
Instructions.  These four  instructions permit handling 
up 
to 
64 
user-defined 
subroutines, 
as 
if 
they 
were 
bui 
It-in 
machine 
instructions. 
Call 
instructions 
also 
gain 
access 
to 
specified 
operating 
system 
services 
without 
requiring  its 
intervention. 
4  Time-Shari 
ng 
Features 
Interpret 
Instruction.  The 
Interpret 
instruction 
simplifies 
and 
speeds 
interpretive 
operations 
such as 
compilation, 
thus 
reducing 
space 
and 
time 
requirements  for  compilers 
and 
other 
interpretive 
systems. 
Four-Bit 
Condition 
Code. 
Checking 
results is simpl 
ified 
by 
automatically 
providing information on  almost 
every 
instruc-
tion 
execution, 
including 
indicators 
for  overflow, 
under-
flow, 
zero, 
minus, 
and 
plus, 
as 
appropriate, 
without 
requiring 
an 
extra 
instruction 
execution. 
Direct 
Input/Output 
(DIO). 
Direct 
input/output 
facili-
tates 
in-line 
program 
control 
of 
asynchronous or 
special-
purpose 
devices. 
This 
feature 
permits information 
to 
be 
transmitted 
directly 
to 
or from 
general-purpose 
registers. 
Multiplexor 
In 
ut/Output 
Processor  (MIOP). 
Once 
in-
itialized, 
I  0  processors 
operate 
independently 
of 
the 
basic  processor, 
freeing 
it 
to 
provide 
faster  response 
to 
system  needs. 
An 
MIOP 
requires 
minimal 
interaction 
with 
the 
basic  processor. 
I/O 
command doublewords 
per-
mit  both  command 
chaining 
and 
data 
chaining 
without 
intervening 
basic processor cO:ltrol. 
I/o 
equipment speeds 
range 
from  slow 
rates 
involving 
human 
interaction 
(tele-
typewriter, 
for  example) 
to 
transfer 
rates 
of 
rotating 
mem-
ory 
devices 
of  over  750, 000  bytes  per 
second. 
Peri-
pheral 
controllers 
attached 
to 
an 
MIOP 
may 
be 
operated 
simultaneously. 
TIME-SHARING 
FEATURES 
Time-sharing 
is 
the 
ability 
of  a  system 
to 
share  its total 
resources 
among many users 
at 
the 
same  time.  Each  user 
may 
be 
performing a 
different 
task, 
requiring a 
different 
share of 
the 
available 
resources.  Some  users may 
be 
on-
line 
in 
an 
interactive, 
IIconversationalli  mode with 
the 
basic 
processor 
whiie 
other 
users may 
be 
entering 
work  to 
be 
processed 
that 
requires only final 
output. 
Time-sharing 
features 
are 
described 
in 
the 
following 
paragraphs. 
Rapid 
Context 
Saving.  When 
changing 
from 
one 
user 
to 
another, 
the 
operating 
environment 
can 
be 
switched 
quickly 
and 
easi Iy. 
Stack-manipulating 
instructions permit storing 
in a push-down 
stack 
of 1 
to 
16 
general-purpose 
registers by 
(1 
single 
instruction, 
Stack 
status is 
updated 
automat!ca!!y 
and 
information in 
the 
stack 
can 
be 
retrieved 
when 
needed 
(also,  by a  single instruction).  The 
current 
program status 
words,  which 
contain 
the 
entire 
description 
of 
the 
current 
user's environment 
and 
mode of 
operation, 
may  be stored 
anywhere 
in  memory, 
and 
new program status words may  be 
loaded, 
all 
with a  single instructi on.