Introduction to Computing - Hardware and Software
Course Objectives & Overview
- Course Code & Title: FCT0015 - Structured Algorithm & Programming
- Chapter: Chapter 1 - Introduction to Computing
- Lecture Focus: Lecture 1 - Hardware & Software
- Primary Learning Objectives:
- Identify key emerging technologies and analyze how these technologies are transforming industries, society, and daily life.
- Define hardware and software.
- Identify and discuss internal/external hardware components and categories of software.
Fundamental Computer Concepts & Data Representation
Definition of a Computer:
- A computer is an electronic machine that receives, processes, or stores data according to a set of specific instructions (a computer program) and outputs information.
- Core Operational Workflow:
- Input: Raw data entered into the machine.
- Process: Computing and manipulating data based on program logic.
- Storage: Storing data temporarily or permanently.
- Output: Transforming processed data into meaningful information.
Data Representation in Computers:
- Data representation refers to the methods used to encode and store data in a computer system.
- Computers do not understand human language directly; they process data in a specific binary format.
- Converts various human-understandable data types—such as numbers, text, images, audio, and video—into a machine-readable digital format.
- Digital Binary Representation:
- Operates using two electrical/logical states: on (represented by digit
) and off (represented by digit). - Digits
andare called bits (short for binary digit). - Fundamental conversion ratio:
.

- Character Coding Schemes:
- Popular standardization schemes used for encoding textual characters into digital form include:
- ASCII (American Standard Code for Information Interchange)
- EBCDIC (Extended Binary Coded Decimal Interchange Code)
- Unicode
- ASCII Character Ordering Rule: In the standard ASCII table, the numeric representation value of a capital letter (uppercase) is strictly smaller than that of its corresponding small letter (lowercase).
Classification & Types of Computers
Form Factor Classifications:
Desktop / Personal Computer (PC):
Historical context: Computers originally occupied entire rooms. In the 1980s, personal/desktop computers were created, shrinking hardware sufficiently to fit on standard office desks while becoming affordable to the general public.
Design: Typically features separate modular components including a dedicated monitor, keyboard, mouse, and external speakers.
Operational Configurations:
- Standalone: Used independently in home or office environments; connected directly to its own private peripherals (e.g., printer, local internet connection).
- Networked: Connected to external systems to share resources, transfer files, access shared drives, utilize centralized storage, and participate in online multi-user environments/gaming.
Advantages: Always connected directly to main electrical outlets (no battery degradation); flexible monitor size selection; highly upgradable with easily replaceable modular parts; generally offers higher performance specifications than mobile counterparts.
Disadvantages: Lacks portability; consumes significant desk space; requires multiple independent components; loose cabling creates clutter and physical trip hazards.
Laptop Computer:
Design: An all-in-one portable unit where core components (display screen, keyboard, pointing device) are integrated into a single folding chassis.
Advantages: Highly portable due to low weight and compact size; integrated rechargeable battery; wireless network connectivity; streamlined design with no loose external wires between basic hardware components.
Disadvantages: Limited battery runtime per charge; difficult to repair, customize, or upgrade internal components; prone to theft or loss; touchpad/pointing devices can be awkward for some users.
Operational Modes: Works both as a standalone workstation (for gaming, document creation, and communication) and as a networked node (for internet access, central network storage, and shared drive access).
Tablet Computer:
Design: Handheld touch-screen devices closely resembling oversized smartphones.
Capabilities: Uses multi-touch screens to select menu options and interact with applications; capable of running downloadable applications; features integrated multi-modal sensors (such as speech/voice recognition).
Connectivity Options: Standard local Wireless networks (Wi-Fi) and Cellular Broadband ( mobile communication standards, where replaces to deliver significantly faster wireless internet access on the move).
Advantages: High-definition anti-glare display panels; versatile connectivity (Wi-Fi, , Bluetooth); seamless cloud synchronization/data backup; intuitive touchscreen interface; longer battery lifespan relative to mobile smartphones.
Disadvantages: Lower internal memory and processing hardware relative to traditional laptops; ongoing cost associated with cellular data subscriptions; software virtual typing is less efficient than physical keyboards; file system compatibility limitations.
Smart Phone:
Design: Compact handheld devices combining traditional cellular telephony with advanced computing capabilities driven by a dedicated mobile operating system.
Capabilities: Voice calls, short message service (SMS), touchscreen interfaces, mobile internet (/Wi-Fi), integrated camera sensors, voice/video streaming, social network applications, Voice over Internet Protocol (VoIP), and Global Positioning System (GPS) navigation.
Advantages: Extremely compact and lightweight; continuous mobile connectivity; touch interface.
Disadvantages: Small screen dimensions hinder reading fine content; quick battery consumption; high risk of misplacement or theft; constrained storage memory compared to larger systems; lower wireless data throughput rates.
Functional Scale Classifications:
- Personal Computer: Desktop, laptop, tablet, or all-in-one devices scaled specifically for individual workstation environments.
- Mobile Computer: Handheld or wearable computing hardware designed for portability (e.g., smartphones, digital media players, e-book readers, smartwatches, handheld game consoles).
- Embedded Computer: A specialized system functioning as an integrated component within a larger mechanical or electrical product (e.g., modern automotive systems regulating antilock brakes, tire pressure monitoring, adaptive cruise control, climate control, and infotainment).
- Server: Dedicated server hardware optimized to manage network services and supply computational resources to host client computers across a network. Typically sized like a small cupboard.
- Mainframe Computer: High-capacity, highly expensive, and ultra-powerful servers optimized to process massive data workloads and manage simultaneous connection requests from hundreds or thousands of concurrent users. Physical size ranges from half a room to a full room.
- Supercomputer: The fastest class of computer systems, capable of executing many trillions of complex instructions every single second (). Requires dedicated, climate-controlled rooms full of specialized equipment racks.
System Unit & Internal Architecture
Core Components of the System Unit:
Central Processing Unit (CPU):
Functions as the primary "brain" of the computer system.
Executes searching, sorting, mathematical calculations, and logical decision-making tasks.
CPU operating speed is measured in Gigahertz (GHz).
Performance Metric: A CPU executes exactly low-level instructions per second (
).Major industry manufacturers: Intel and AMD.
Motherboard:
The primary printed circuit board (PCB) that acts as the central electronic backbone, interconnecting the CPU, system memory, expansion cards, and internal drives.
Memory Architecture Hierarchy (Cache, RAM, ROM):
Cache Memory:
- The fastest form of system memory, situated physically between the CPU core and main RAM.
- Captures, holds, and feeds commonly used application code/instructions directly to the CPU to avoid bus delays.
Random Access Memory (RAM):
- Main primary memory used to hold temporary data and active program instructions currently being executed by the CPU.
- Volatile: All stored binary data is permanently erased as soon as electrical power is shut off.
Read-Only Memory (ROM):
- Non-changeable, permanently flashed memory chips holding crucial low-level bootstrap instructions (such as the BIOS/UEFI).
- Non-Volatile: Retains stored data permanently even when the system is fully powered down. Essential for instructing the CPU on how to load the primary operating system during startup.
Data Processing Flow & Memory Fetch Mechanism:
- Applications are stored permanently in Secondary Storage (e.g., Hard Drive).
- When an application is launched, temporary data and active program code are loaded into Main Memory (RAM).
- The CPU requests a specific piece of data and first checks the Cache for its presence.
- Cache Miss: If the required data is not in the cache, the CPU retrieves it directly from RAM.
- The Cache automatically pre-fetches the next sequential data blocks from RAM and stores them internally.
- Cache Hit: When the CPU requests the next piece of data, it successfully locates and reads it directly from high-speed Cache Memory, reducing latency.

- Additional Internal System Hardware:
- Graphics/Video Card: Dedicated expansion board connected to motherboard slots (e.g., PCIe) to process visual rendering and feed output to external display monitors.
- Sound Card: Handles digital-to-analog and analog-to-digital audio conversions for sound processing, input (microphones), and output (speakers).
- Internal Hard Disk Drive (HDD / SSD): Primary non-volatile internal storage hardware used to keep system software, applications, and user files permanently.
- Network Interface Card (NIC): Hardware controller supplying network access (via ethernet cable or wireless antenna signals).
- Optical Disk Drive: Uses optical laser systems to read and write data from/to media discs (CDs, DVDs, Blu-Rays).
- Power Supply Unit (PSU): Converts AC mains power from wall sockets into direct current (DC) voltages needed by internal microchips, motherboards, fans, and drives.

Storage Media, Capacities & Peripherals
Secondary Storage & Media Concept:
- Secondary storage ensures data is retained permanently for future access.
- Storage Medium: The physical hardware material that holds the encoded data.
- Fixed Medium: Non-removable magnetic/solid-state platters sealed directly inside a drive housing (e.g., internal Hard Drive).
- Removable Medium: Disks or cards that can be inserted into or ejected from a reader device (e.g., CD-ROM, USB Flash Drive, SD Card).
Data Storage Units & Binary Capacity Measurements:
- Binary storage capacity scales according to decimal/metric standards shown below:
Evolution of Storage Media Capacities:
- Floppy Disk:
- CD-ROM:
- DVD:
- Blu-Ray:
- Hard Drive:
- Magnetic Tape Systems: Up to

- Categorization of Hardware Components (Internal vs External):
| Comparison Criteria | Internal Hardware | External Hardware |
|---|---|---|
| Physical Location | Located inside the main computer case/chassis | Placed outside the central computer casing |
| Core Purpose | Enables basic computing functions | Facilitates human interaction and auxiliary storage |
| Visibility | Hidden from view during normal operation | Readily visible and accessible |
| Installation Effort | Requires opening casing; harder to replace | Simple plug-and-play installation |
| Portability | Non-portable relative to the main chassis | Highly portable and easy to disconnect |
| Examples | CPU, RAM, Motherboard, Hard Disk, Video Card | Keyboard, Mouse, Monitor, External Hard Drive |
- Peripheral Classification:
- Input Hardware: Feeds data into the system (e.g., Mouse, Keyboard, Microphone, Barcode Reader).
- Output Hardware: Converts processed computer data into user-perceivable outputs (e.g., Display Monitor, Audio Speakers, Printers, Projectors).
- External Storage Devices: Supplies portable, auxiliary, or backup data storage (e.g., External HDDs, USB Memory Sticks, External Optical Drives, SDHC Flash Cards).
Computer Networks & Networking Hardware
- Definition of a Computer Network:
- A network consists of two or more computers or electronic devices interconnected via communication channels so they can exchange digital data.
- Primary Functions: File sharing, multi-user messaging/communication, hardware resource sharing (e.g., centralized network printers, shared drives).
- Connections are built using physical cables (copper/fiber wires) or wireless signals (Wi-Fi, radio waves).

Network Hardware Devices & Standards:
Router:
Interconnects different networks together (e.g., links a local area network to the internet or connects separate LANs).
Manages and routes data traffic by inspecting and transferring Data Packets across network paths.
Stores internal routing tables to track which host computers belong to which network segment.
Structure of a Data Packet:
Header: Contains structural flags and identifiers.
IP Addresses: Stores the explicit source (sender) and destination (receiver) IP addresses.
Packet Sequence Number: Identifies the packet's order to allow complete message reassembly at the receiving node.
Modem (Modulator-Demodulator):
Converts continuous analogue signals received from telephone lines into discrete digital signals readable by a computer.
Converts internal digital computer data back into analogue signals for transmission across analogue telephone networks.
Network Interface Card (NIC):
An internal expansion circuit board or chip that provides the physical interface to a network.
Contains a unique, hardcoded MAC address (Media Access Control address) used to identify the specific machine on a local network.
Bridge:
Hardware used to connect two separate Local Area Network (LAN) segments together so they function logically as a single unified LAN.
Can be used to bridge two individual network switches.
Switch & Wireless Access Point (WAP):
Switches connect multiple wired devices within a single LAN to facilitate direct frame distribution.
WAPs broadcast wireless radio signals to allow Wi-Fi enabled mobile clients to connect to the wired network infrastructure.
Software Concepts, Categories & Applications
Definition of Software:
- Software is a non-physical collection of encoded instructions (programs) executed by computer processors.
- Software dictates how hardware components operate and process data.
- Interdependence: Computer systems require both hardware and software to function.
Three Primary Software Categories:
- Application Software
- System Software
- Computer Languages

Types of Application Software:
- Word Processing: Designed to draft, edit, and print text documents (e.g., reports, essays). Features include font styling, page layout formatting, spell-checking, table/image embedding, copy/paste, and search/replace.
- Spreadsheets: Designed to organize, structure, and compute numerical data using grids of rows and columns.
- Built-in formula capabilities:
,,,,,, conditional evaluation (,), lookup tables (), nestedstatements, cell formatting, and graph generation (bar/pie charts). - Databases: Designed to organize, query, and manage relational structured data using tables, fields (columns), and records (rows). Capabilities include running custom search queries and compiling report documents.
- Photo Editing: Manipulates raster digital images (photo retouching). Includes features such as contrast/brightness adjustment, layer masks, lighting effects, filters, facial liquify tools, brush controls, and clone stamping.
- Graphics Manipulation: Edits bitmap images (changing individual pixels) or constructs Vector Graphics (which maintain quality using scalable lines, curves, and mathematical text geometry).
- Video Editing: Edits digital video clips using timeline operations (splitting, trimming, rearranging clips, creating split-screen effects, audio track mixing, color filters, and fade transitions).
- Mobile Apps: Dedicated lightweight applications designed for smartphones and tablets (e.g., Angry Birds, YouTube streaming, Facebook/Twitter/Instagram social platforms, WhatsApp messaging, GPS navigation, and fitness trackers).
- Measuring & Control Software:
- Measuring: Environmental sensors gather physical parameters (temperature, light, pressure) and pass digital telemetry to a central microprocessor.
- Control: Compares sensor measurements against pre-set threshold limits to control physical actuators (e.g., dynamically activating greenhouse heating units when temperatures drop).
Types of System Software:
- Operating Systems (OS): Core software that manages hardware resources, schedules CPU operations, controls I/O devices, and provides a Graphical User Interface (GUI) to human operators.
- Device Drivers: Specialized software modules that allow the operating system to communicate with and drive specific hardware devices (printers, sound cards, GPUs, network cards).
- Utilities: Maintenance programs designed to manage, fine-tune, and optimize computer performance and security (e.g., antivirus tools, disk defragmenters, file managers).
- Compiler: Translates high-level source code into low-level machine code that the system hardware can execute directly.
- Linkers: Programs that take individual object files generated by a compiler and combine them into a single executable binary program file.

Computer Programming Languages
Hierarchy of Programming Languages:
Machine Language (1st Generation):
Form: Low-level binary code consisting exclusively of
s ands.Features: Hardware-specific; directly executed by the target CPU with zero translation overhead; fastest execution speeds.
Drawbacks: Non-portable; virtually unreadable for human programmers; extremely difficult error handling (e.g.,
10110000 01100001).Assembly Language (2nd Generation):
Form: Replaces raw binary with human-readable mnemonic codes (e.g.,
ADD,MOV,SUB).Features: Requires a dedicated Assembler program to translate mnemonics into machine code; fast execution speed.
Drawbacks: Non-portable (closely tied to specific CPU instruction set architectures); complex error handling (e.g.,
MOV AL, 61h).High-Level Language (3rd Generation):
Form: Uses English-like statements combined with standard mathematical and algebraic notation (e.g., Python, C, Java, C++).
Features: Requires translation into machine code via a Compiler or Interpreter; highly portable across different operating systems and CPU hardware; easy to read, write, and debug with standard error messages (e.g.,
x = 97or `print(