Unit 2: Computer Fundamentals

CSE111 — Orientation To Computing 10 min read

I. Orientation — The Computer as a Programmable System

A computer is an electronic, programmable machine that accepts data as input, processes it according to stored instructions, produces information as output, and stores results for future use. Modern computers follow the stored-program principle associated with John von Neumann’s architecture (1945), in which instructions and data are held in memory and processed by the central processing unit.

  • Input-process-output-storage cycle: A computer receives raw facts, transforms them through operations, presents meaningful results, and retains data or instructions when required.
    • Data: Unprocessed facts, such as 72, a customer name, or a digital image.
    • Information: Processed data with meaning, such as an average score or sales report.
  • Programmability: The machine performs tasks by executing a program, which is an ordered set of instructions written in a programming language.
  • Binary representation: Computers internally represent data and instructions using binary digits, or bits, with values 0 and 1; eight bits commonly form one byte.
  • Electronic operation: Digital computers use electronic circuits, especially transistors, to represent states and perform logical operations at high speed.
  • General-purpose capability: The same computer can perform different tasks when supplied with different programs, such as a browser, spreadsheet, or media editor.
  • System organization: A usable computer system combines hardware, software, data, procedures, users, and communication facilities.
  • Basic measurements:
    • Storage capacity: Expressed in bytes and larger units such as kilobytes, megabytes, gigabytes, and terabytes.
    • Processing frequency: Commonly expressed in hertz, such as a 3.2 GHz processor performing billions of clock cycles per second.
    • Data-transfer rate: Commonly measured in bits per second or bytes per second.

II. Historical Development and Core Capabilities

A. Evolution and Characteristics of Computers

The evolution of computers is the progression from manual calculating aids to compact, connected electronic systems capable of general-purpose information processing.

  • Early calculating devices: The abacus supported manual arithmetic, while mechanical devices introduced automated calculation.
    • Pascaline (1642): Blaise Pascal’s gear-based machine performed addition and subtraction.
    • Analytical Engine (designed in the 1830s): Charles Babbage proposed a programmable mechanical machine containing concepts comparable to memory, processing, input, and output.
    • Punched-card control: Herman Hollerith used punched cards to process data for the 1890 United States census.
  • First generation, approximately 1940-1956: Computers such as ENIAC used vacuum tubes for circuitry and machine language for programming.
    • They were very large, consumed substantial electricity, produced considerable heat, and required frequent maintenance.
  • Second generation, approximately 1956-1963: Transistors replaced vacuum tubes, making computers smaller, faster, more reliable, and more energy-efficient.
    • Assembly language and early high-level languages such as FORTRAN and COBOL became important.
  • Third generation, approximately 1964-1971: Integrated circuits placed multiple electronic components on a single chip.
    • Operating systems, keyboards, monitors, and multiprogramming improved interaction and resource use.
  • Fourth generation, from 1971: Microprocessors placed the CPU on a compact integrated circuit.
    • Intel’s 4004, introduced in 1971, was an early commercial microprocessor.
    • Personal computers, graphical interfaces, networks, laptops, and mobile devices developed during this era.
  • Fifth-generation direction: Current development emphasizes artificial intelligence, natural-language processing, machine learning, robotics, parallel processing, and highly connected systems.
    • This is better understood as an ongoing technological direction than as a sharply dated hardware generation.
  • Speed: Computers can perform millions or billions of operations per second; processor performance is influenced by clock frequency, core count, architecture, memory, and workload.
  • Accuracy: Correct hardware and instructions can produce highly precise results, but incorrect input or programs produce incorrect output, often expressed as “garbage in, garbage out.”
  • Diligence and consistency: A computer can repeat the same operation without fatigue or loss of concentration, making it suitable for payroll processing or continuous monitoring.
  • Storage: Large quantities of programs and data can be stored and retrieved rapidly; for example, a 1 TB drive holds approximately one trillion bytes under decimal measurement.
  • Automation: Once a program and required data are supplied, operations can continue with limited human intervention, as in scheduled backups.
  • Versatility: One system may support calculation, communication, design, entertainment, education, and control applications.
  • Limitations: A computer does not independently possess human judgment, common sense, emotion, or moral responsibility; its behavior depends on hardware, data, software, and human decisions.

III. Internal Organization of a Computer System

A. Functional Units of a Computer

Functional units are the coordinated parts through which a computer receives data, processes instructions, stores information, and communicates results.

  • Input unit: Input devices convert user actions or physical signals into machine-readable data.
    • A keyboard supplies characters, a mouse supplies positional commands, a scanner digitizes documents, and a microphone converts sound into digital input.
    • Input interfaces may also validate or buffer data before sending it to memory or the processor.
  • Memory unit: Memory holds programs, input data, intermediate values, and results needed by processing operations.
    • Registers: Extremely fast storage locations inside the CPU, such as the program counter and instruction register.
    • Cache: High-speed memory located close to the CPU that stores frequently used instructions and data.
    • Random-access memory: Volatile primary memory whose contents normally disappear when electrical power is removed.
    • Read-only memory: Non-volatile memory used for persistent instructions, including firmware needed during startup.
  • Central processing unit: The CPU interprets and executes instructions and coordinates the other functional units.
    • Arithmetic logic unit: Performs arithmetic such as addition and logical operations such as comparison, AND, OR, and NOT.
    • Control unit: Directs instruction execution by issuing timing and control signals to memory, the ALU, and input/output devices.
    • Registers: Hold instructions, addresses, operands, and immediate results during execution.
  • Fetch-decode-execute cycle: The CPU repeatedly retrieves and processes machine instructions.
TEXT
1. Fetch an instruction from memory.
2. Decode its operation and operands.
3. Execute the required operation.
4. Store the result where specified.
5. Advance to the next instruction.
  • Output unit: Output devices convert processed binary results into a form usable by people or other systems.
    • A monitor provides visual output, a printer produces hard copy, speakers produce sound, and a network interface transmits digital results.
  • Secondary storage unit: Devices such as solid-state drives, hard disk drives, optical discs, and flash drives preserve information when power is removed.
    • Secondary storage generally provides greater capacity than primary memory but slower direct access.
  • System interconnection: Buses carry signals among the CPU, memory, and devices.
    • Data bus: Carries actual data.
    • Address bus: Identifies a memory location or device.
    • Control bus: Carries commands such as read, write, and interrupt signals.
  • Concrete processing example: When calculating 8 + 5, input devices supply the values and operator, memory holds them, the control unit directs execution, the ALU produces 13, and the output unit displays the result.

IV. Components and Instructions

A. Hardware and Software

Hardware consists of the physical components of a computer, whereas software consists of the programs and related data that direct those components.

  1. Hardware

    • Processing hardware: The CPU and supporting chipset execute instructions and coordinate system activity.
    • Memory hardware: RAM, ROM, and cache support immediate access to instructions and data.
    • Storage hardware: SSDs, hard drives, and removable media provide non-volatile retention.
    • Peripheral hardware: Keyboards, monitors, printers, cameras, and network adapters provide input, output, communication, or storage functions.
    • Internal infrastructure: The motherboard connects major components, while the power supply converts electrical power into voltages required by the system.
  2. Software

    • System software: Manages hardware and provides a platform for applications.
      • An operating system such as Windows, Linux, Android, or macOS manages processes, files, memory, devices, security, and user interaction.
      • Device drivers allow the operating system to communicate with particular hardware, such as a printer or graphics adapter.
      • Utility programs perform maintenance tasks such as backup, compression, malware scanning, and disk management.
    • Application software: Helps users perform specific tasks, such as word processing, accounting, web browsing, graphic design, or database management.
    • Programming software: Editors, compilers, interpreters, debuggers, and integrated development environments support software creation.
    • Firmware: Software stored in non-volatile memory controls hardware at a low level; BIOS or UEFI firmware begins the startup process.
  • Interdependence: Hardware cannot perform useful general-purpose work without instructions, while software cannot execute without compatible physical resources.
  • Licensing and distribution: Software may be proprietary, open source, commercial, freeware, or subscription-based; these categories concern legal access and distribution rather than technical function.
  • Maintenance distinction: Hardware faults may require repair or component replacement, while software faults are commonly addressed through configuration changes, patches, updates, or corrected code.

V. Classification by Scale and Purpose

A. Types of Computers

Computers are classified according to processing capacity, size, portability, intended workload, and number of users, although modern categories often overlap.

  • Supercomputers: These are extremely powerful systems designed for computation-intensive scientific tasks.
    • They use massive parallel processing for climate modelling, molecular simulation, astronomy, cryptography, and other workloads measured with benchmarks such as floating-point operations per second.
  • Mainframe computers: Mainframes support high-volume, reliable transaction and data processing for many simultaneous users.
    • Banks, airlines, and government departments use them for workloads requiring strong security, availability, and input/output capacity.
  • Servers: A server provides resources or services to other computers, called clients, across a network.
    • Examples include web servers, database servers, mail servers, file servers, and cloud-hosted virtual servers.
  • Workstations: Workstations are high-performance single-user computers intended for engineering, scientific, animation, or professional design workloads.
    • They typically emphasize powerful processors, substantial memory, professional graphics, reliability, and expandability.
  • Personal computers: Desktop and all-in-one computers are general-purpose systems designed primarily for one user at a time.
    • They commonly run productivity, communication, educational, and entertainment applications.
  • Portable computers: Laptops and notebook computers integrate the display, keyboard, pointing device, battery, storage, and processor into a transportable system.
    • Tablets and smartphones emphasize touch input, wireless communication, sensors, and energy efficiency.
  • Embedded computers: An embedded computer is built into a larger product to perform a dedicated control or monitoring function.
    • Examples include vehicle engine controllers, washing-machine controllers, medical devices, routers, and industrial sensors.
    • Many operate under real-time constraints, meaning responses must occur within a defined time limit.
  • Microcontrollers: A microcontroller combines a processor, memory, and input/output interfaces on one integrated circuit.
    • Devices such as the controllers used in appliances execute a limited program while consuming little power.
  • Analog computers: These represent continuously varying quantities, such as voltage or rotational motion, to model physical systems.
  • Digital computers: These process discrete binary values and include most contemporary personal, business, and scientific computers.
  • Hybrid computers: These combine analog measurement with digital processing, as in specialized medical monitoring or industrial control systems.
  • General-purpose versus special-purpose systems:
    1. General-purpose: Executes many applications, as demonstrated by a laptop running a browser, spreadsheet, and compiler.
    2. Special-purpose: Is optimized for a restricted task, as demonstrated by an anti-lock braking controller repeatedly monitoring wheel-speed sensors.