Computer Systems: Hardware, Software, and Data Processing
ITEM 1
Computer System Software and Hardware
A computer is a machine composed of hardware and software. Both require a set of instructions (a program) to operate. The program itself doesn’t work in isolation; it’s essential for the operating system to execute programs and process information.
Computer: A machine consisting of hardware and software.
Hardware: Physical components.
Software: Non-physical components that drive the hardware. A set of instructions or orders.
Computer Application: A set of various programs.
Operating System: Software component that enables information processing.
Physical Components (Hardware)
The physical components of a computer can be classified as:
- CPU
- RAM (Central Memory)
- Input/Output Units
- Controllers
- Buses
- Peripheral Units
1. CPU (Central Processing Unit)
Also called the processor, the CPU controls and executes operations within the computer. It monitors all tasks and processes, including available memory and information being processed. The processor uses RAM to function and consists of the arithmetic logic unit (ALU), its own memory (cache), and the control unit (CU).
Arithmetic Logic Unit (ALU):
Control Unit (CU): The “brain” of the computer. It receives, interprets, and executes instructions in the correct order for processing. The CU retrieves instructions from RAM (or external storage like a hard disk) for program execution and data processing.
To perform these operations, the CU utilizes:
- Instruction Register: Stores the current instruction being executed.
- Program Counter: Contains the memory address of the next instruction.
- Control and Decoder: Interprets the instruction for processing.
- Sequencer: Generates the micro-operations needed to execute the instruction.
- Clock: Provides a series of electrical impulses at intervals.
Arithmetic Logic Unit (ALU): Performs arithmetic (addition, subtraction, multiplication, etc.) and logical (comparison) operations.
The ALU consists of:
- Input Register: Contains the operands for the operation.
- Operational Circuit: Performs data operations.
- Accumulator Register: Stores the results of operations.
- Status Register: Records the conditions of the previous operation.
2. RAM (Central Memory)
Memory stores programs and data being used. There are two main types:
Mass Storage Memory (e.g., Hard Drive): Although physically inside the computer, hard drives are considered external storage, distinct from internal memory. They are slower than internal memory, but information persists even when the power is off.
Internal Memory: Temporarily stores information for processing. Several types exist:
- RAM (Random Access Memory): Allows storing and modifying information. It’s crucial for information processing; everything must pass through RAM before or after processing. RAM consists of:
- Address Register: Contains the address of the accessed cell.
- Exchange Register: Retrieves data in read operations and stores data in write operations.
- Memory Selector: Activated for read/write operations, connecting the cell with the exchange register.
- Control Signal: Indicates whether an operation is a read or write.
Types of RAM:- DRAM (Dynamic RAM): Large capacity, requires refreshing every clock cycle.
- SRAM (Static RAM): More expensive, smaller capacity, but faster. No refresh needed.
- SDRAM (Synchronous DRAM): Large capacity and high speed. Requires refreshing.
- DDRAM (Double Data Rate RAM): Works at twice the clock speed, thus twice as fast.
- ROM (Read-Only Memory): Contains hard-coded hardware information used for system startup (BIOS). Initially, ROM was programmable only once (PROM). Today, EPROM (Erasable Programmable ROM) is used; it’s non-volatile, retaining information without power. BIOS information is loaded into CMOS (Complementary Metal-Oxide-Semiconductor), which is also non-volatile, powered by a small battery. BIOS can be configured using SETUP.
- Other Memory Types: VRAM (Video RAM).
Access to Memory
Accessing data involves the concept of a memory address, represented by a sequence of bits (0s and 1s). Different addressing methods exist:
- Immediate Addressing
- Direct Addressing
- Indirect Addressing
- Relative Addressing
3. Input/Output Units
These units facilitate communication between the processor, other internal components, and peripheral input/output devices.
4. Controllers
Manage peripheral software and configuration.
5. Buses
A bus is a set of hardware lines for data transmission. Two types exist:
Dedicated Bus:
- Data Bus
- Address Bus
- Control Bus
6. Peripheral Units
Peripherals are hardware devices users interact with, connecting to the computer through ports managed by the input/output unit.
Software Components (Software)
Software comprises programs and applications that run on a computer. The operating system manages information processing for applications.
Data Types
Data can be classified as:
Input Data: Supplied from peripherals.
Intermediate Data: Obtained during processing.
Output Data: Displayed on peripheral units.
Data can also be categorized based on mutability:
Fixed Data: Constant values.
Variable Data: Values that can change.
Coding Systems
The computer, through the operating system and hardware, transforms letters and symbols into electrical impulses (8 bits).
Decimal to Binary
Example: 9310 = 10111012 (Divide by 2 repeatedly, taking remainders from bottom up).
Binary to Decimal
Example: 10102 = (1 * 23) + (0 * 22) + (1 * 21) + (0 * 20) = 8 + 0 + 2 + 0 = 1010
Decimal to Hexadecimal
Example: 14110 = 8D16 (Divide by 16 repeatedly, taking remainders from bottom up).
Binary to Hexadecimal
Group binary digits into sets of 4, adding leading zeros if necessary. Convert each group to its hexadecimal equivalent.
Hexadecimal to Decimal
Example: 4316 = (4 * 161) + (3 * 160) = 64 + 3 = 6710
Hexadecimal to Binary
Replace each hexadecimal digit with its 4-bit binary equivalent.
Binary to Octal
Group binary digits into sets of 3, adding leading zeros if necessary. Convert each group to its octal equivalent.
Alphanumeric Codes
Important alphanumeric coding systems include:
- ASCII (American Standard Code for Information Interchange): Uses 7 or 8 bits to represent symbols, digits 0-9, and letters A-Z.
- EBCDIC (Extended Binary Coded Decimal Interchange Code): Uses 8 bits (two groups of 4) to represent each symbol.
- Fieldata: Uses 6-bit blocks for each symbol.
- Unicode: Provides a unique code point for every character, regardless of platform, program, or language.