Computer Programming Prelims Notes
History of Computers
Types of Devices for Data Manipulation:
- Manual Mechanical Device
- Simple mechanism powered by hand.
- Electro-mechanical Device
- Powered by electric motor.
- Electronic Devices
- Made of electrical and electronic components.
Early Computing Devices:
- Abacus
- The first computing device originating in China around the 12th Century, with earlier indicators of its invention by the Babylonians around 300 BC.
- Used as one of the most primitive calculators.
- Pascal’s Calculator
- Developed by Blaise Pascal in 1642.
- It was the first manual-mechanical calculating machine that could add and subtract up to 8-digit numbers.
- Operated by pulling a lever to calculate.
- Leibniz Calculator
- Developed by Gottfried Leibniz in 1694.
- Able to perform addition, subtraction, multiplication, and division, using a crank rather than a lever.
- Utilized gears inside the machine.
- Babbage Analytical Engine
- Known as the Father of Modern Computer.
- Developed in 1822 and was the first electro-mechanical computer, powered by a motor.
- Could perform complex mathematical calculations and logical comparisons (e.g., is 1 equal to 1).
- Supported operations such as Multiplication, Division, Addition, and Subtraction (MDAS).
Key Figures in Computing History
Lady Ada Byron (Ada Lovelace)
- Daughter of poet Lord Byron.
- Instrumental in Babbage's machine design: revised plans, secured funding, communicated specifics of the Analytical Engine.
- Recognized for her deep understanding of the machine, she created the first instruction routines to be fed into the computer, making her the first female computer programmer.
- In the 1980s, U.S. Defense Department honored her by naming a programming language "ADA".
Hollerith’s Punched Card Machine
- Adopted by the U.S. Census Bureau to compile results of the 1890 census, reducing a nearly 10-year process to just 2.5 years, saving $5 million.
- Limited to performing one task.
- Inventor Herman Hollerith was a Census Bureau statistician; he formed the Tabulating Machine Company in 1896, which evolved into IBM.
Mark 1 (Automatic Sequence Controlled Calculator)
- Officially named Automatic Sequence Controlled Calculator.
- Developed by Howard Aiken in 1937.
- The first automatic general-purpose digital computer.
The Evolution of Computer Technology
- Generations of Computers:
- The evolution of digital computing categorized into generations with each showing dramatic improvements over its predecessor technology and programming languages.
First Generation Computer (1946-1956)
Utilized vacuum tubes.
Characterized by operating instructions being made-to-order for specific tasks.
Could perform 5,000 calculations per second.
Each computer had a different binary-coded machine language, hampering programming and versatility.
- Key First Generation Computers:
ENIAC - Electronic Numerical Integrator and Calculator (1943)
- Developed by John Mauchly & Presper Eckert.
- First operational general-purpose electronic digital computer.
EDVAC - Electronic Discrete Variable Automatic Computer (1944)
- Modified version of ENIAC developed by John von Neumann; utilized binary arithmetic for simplified circuitry and stored program capability.
UNIVAC - Universal Automatic Computer (1951)
- Developed by John Mauchly and Presper Eckert; first commercially available stored-program, electronic digital computer.
Second Generation Computer (1957-1963)
Characterized by the use of transistors, which are smaller than vacuum tubes and do not require warm-up time.
Transistors consume less power and are faster and more reliable than vacuum tubes.
- Key Programming Language:
FORTRAN (1957)
- The first high-level programming language introduced by IBM.
Third Generation Computer (1964-1970)
Characterized by the use of Integrated Circuits (ICs).
Introduced multiprogramming and time-sharing into computing.
- Key Programming Language:
BASIC (Beginner's All-Purpose Symbolic Instruction Code)
- Introduced in 1964.
CDC 6600
- Developed by Control Data Corporation; recognized as the first supercomputer.
Fourth Generation Computer (1971-present)
- Introduction of the INTEL first microprocessor chip in 1971.
- Developed by Ted Hoff.
- 1975: Establishment of Microsoft Corp. by Bill Gates and Paul Allen.
- 1981: Introduction of the first IBM PC.
Fifth Generation
- Involves new computer types that include Artificial Intelligence (AI) concepts such as