Difference between revisions of "Whirlwind"
m (→External links: Better cat) |
(Actually, did have 'jump and save old PC' instruction) |
||
Line 5: | Line 5: | ||
It was built out of vacuum tubes, and had a [[word]] size of 16 bits. It used a predecessor to [[microcode]] for internal control [[logic]] (it used a sequence of hard-wired control words for control, effectively [[read-only memory|ROM]], but did not include any ability to alter the order of execution thereof.) | It was built out of vacuum tubes, and had a [[word]] size of 16 bits. It used a predecessor to [[microcode]] for internal control [[logic]] (it used a sequence of hard-wired control words for control, effectively [[read-only memory|ROM]], but did not include any ability to alter the order of execution thereof.) | ||
− | In common with other very early machines, its [[architecture]] was somewhat peculiar (by current standards). Its [[control flow]] capabilities were limited and primitive; it had [[conditional branch]]ing, but no support of any kind for [[subroutine]]s ( | + | In common with other very early machines, its [[architecture]] was somewhat peculiar (by current standards). [[Instruction]]s included a 12-bit [[absolute address]]; when its [[main memory]] later exceeded that size, a [[bank switching]] mechanism had to be added. It had only a single [[register|accumulator]], and no [[index register]]s. Its [[control flow]] capabilities were limited and primitive; it had [[conditional branch]]ing, but almost no support of any kind for [[subroutine]]s (it did have a '[[jump]] and save the old [[Program Counter|PC]] in the accumulator' instruction), and no provision for [[stack]]s. As a result of all that, extensive use was made of [[self-modifying code]]. It had neither [[interrupt]]s or [[trap]]s (but could be caused to [[halt]] on an [[arithmetic overflow]]). |
The standard input/output device was a [[Flexowriter]] (very similar to a [[Teletype]]); it functioned as a [[printing terminal]] (initially only for output), and could also read and punch [[paper tape]]s. (A high-speed Ferranti photo-electric paper tape reader was also added later, as was a [[line printer]].) Eventually, the system was enhanced with a [[magnetic tape drive]] and a [[drum]]. A [[vector graphics|vector]] [[video display]] and a [[light pen]] input pointing device were also added. | The standard input/output device was a [[Flexowriter]] (very similar to a [[Teletype]]); it functioned as a [[printing terminal]] (initially only for output), and could also read and punch [[paper tape]]s. (A high-speed Ferranti photo-electric paper tape reader was also added later, as was a [[line printer]].) Eventually, the system was enhanced with a [[magnetic tape drive]] and a [[drum]]. A [[vector graphics|vector]] [[video display]] and a [[light pen]] input pointing device were also added. | ||
+ | |||
+ | {{semi-stub}} | ||
==See also== | ==See also== | ||
Line 26: | Line 28: | ||
* [https://computerhistory.org/blog/gambling-on-whirlwind-how-the-us-navy-spent-3-million-and-got-a-computer-game/ Gambling on Whirlwind: How the US Navy Spent $3M and got a Computer Game] | * [https://computerhistory.org/blog/gambling-on-whirlwind-how-the-us-navy-spent-3-million-and-got-a-computer-game/ Gambling on Whirlwind: How the US Navy Spent $3M and got a Computer Game] | ||
− | + | [[Category: Computers]] | |
− | |||
− | [[Category: |
Revision as of 15:34, 3 May 2023
Whirlwind was one of the very first computers; it was enormously influential, for several reasons. It was the first real-time computer, unlike all the other first-generation computers, which were intended only for large-scale computations for numerical applications. It was also the first computer with core memory, which was invented for it (some time after it had first come into service; it initially used electrostatic vacuum tube main memory).
Whirlwind was built at MIT (MIT's first computer), originally for use in a flight simulator, but wound up being used to prototype the SAGE air defence system.
It was built out of vacuum tubes, and had a word size of 16 bits. It used a predecessor to microcode for internal control logic (it used a sequence of hard-wired control words for control, effectively ROM, but did not include any ability to alter the order of execution thereof.)
In common with other very early machines, its architecture was somewhat peculiar (by current standards). Instructions included a 12-bit absolute address; when its main memory later exceeded that size, a bank switching mechanism had to be added. It had only a single accumulator, and no index registers. Its control flow capabilities were limited and primitive; it had conditional branching, but almost no support of any kind for subroutines (it did have a 'jump and save the old PC in the accumulator' instruction), and no provision for stacks. As a result of all that, extensive use was made of self-modifying code. It had neither interrupts or traps (but could be caused to halt on an arithmetic overflow).
The standard input/output device was a Flexowriter (very similar to a Teletype); it functioned as a printing terminal (initially only for output), and could also read and punch paper tapes. (A high-speed Ferranti photo-electric paper tape reader was also added later, as was a line printer.) Eventually, the system was enhanced with a magnetic tape drive and a drum. A vector video display and a light pen input pointing device were also added.
See also
External links
- Bitsavers - large collection of material
- Whirlwind Programming Manual
- Whirlwind I Operation Logic - good, detailed overview of the internal architecture
- Project Whirlwind - large collection of contemporary documents; e.g. bi-weekly progress reports
- MIT/CHM Whirlwind Software Recovery - Many links to other sites
- The Whirlwind Computer at CHM
- Gambling on Whirlwind: How the US Navy Spent $3M and got a Computer Game