The Difference Engine

23 slides
4.54 MB

Similar Presentations

Presentation Transcript


History of ComputersLecture 1


History of ComputersMechanical Computers Abacus Jacquard Loom Player Piano Difference Engine Analytical Engine Hollerith and the 1890 US Census


The Jacquard LoomProgram cards with punched holes to control the pattern being woven. Less talented people could make cloth as fancy as highly skilled weavers.


Player Piano The typical upright player piano was operated by pumping two large foot pedals which came out from inside the lower panel of the instrument. Pumping these pedals created a vacuum, which operated a perforated paper roll located behind sliding doors in the front panel of the instrument. The perforations in the paper roll passed over a series of holes through which vacuum was pulled to activate the keys.


The Difference EnginePredecessor to the Analytical Engine Calculated value of polynomials via the addition of differences Single purpose - not programmable for other purposes


The Difference EngineCalculates a polynomial such as the square of a number via a sum of the differences.


The Analytical EngineAdded the concept of storing on cards the sequence of operations for a machine such as the difference engine to make it programmable. Augusta Ada, Countess of Lovelace was the first computer programmer. We have named a programming language (Ada) in her honor. Charles BabbageAugusta Ada


Hollerith CardsHollerith used punched cards to hold data and could mechanically sort the cards and add/print data from cards in sorted order. Hollerith cards were used for utility bills and US Savings Bonds as recently as the 1980’s.


Hollerith Card Processing


History of ComputersEarly Electrical/Electronic Computers Atanasoff-Berry Computer – Vacuum Tubes Konrad Zuse and Helmut Schreyer - Relays Howard Aiken (Harvard Mark I) – Relays Typical Uses Compute Ballistic Firing Tables for Artillery Solutions for Algebraic Equations


Relays versus Vacuum TubesRelays are switches controlled by a magnetic fieldInput Voltage And CurrentOutput Voltage(s) And Current(s)ElectromagnetSwitchesFilament PowerOutput Voltage(s) And Current(s)Input Voltage And CurrentVacuum Tubes are switches controlled by an electric field


Relays versus Vacuum TubesBoth were in mass production at the time (1940’s) Relays were used in telephone switches Vacuum tubes were used in radios. Relays used mechanical switches that could fail due to dirt, etc. and were slower than vacuum tubes Relays were more reliable than vacuum tubes which had a filament (like a light bulb) that could burn out. Both used a relatively large amount of power by comparison to today’s electronic circuits


History of Computer HardwareElectronic Computers – First Generation British Colossus Electronic Numerical Integrator and Computer (ENIAC) IBM 7090


ENIACA 30 by 50 foot room 18,000 Vacuum Tubes Programming done via wires on patch panels Not as powerful as the machine in front of you Mean Time Between Failure (MTBF) shorter than many practical jobsLots of heat generated by the vacuum tubes - needed cooling


History of Computer HardwareElectronic Computers – Second Generation Transistors (invented 1957) IBM 360 Honeywell 316 Many large racks of equipment using a lot of power and needing an air conditioned room


History of Computer HardwareElectronic Computers - Third Generation Integrated Circuits (invented 1963) IBM 370 DEC VAX Fewer smaller equipment racks, but still using a lot of power / needing an air conditioned room


History of Computer HardwareElectronic Computers – Fourth Generation Large scale/Very Large Scale Integrated Circuits Microprocessors (Computer on a chip) IBM PC and Apple MacIntosh IBM Mainframes and Servers Apollo/HP/Sun Workstations Single shelf, Desktop, and Laptop Possible


The Computer as a ToolCalculators “Modern” Mechanical Calculators Slide Rules Modern Pocket Calculators Windows Calculator Accessory Programs/Accessories/Calculator on PC Screen Easy to use because it looks like a modern pocket calculator


A Person as a ComputerWith simple (four function) calculators, the user is the computer, e.g. balancing your checkbook The calculator is an aid to the person doing computing, but doesn’t know the algorithm The person must know the algorithm for the calculation being done and control execution of it A simple calculator is similar to the Difference Engine – It is not programmable A true computer is programmable and controls the execution of the algorithm


An AlgorithmA series of steps for computing a result, e.g. Newton’s method for finding the square root of a number via multiple iterations (Page 26) Guess = (n + Guess2)/(2 x Guess) Computers are good at doing repetitive steps such as iterating a formula like the one above


A ProgramProgram contains one line with the algorithm Program must also handle input and output of numbers to be calculated (n and guess) Program must also control the number of iterations (or allow user to control them) Program must also exit cleanly when done Programmer must handle many details!!!


A Program doing an AlgorithmSee class demonstration of HTML and JavaScript program for Newton’s Method


Modern Computer PersonalitiesAlan Turing John Von Neumann Ted Hoff (Intel) Wosniak/Jobs (Apple) Bill Gates (Microsoft)

Browse More Presentations

Last Updated: 8th March 2018

Recommended PPTs