Lecture 1

Cards (39)

  • Computer
    A device that can perform calculations or operations on data automatically
  • Data
    Numbers, words, images, sounds, or any other kind of information that can be represented in binary code (sequences of 0s and 1s)
  • Calculations or operations
    Arithmetic, logical, or any other kind of manipulation that can be expressed by a set of instructions or a program
  • Studying the history of computing

    • Helps us understand how computers evolved over time and how they influenced various aspects of human society and culture
    • Inspires us to imagine the future possibilities and applications of computing in solving problems and creating new knowledge
  • Examples of early tools and methods for computing
    • Abacus
    • Napier's bones
    • Slide rule
  • The mechanical era of computing began in the 17th century, when several inventors designed and built machines that could perform arithmetic operations using gears, levers, wheels, and springs.
  • Examples of mechanical computing machines
    • Pascaline
    • Stepped reckoner
    • Difference engine
  • Pascaline
    A machine that could add and subtract numbers up to eight digits. Invented by Blaise Pascal, a French mathematician and philosopher, in 1642.
  • Stepped reckoner
    A machine that could add, subtract, multiply, and divide numbers up to 16 digits. Invented by Gottfried Leibniz, a German philosopher and mathematician, in 1673.
  • Difference engine
    A machine that could calculate polynomial functions using the method of finite differences. Designed by Charles Babbage, an English mathematician and engineer, in 1822.
  • Analytical engine

    A visionary project by Charles Babbage to create a general-purpose programmable machine that could perform any kind of calculation or operation on data.
  • Main parts of the analytical engine
    • The mill
    • The store
    • The input
    • The output
  • The analytical engine was never completed due to technical difficulties and lack of funding.
  • Ada Lovelace
    An English mathematician and the daughter of Lord Byron, a famous poet. Considered as the first computer programmer in history.
  • Ada Lovelace described how the analytical engine could be programmed using loops, variables, conditional statements, and subroutines. She also wrote an algorithm for calculating Bernoulli numbers using the machine, which is regarded as the first computer program ever written.
  • The electromechanical era of computing began in the late 19th century, when electricity was applied to enhance the speed and reliability of mechanical machines.
  • Examples of electromechanical computing machines
    • Tabulating machine
    • Analytical engine Mark I
    • Z3
  • Tabulating machine
    A machine that could sort and count data stored on punched cards.
  • Analytical engine Mark I
    A machine that could perform arithmetic operations on decimal numbers using electromechanical relays. Built by Howard Aiken, an American physicist and engineer, in 1944.
  • Z3
    A machine that could perform arithmetic operations on binary numbers using electromechanical relays. Built by Konrad Zuse, a German engineer and inventor, in 1941.
  • The electronic era of computing began in the mid-20th century, when vacuum tubes and transistors replaced electromechanical relays as the main components of machines.
  • Examples of electronic computing machines
    • ENIAC
    • EDVAC
    • EDSAC
  • ENIAC
    A machine that could perform arithmetic operations on decimal numbers using vacuum tubes. Built by John Mauchly and J. Presper Eckert, two American engineers, in 1946.
  • EDVAC
    A machine that could perform arithmetic operations on binary numbers using vacuum tubes. Designed by John von Neumann, a Hungarian-American mathematician and physicist, in 1945.
  • EDSAC
    A machine that could perform arithmetic operations on binary numbers using vacuum tubes. Built by Maurice Wilkes, an English computer scientist, in 1949.
  • Programming languages are artificial languages that are used to create instructions or programs for machines to execute.
  • Examples of early programming languages
    • Short Code
    • FORTRAN
    • LISP
  • Short Code
    A language that used mnemonic symbols to represent arithmetic operations. Created by John Mauchly in 1950.
  • FORTRAN
    A language that used algebraic expressions and control structures to represent mathematical formulas and algorithms. Created by John Backus and his team at IBM in 1957.
  • LISP
    A language that used symbolic expressions and recursive functions to represent logical reasoning and artificial intelligence. Created by John McCarthy, an American computer scientist, at MIT in 1958.
  • Operating systems are software programs that manage the resources and activities of machines.
  • Examples of early operating systems
    • GM-NAA I/O
    • FMS
    • CTSS
  • GM-NAA I/O
    An operating system that provided input/output routines for various devices such as tape drives, printers, card readers, etc. Created by General Motors and North American Aviation in 1956.
  • FMS
    An operating system that provided file management services for magnetic tapes and disks. Created by SHARE, a group of IBM users, in 1959.
  • CTSS
    An operating system that provided time-sharing services for multiple users to access a single machine simultaneously. Created by MIT's Computation Center in 1961.
  • Databases are collections of data that are organized and stored in a way that allows easy access, manipulation, and analysis.
  • Examples of early databases
    • IMS
    • CODASYL
  • IMS
    A database that used a hierarchical model to organize data into records and fields. Created by IBM in 1966.
  • CODASYL
    A database that used a network model to organize data into records and sets. Created by CODASYL (Conference on Data Systems Languages), a group of computer scientists and industry representatives, in 1969.