Chapter 1. Introduction to Computing
Higher Secondary · Computer Science · Science Stream

1. Introduction to Computing

From ancient counting systems to Artificial Intelligence — trace how humans first learned to count, how early machines calculated, and how computers evolved generation by generation.

"Computer science is no more about computers than astronomy is about telescopes... Science is not about tools. It is about how we use them, and what we find out when we do." — Edsger W. Dijkstra
1.1.1

Evolution of Number Systems

Long before computers, civilisations invented their own ways to count and record numbers — each contributing an idea that shaped the mathematical foundation modern computing stands on.

Number SystemTime PeriodKey Idea
Egyptian3000 BCDecimal (base 10), pictographs for powers of ten
Sumerian / Babylonian2000 BCSexagesimal (base 60); space as placeholder for zero
Chinese1200 BCDecimal (base 10); counting rods and boards
Greek (Ionian)500 BCLetters of the alphabet; non-positional, no zero
Roman500 BCSymbols I, V, X, L, C, D, M; non-positional, no zero
Mayan300 ADVigesimal (base 20); positional, with a symbol for zero
Hindu–Arabic5th–6th century ADPositional decimal system; introduced the digit 0 (from India)

The Hindu–Arabic system — positional, with zero — forms the basis of the modern number system used worldwide today.

1.1.2

Introduction to Computing Machines

Manual calculation was slow and error-prone — these are the milestone devices that made calculation faster and, eventually, programmable.

~3000 BC

Abacus

Beads on rods for addition and multiplication using place value. Invented by the Mesopotamians, refined by the Chinese.

1617

Napier's Bones

Numbered rods devised by John Napier for multiplication and division of any number by a single digit.

1642

Pascaline

Blaise Pascal's gear-and-wheel adding machine — addition and subtraction with carry-transfer.

1673

Leibniz's Calculator

Extended Pascal's machine to multiplication and division, done through repeated addition.

1801

Jacquard's Loom

Punched cards controlled weaving patterns — a precursor to programmable computers.

1822 / 1833

Babbage's Engines

Difference Engine, then the Analytical Engine — with a processor, memory and I/O concept. Babbage: "Father of Computers."

1944

Mark I

Howard Aiken & IBM's electromechanical computer — the first operational general-purpose computer.

1945

Stored Program Concept

John von Neumann proposed storing program and data in the same memory unit — the basis of all modern computers.

Ada Lovelace

Worked with Babbage on the Analytical Engine and wrote the first algorithm intended for a machine — widely regarded as the first computer programmer. She was first to realise computers could create music, art and graphics, not just do mathematics.

1.1.3

Generations of Computers

Each generation is defined by a major hardware or software advancement that made computers smaller, faster and more capable.

GenerationDatesTechnology
First1940–1956Vacuum Tubes — ENIAC, EDVAC, UNIVAC I
Second1956–1963Transistors — IBM 1401, IBM 1620; FORTRAN, COBOL
Third1964–1971Integrated Circuits (ICs) — IBM 360/370, PDP-8/11
Fourth1971–PresentMicroprocessors (LSI/VLSI) — Intel 4004, personal computers
Fifth1982–PresentArtificial Intelligence — ML, NLP, robotics, quantum & cloud computing

2nd Gen Shift

Magnetic core memory enabled cost-effective long-term storage; commercial use in payroll & inventory took off.

3rd Gen Shift

OS with multitasking/multiprogramming (e.g. OS/360) — computers reached education and small business.

4th Gen Shift

Intel 4004 (1971) — the first microprocessor — enabled affordable, personal-use computers and the Internet.

1.1.4

Evolution of Programming Languages

From binary machine code to natural, English-like statements — languages evolved to reduce complexity and machine dependence.

Machine Language

Pure binary (0s, 1s). Directly understood by the CPU; fast but very hard to write, debug, and machine-dependent.

Assembly Language

Mnemonic codes like ADD, SUB, MOV instead of binary. Easier to write, but still machine-dependent.

High-Level Languages

English-like statements, machine-independent. Began with Short Code and Autocode; FORTRAN (1957) was the first widely used one.

Language Timeline

FORTRAN 1957
LISP 1958
COBOL 1959
BASIC 1964
Pascal 1970
Prolog 1972
C 1972
C++ 1983
Python 1991
JavaScript 1995
Java 1995

Programming paradigms: ■ Imperative — FORTRAN, COBOL, Pascal, C  |  ■ Object-oriented — C++, Java, Python, JavaScript  |  ■ Functional — LISP  |  ■ Logic — Prolog

1.2 – 1.3

How Computers Are Used & Data Processing

A functional computer needs both hardware and software. In practice, computers are used for four broad purposes:

Data Storage & Processing

DBMS, word processors, spreadsheets — e.g. the Aadhaar database storing information for crores of people.

Problem Solving

Designing algorithms and expressing them in languages like Python; compilers/interpreters and OS assist this.

Networking & Communication

The Internet connects computers for email, video calls, streaming and social media.

Intelligent Decision Making

Machine learning & AI — diagnosing disease, playing chess, self-driving cars, and IoT devices like smart bulbs.

Stages of Data Processing (in practice)

Input Format Design

Deciding structure in advance — a billing record layout, a registration form, an IoT sensor's units.

Data Input

Manual, automated or sensor-driven — barcode scans, web forms, IoT/AI camera feeds, VR controllers.

Data Storage

HDDs, SSDs, cloud storage and databases — for security, quick retrieval, and backup.

Data Processing

Validation, computation, comparison, decision-making — e.g. computing a Total Bill Amount.

Output & Visualisation

Reports, dashboards, alerts, charts, PDFs — presenting results clearly to the user.

Feedback Loop

IoT, AI cameras and game engines often feed fresh sensor/player data straight back into processing in real time.

Let Us Do

Quick Recap

Tap a question to reveal the answer.

Which ancient number system was the first to use a symbol for zero, and which was positional with it?

The Mayan number system (300 AD) used a shell-shaped symbol for zero and was positional. The Hindu–Arabic system later combined a positional decimal system with the digit 0, contributed by India.

Why is Charles Babbage called the "Father of Computers"?

He designed the Difference Engine (1822) and the Analytical Engine (1833). The Analytical Engine included the concept of a central processor, memory storage, and input-output devices — establishing the basic principles modern computers work on, even though it was never built in his lifetime.

What was revolutionary about Jacquard's Loom?

It used punched cards to control weaving patterns automatically — the sets of punched holes acted like a program, making it a precursor to programmable computers.

What is the "stored program concept" and who proposed it?

John von Neumann (1945) proposed storing both the program and its data in the same memory unit — a major shift from earlier machines where instructions were fixed in hardware wiring or punched cards. All modern computers are based on this concept.

Which technology defines each generation of computers?

1st: Vacuum Tubes · 2nd: Transistors · 3rd: Integrated Circuits · 4th: Microprocessors · 5th: Artificial Intelligence.

Name the four main programming paradigms and give one example language of each.

Imperative/Procedural (FORTRAN, COBOL, Pascal, C), Object-oriented (C++, Java, Python, JavaScript), Functional (LISP), and Logic programming (Prolog).

Why was assembly language an improvement over machine language, and what limitation remained?

Assembly language used mnemonic codes (ADD, SUB, MOV) instead of raw binary, making programs easier to write and debug. However, it remained machine-dependent — a program written for one type of computer couldn't run on another without modification.