History of NSA computers, 1964

Here is Samuel S Snyder's 1964 "History of NSA General-Purpose Electronic Digital Computers" in all its declassified glory. It's 106 pages and I've only skimmed it, but it looks like awesome vintage computer porn. Love the qualifiers "digital" and "electronic."

History of NSA General-Purpose Electronic Digital Computers (PDF) (via Schneier)


  1. You kids with your Altair toggle switch inputs. Back in my day we had to dial our bits in!

  2. Love the qualifiers “digital” and “electronic.”

    Well you do know that there were a lot of electro-mechanical and analog computing machines prior to the digital age don’t you?

  3. Actually the only part of computers that are ‘digital’ are the states of the individual transistors … pretty much everything else is still (value-limited) analog.

    The Baudot code invented in the 1870s … used bits to encode characters. The teletype machines that received those bits had to store them until they had a full character. They used the stored bits to ‘compute’ which type lever to move. The case-shift was ‘programmable’ … were they computers? Were they digital?

    The words are fuzzy, and there’s not much to be gained in hairsplitting.

    1. The world is analog, yes, but computers are digital in a way old mechanical computers weren’t.

      Mechanical computers could, in principle, be set to any real value in a range. But, as they got older, they became less precise.

      Modern computers have digital inputs and outputs. Given the same inputs, they always produce exactly the same outputs, from the day they’re made to the day they finally break. It is the calculations, not the electrons, that are digital.

  4. jphilby: When you say that the case-shift was “programmable,” I take it that you’re referring to the fact that FIELDATA didn’t have separate upper and lower case characters? The things one has to do when working with 6 bit characters….

  5. Good stuff here – the roots of today’s computers.

    The very beginning of operating systems shows up in January 1963, after NSA installs their 4th CDC 1604 (predecessor of the 6400 & Crays). Demand was so great that, users delivered programs by pneumatic tube or messenger:

    “… A supervisor program … not only compiles programs written either in FORTRAN or ALGOL, but regulates true concurrent input-output, tape-to-printer, and internal computation … a bidder system regulates priorities and maintains
    records of machine time assignments … users actually bid for machine time in relation to their monthly allocation…”

    Neat – in 1963, we see an early user interface (submit cards by pneumatic tubes), resource management (regulating concurrent I/O), operating system (the supervisory program), and even user based prioritizing.

    This article documents plenty of computational dead-ends and headaches: systems with 7-bit words and 3-word programming groups. Incompatible tape systems. NSA’s Nomad computer suffered huge cost overruns when construction started before the design was finished as well as too-small technical staff watching over the big hardware project.

    Yet there’s brilliant insights as well: they rejected Univac’s architecture because it used decimal arithmetic (early on, NSA recognized that binary was the way to go) And they leaned towards the simple instruction set over the complex instruction set: “The bulk of computer operations in ASA applications would be characterized by relatively simple operations on many data items rather than more complex operations upon data retained in the accumulator.” A preview of RISC/CISC debate of the 1990’s.

    Today’s cache memory? They tried it in 1955 and called it “Scat” memory – 128 words of rapid access memory. A Bus based hardware architecture shows up in the 1957 NSA Harvest computer.

Comments are closed.