John Mckay wrote:

>This I got from computer historian, Simon Lavington.
>
<snip>
>
>Another curiosity of the Mark I's instruction set was a sideways
>add ('population count'), also specified by Turing.  I've always
>assumed that the two instructions could be useful for cryptography -
>eg for the generation of one-time coding pads and the testing of
>decryption procedures.
>
>

About the "sideways add" or pop-count instruction - indeed
Seymour Cray's first supercomputer (the Control Data 6600)
sported such an instruction, as did all subsequent Control
Data machines until the advent of the 180 series in the mid 
'80s. 

It was almost a tradition that one of the first of any new
faster CDC machine was delivered to a "good customer" - picked
up at the factory by an anonymous truck, and never heard
from again.

We always wondered what such an instruction might be useful for - 
until one of the first of the 180 series (n'th generation successor
to the 6600) was delivered to such a customer, and cries of 
anguish erupted that this machine didn't have such an instruction. 
We scrambled and had to create a very tight code sequence within the 
instruction stack that could be generated via a Fortran intrinsic 
function.

Simon Lavington also mentions in his book that the venerable
6600 inherited some ideas from the Manchester Atlas. I never
found out what specifically - did the Atlas sport such
an instruction? - perhaps also inherited from Mark I?

I'm not sure if Cray's other machines (built after
he left Control Data) had such an instruction, but I'm told
they did.

Jitze Couperus
Control Data Systems

Reply via email to