Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?

IBM's First Computer 67

wiredog writes "From Dr. Dobbs History of Computing comes the story of the IBM 604. IBMs first programmable "computer". With 16 instructions in the instruction set, 40 program steps storable in memory, a blazingly fast 1000 instructions/sec at 50 kHz and power consumption of 7.59kW (230VAC @ 33A)."
This discussion has been archived. No new comments can be posted.

IBM's First Computer

Comments Filter:
  • Sure, we now use GHzs to measure speed, nut that's just 1,000,000Hz, it's not a different measure

    If you think 1GHz = 1,000,000Hz then you certainly are using a different measure.

  • It was probably the 604 because while it was the first computer it was not the first machine they made. They were selling punch card things which had model numbers.
    Sort of like the first boeing Jet was the 707, they had made a lot of airplanes like the 247 and the B-17/B-29 before that.
  • Two Northrop engineers, Greg Toben and William Woodbury (Woodbury still lives in San Francisco), connected a 603 to a 405 accounting machine and modified some of the internal wiring. It should be noted that opening the cabinet of IBM equipment was strictly forbidden under the terms of IBM's customer leasing agreement (until 1956 all IBM machines could only be leased). While this was ostensibly to protect the customer from the lethal voltages inside, there obviously was a desire to minimize "cloning" of IBM equipment by its competitors (chiefly Remington-Rand). Once IBM field engineers and head office management got over their initial dismay, the merits of this combination could be seen (it could store a program for example).

    So, IBM owes a lot of it's early vision to a few hackers who did a bit of reverse-engineering against an end-user license agreement? Shock, shock, horror, horror!

  • How about Computing History for all those obnoxious young punks who think that all of this appeared magically for their convenience just because they have deigned to bless the world with their existence.
  • Computer grade vacuum tubes aren't necessarily better than the category known as receiving tubes, they just need to be optimized for use as switches (either fully conducting or not conducting at all), instead of for the things that were more important in receiving tubes, stuff like low noise, particular power curves, ability to work over a range of B+ voltages, input and output impedence versus frequency, et cetera.
  • "Once you turned on the power you would have to wait for the filaments in the tubes to heat up."

    Not if you had a standby switch that kept the filaments on and just shut down the B+ to the plates, which would be desirable to avoid the thermal shock that would burn out the filaments quicker. I would hope that IBM would have thought to include this.

  • 40 years ago that 1k$ would have bought you a brand new automobile, so you'd need to explain it to them in terms of 1961 purchasing power versus 2001 purchasing power.
  • "Power consumption: 7.59kW [230VAC @ 33A]"

    You couldn't plug it in to the standard wall socket anyway, but you could run a dedicated circuit for it from your main panelboard and use it at home. About the same power load as your stove or your dryer and water heater running at the same time.

  • the editors like to repeat posts from two days ago, I guess that if there was a /. when the 604 released we could mark the post as redundant...
  • by Christopher Thomas ( 11717 ) on Monday July 02, 2001 @09:11AM (#114312)
    Computers have been working in pretty much the same way since then and it kind of reminds me the way cars continue to use the same archaic technology used back in 1900, only greatly refined.This is simply because it's easier (and cheaper) for manufacturers to maintain a single common base for their products for as long as possible before throwing it away and starting all over again. The choice, I believe, is ours: Mass production or revolution?

    Well, the way that machine code works is vaguely similar, except that the hardware implementation has changed on a *fundamental* level since then, and we have several layers of increasingly abstracted software on top that couldn't exist back then, and have developed several new branches of engineering involved in the design of hardware and software for computing devices...

    No, no innovation or revolution there.

    Sorry if I'm sounding a bit harsh. It's just that I've seen the "we've been using [foo] forever, we're shackled to it and should switch to something new and revolutionary" argument a few times now, and it almost always a) ignores a lot of fundamental change that's gone on over the years both in [foo] and in the design and use of [foo], and b) fails to propose an alternative.

    What would be the "revolution" that you hope for?

    Optical computers? The computer hardware layer would change utterly, but the design concepts used wouldn't, and the software would show almost no change at all. You'd also be stuck with a feature resolution no smaller than one wavelength of light (about half a micron to a micron).

    Nanomechanical computers? Same deal (though without the feature size limit). You'd still be implementing digital logic, so all of the upper layers of the design and use of computers would stay the same.

    The only thing that's fundamentally different both in design and use is quantum computing, and I'll bet that even that would have strong similarities on several levels.

    Technological progress rarely happens by revolution - it's by evolution of existing ideas and devices, sometimes put together in new ways. Over time, the result of these changes can be profound, but the idea that you *must* turn the world on its head to move forward is a misconception.

    Sorry if I'm being impolite; this is just something that's bothered me for a while :).
  • Reduce them to 26, and call them letters.
    Put monkeys in front of thosand keypunch machines
    and you'll gnerate all of Katz's writings in two
  • Rather than replying to a couple of the other joyless and uncurious morons who replied to your message, I thought I'd say that yes, I think the idea of a PIC-based emulator for something like this is fun - especially when compared with the size and power requirements of the original (here's a picture []).

    IIRC, the MIT Computing Museum (or whatever it's called) in Boston has some exhibits along these lines. The Dr. Dobb's article mentions that The Computer Museum History Center [] has a 604 on display, so perhaps they'd put a PIC emulator next to it, which could make for a fun resume item!

    Google turned up this page [] which contains some info on the 604's basic instruction set.

  • I hadn't realized that the PowerPC architecture dates this far back.
  • Or have they removed the History Classes from High School curriculums when I wasn't watching?
  • Actually 1Ghz is 1,000,000,000Hz, 1Mhz is 1,000,000Hz
  • Cool, i'll go check that out. Thanks for the useful and interresting non-flame reply. =:-)
  • by drenehtsral ( 29789 ) on Monday July 02, 2001 @07:43AM (#114319) Homepage
    I would be very interested in playing with an emulator for this, or failing that, and having specs writing one. I might even write an emulator for in in PIC assembly language to have an actual physical emulator (now instead of taking kilowats it'd probably take milliwats. It would be fun though.)

    So: If anybody has detailed hardware/instruction set/IO specs, i'd love to see them. Remove the "comment" from my address.
  • According to my one-liner[0] (who needs a calculator), we should have 1717THz processors, with actual performance of around 34 trillion ops/sec. Gee, who would have guessed that Moore's Law breaks when applied to chip speed ;-)

    [0] perl -e '$i=50000;for($j=0;$j<52;$j+=1.5){$i*=2;}print" $i\n";'
    I suppose that's horribly broken in some way....

  • Try Bob Supnik's simh [].

  • very interesting, but... if you were making use of the thing, how can you say it was obsolete?

    I wasn't actually "making use" of it. They assigned me to writing a program to make sure all the parts were working.

    But my personal definition of "obsolete" is "If you were going to buy something to do the same job would you consider buying this or is there something so much better/cheaper now that this wouldn't be considered."

    Obsolete does NOT mean it stops doing the job.
  • by Ungrounded Lightning ( 62228 ) on Monday July 02, 2001 @12:33PM (#114323) Journal
    I actually programmed a 606 back in my cutting-hacker-teeth days. A high-school summer job at a university lab - and it WAS obsolete at the time. The IBM 14xx and 709x and the Control Data 1604 (discrete transistors and diodes germanium mainly - on cards) were the state-of-the-art.

    The 606 was a later, bigger box of the same pluggable modules. They had vacuum tubes at the end for the output amplifier/switch, and little baseless peanut-tube vacuum DIODES along the side of the module for the logic gates. (Think DTL, but with the "T" standing for "Triode" rather than "Transistor". At least I think the amplifer tube was a triode - perhaps a dual triode. (Two logic gates per plugin! Miniaturization!) Didn't get into the circuitry.)

    606 had one K of memory - decimal K, addressed from 000 to 999. If I recall correctly, a word was ten four-bit digits plus sign. (I don't recall if it was BCD or bi-quinary.)

    Ten program-readable registers - each consisting of a rotary switch for each digit plus a toggle for the sign - made up the middle part of the processor's end panel. Bottom part was a giant plugboard, top part a neon light display, with a neon lamp for each state of the program sequencer and a bunch more for an output register.

    There was a knob (bakelite pointer on a pot) for adjusting the clock speed.

    One I used had a printer/reader, separate punch, and a drum memory. UofMich guys had mad a plug board that turned it into a stored-program machine - booting a program from the console card reader. Printer was strictly numeric and took about a second per line to print. A row of heavy metal typebars would rise up, each one stopping at the correct height, and when enough time had elapsed for all of them to have reached maximum height the whole thing would "whack" forward through the ribbon onto the paper.

    There was a prime-number sieve program that they used for basic checks. After about the first 13 primes or so it was taking longer than a printer cycle to compute them. B-)
  • I bet it boots faster than my current machine.
  • That's what I love about PalmOS devices. Everything's in memory. You push the power button, and it turns on. The only thing I ever have to wait for is searches on my 4+ meg medical manual.
  • "(Score:0, Offtopic)"

    The topic is an old IBM that ran 1000 instructions/second. I made a joke relating that to my slow computer. If you need more help understanding this, drop me an email and I'll further explain the concept.

    Don't drink and moderate. Thank you.


  • by 11thangel ( 103409 ) on Monday July 02, 2001 @07:38AM (#114327) Homepage
    Why was it the 604?

  • I invoke Goodwin's Law [].

    You lose.

  • Sure, we now use GHzs to measure speed, nut that's just 1,000,000Hz
    Actually that's a MHz. A GHz is 1,000,000,000 Hz. (One billion.)
  • by Animats ( 122034 ) on Monday July 02, 2001 @12:39PM (#114330) Homepage
    This wasn't really IBM's first computer. It was, as someone else pointed out, one of the last of their line of tabulating machine accessories.

    In the tabulating machine era, there were keypunches for input, tabulators for addition, subtraction, and printing, sorters for sorting, and collators for merging and matching. The need for multiplication was limited, and was addressed by standalone machines like the 602A, basically a mechanical desk caculator integrated with a card reader/punch.

    The mechanical multipliers were slow, and the last years of the mechanical era included electronic multipliers and dividers, culminating in the IBM 604, the last of the plugboard-wired engines.

    The IBM 650 [], a real computer with a magnetic drum main memory, was IBM's first commercial general purpose programmable computer. (Knuth did his first programming on one.) It was programmed with an assembler that generated object programs, not by wiring plugboards like the 604.

    The IBM 701 [] was IBM's first all-electronic computer. Everything previous had moving parts in the basic compute loop, slowing things down.

    IBM had a few experimental machines before the 650 which could be called computers, the huge IBM Selective Sequence Controlled Calculator [] being the first big one. But those were one of a kind machines.

    Bear in mind that IBM was running way behind in this period. UNIVAC was the technology leader back then.

  • by regen ( 124808 ) on Monday July 02, 2001 @07:57AM (#114331) Homepage Journal
    A lot of early IBM computers where named for the buildings they were designed in. This is true of the 70X machines (701 was the RISC computer ever designed and lives on as an IO processor in the modern mainframes) designed in Poughkeepsie, and probably of the 604.
  • by TomV ( 138637 ) on Monday July 02, 2001 @07:57AM (#114332)
    The 604 "Electronic Calculating Punch" was developed from the 603 Electronic Multiplier, itself a derivative of 1933's 601 Electronic Multiplying Punch.

    Enhancements included an increased clock speed (from 35kHz to a screaming 50 kHz, wahey!!), use of miniature tubes, capacity of 20 plugboard steps per card instruction, 32 digit capacity, new flip-flops, and use of standardised control circuitry to make maintenance easier.

    It wasn't the first IBM capable of division, that was the 602, and it wasn't a stored-program computer, as it executed straight off the card.

    It's sort of questionable if the 604 was a 'computer' in any modern sense, but it was a lot more versatile and reliable than previous electronic calculators, and IBM managed to ship 5600 or so. Also, the demand for 604 parts basically kicked off the 'computer grade vacuum tube' market.


  • What have we had in the last 6 months here? About 10 stories about ancient/archaic computer systems. It was only interesting the first 3 or 4 times... now it's really wearing thin. Why don't they give "Computing History" or something like that it's own /box so those of us tired of these kinds of stories can filter them out?
  • Well, at least we agree on the movie reviews. ;b
  • From the article: "[early 1940s machines] were highly unreliable (MTBFs in the 10 hour range)."

    (Writing from my Win98 laptop) You mean a 10 hour MTBF was considered *bad*?

  • It was Colossus, not Hercules. And it wasn't quite a general purpose computer.
  • This is NOT news.

    Why is this on the Slahdot site?

    Are you guys really getting that short of articles?


  • Read the article, you hopeless troll. Released when, umm, 1948...?


  • You obviously weren't in class the day they taught hte lesson that knowledge is power.

    Does this stuff have a great deal of relevance to your gigahertz desktop screamer? Not really. But it will give you an understanding of how that box got onto your desk, and for the price it did. It is funny to me that people who often dont have a clue how the things actually work are disdainful of reading and learning about the design and engineering behind the first computers.

    To top it all off, I'd much rather have a dozen stories about old computing platforms than have to read another Jon Katz movie review.
  • actually since there is a possiblity that all 40 possible locations do not have code, a 2 instruction program for example. The number actually increases on the programs available for it.
  • Turned on my PC this morning and it gave me crap about not being shutdown properly (small chance this was caused by an irate programmer uttering "fsck off!" when it lost its marbles on friday and just hit the power switch) I miss them good old days, when computers came on in an instant and you could just shut off. Kinda like my old TI-55 programmable calculator, come to think of it, and about as fast.

    Still, I see nothing here about analog computers which have been around for ages and perform functions fast, efficiently, and at minimal cost (so's you can afford backup systems!)

    All your .sig are belong to us!

  • If it was IBM's FIRST computer...
    Why was it the 604?
    because IBM didn't start business with the 604, they had been selling business since 189x. That year (karma whores will find that) Herman Hollerith founded a company that sold tabulating machines, they were based on electromechanical principles and were not software programmable.
  • Imagine California's Energy crisis if the dot.coms used 601's for web servers!
  • No it wouldn't. It used these things called vacuum tubes (or valves if you're a Brit). Once you turned on the power you would have to wait for the filaments in the tubes to heat up. This can take several minutes.

    I have an antique radio. I always get a kick when someone asks me if it works. I tell them sure, just plug it in - then after about thirty seconds they are asking me if I'm sure. Somewhere after the 90 second point is when sounds are actually heard coming from the speaker.

  • Think about this the next time you want to go on yet another 'Microsoft and their monopoly sucks' rant.

  • What's even more incredible is the fact that you used the word 'programmable' 4 times in 3 sentences.

  • by Strangely Unbiased ( 313686 ) on Monday July 02, 2001 @07:50AM (#114347) Homepage
    Computers haven't changed all that much, have they? Sure, we now use GHzs to measure speed, nut that's just 1,000,000Hz, it's not a different measure. Computers have been working in pretty much the same way since then and it kind of reminds me the way cars continue to use the same archaic technology used back in 1900, only greatly refined.This is simply because it's easier (and cheaper) for manufacturers to maintain a single common base for their products for as long as possible before throwing it away and starting all over again.
    The choice, I believe, is ours: Mass production or revolution?
    We have to find a balance, especially in the computer world (Pentium 11, anyone?).

  • You'd still be leasing a pulse dial phone too if AT&T wasn't smacked around by the government also. It's so paradoxial for me as a libertarian to have to admit that sometimes you need a powerful government to step in and help. Only because people are stupid enough to let entities like Microsoft, IBM and AT&T exist. If people educated themselves they wouldn't need a protector.
  • I win, you replied and kept the thread going plus this isn't usenet kid.
  • A beowulf of these (/me ducks from all of the rotten tomatoes thrown in my direction) may be able to play adventure.

    But since I live in California and am under the ruling of Gray Davis, a beowulf of these electromechanical beasts would cause a rolling blackout.

  • Repeat after me: Moore's law does not deal with processor speed. It deals with the amount of transistors on an IC. This is a pre transistor machine, thus Moore's law does not apply to this wonderful computing machine.
  • True this wasn't IBM's first computer. As Dag points out in the article, this was IBM's first foray into electronic computing.
  • Here's a few more:


    They prove about as much as the last post ;)

    Don't mind me - just passing through.

  • Did it double as a bread oven?
  • It must have been nice to run down to your local computer smithe and have him hammer one out on his anvil in only a matter of a few months.... Gimme good ol' computer iron any day.. Ahhh....The days when "de-bugging" was a literal term...
  • (Gigs, Megs - whatever).
    I think of categories. The rotary engine is different from the piston engine, but they're both internal (infernal?) combustion engines.
    A sliver of silicon is different from a vacuum tube, but they both act as electric gates (or, well, millions of them)
    Along these lines, yes, there's no big, big difference, but real innovation _is_ rare. The wheel is my favourite example: excruciatingly simple, yet a breathtaking innovation in it's day (and it hasn't fundamentally changed since. The next step? Magnetic barings, perhaps? A mere couple of millennia later.)
    But why is this so? Look at computers: how else to solve a problem other than to formulate rules, and in a boneheaded manner, apply the rules billions of time in as short a time as possible (i.e. program. Next step: if I had a clue, I believe I just might obscenely rich). Or display: How to generate an arbitrary image, other than to split it up into as many little coloured dots as possible, and put them all into a matrix? (Next step: holographic displays ... but probably along the same lines)
  • One thing I find interesting is that many of the guys who built this stuff are still around. I feel ancient showing the PFYs around here my ZX81 [], and they go "Oh, neat. So small. Is it new?" (Aaaargh!).
    On occasion I imagine going back just 40 years, and trying to convince anyone who wasn't certifiable, that yes, GHz speeds, under the desk, running off the power of a fsking lightbulb, for less than 1k$ is pretty much the norm. It's probably less interesting for the 604 guys, who came the long way around (as it were), but talk about exciting. (goes all starry-eyed).
  • My word. I _did_ leave out an "in my opinion" or "I think that" at the beginning there.
    Thus, I take back my statement, and declare the opposite: The first wheel ever actually pumped air into people's lungs.
    No, wait, I'll go ask that Australian guy, who just invented the wheel. He's the man.
  • Uh, yeah. <sheepish grin>. How about "for the price of a good camera". Putting it like that, I guess the resulting question would be "What for?". I use my IT equipment for IT 90% of the time. If I didn't have a computer, I wouldn't need a computer, as it were. The other 10%? Uh, games?
  • Arguments to instructions in this most basic of instructions sets are stored in the opcodes themselves and therefore are already included in the numbers i cited. same as doing adds and subs on x86 with constant values. the constants are included in the opcode value in memory and so don't need a separate calculation.
  • by thatguywiththestuff ( 449420 ) on Monday July 02, 2001 @07:50AM (#114361)
    I wish. Here are a few numbers for ya:

    16 possible instructions. 40 in memory.

    That's 16^40 = 1.46 x 10^48 combinations.

    Now, let's assume that we have a computer than can generate 1 billion of these per second.

    That's 1.46 x 10^39 seconds.

    Okay, we have 1 billion of those computers.

    That's 1461.5 billion billion billion seconds.

    That's 46.3 billion billion millenia.


    Justin Dubs
  • I would be very interested in playing with an emulator for this, or failing that, and having specs writing one. I might even write an emulator for in in PIC assembly language to have an actual physical emulator (now instead of taking kilowats it'd probably take milliwats. It would be fun though.)

    So: If anybody has detailed hardware/instruction set/IO specs, i'd love to see them.

    Right off the bat, I'd like to state that I think whoever moded this down was clueless. ("flamebait"? As if the 604 User Group is going to respond in outrage? Get real.)

    Second, in answer to your direct question, I don't have an documenation on it--at least, a quick search of my bookshelf didn't turn up anything older than the 1602--but I'll let you know if I come across anything.

    Finally, you may be interested in a simulation of EDSAC [], "the world first stored program computer to operate a regular service." I also enjoyed reading "The First Computers" (by Rojas [] & Hashagen, MIT press), which goes into a number of the claiments for "first" in the field.

    -- MarkusQ

  • There's an idea! Computing History, for all of the old gezzers to dream about the good old days with computers the size of a room with it's very own ac system. That would be nice! 90 F outside come into a 60 F room and have to put on a winter coat.
  • Anyone have the Quake III benchmark for this new box? :-)
  • I bought an IBM 604 a few months ago thinking it was a PowerPC! No wonder MacOS is still loading!
  • by standards ( 461431 ) on Monday July 02, 2001 @07:49AM (#114366)
    Ah, everyone always forgets about the IBM Mech1. This mechanical computer was programmable, certainly not in the modern sense. It was availble 15 years earlier.

    It had 19 ten-digit decimal registers, and was fully programmable by inserting replacable camshafts. Although not programmable on the fly, it did have memory (the state of the machine), and it was in fact programmable, with screwdrivers and wrenches.

    It required a bit of oil and greese, but was known for calculating Pi to 190 places in under 3 minutes ... an incredible accomplishment for it's day.
  • If it was at 50kHz back in 1949, where according to Moore's Law should we be by now???
  • Repeat after me - It's a joke - laugh or move along. Anyway, if I was being serious I would have said 'maths'.
  • Because it used an improved version of the PowerPC 603e. How else would you explain its earth shattering stats???

Don't tell me how hard you work. Tell me how much you get done. -- James J. Ling