Difference between revisions of "Whirlwind"

From Computer History Wiki
Jump to: navigation, search
(Actually, did have 'jump and save old PC' instruction)
(no 'return' 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). [[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]]).  
+
[[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.
 +
 
 +
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 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]] (including to return from a subroutine). 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.

Revision as of 22:11, 4 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.)

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.

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 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 (including to return from a subroutine). 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

  • LINC - an important descendant of Whirlwind
  • TX-0 - an earlier important descendant

External links