💻

Overview of Computer Registers and Sizes

Sep 6, 2024

Lecture Notes on Different Types of Registers

Introduction

  • Topic: Different types of registers in computer organization
  • Importance: Understanding hardware and software concepts
  • Previous video: Connection of registers with the common bus using multiplexers

Types of Registers

  1. Address Register
  2. Data Register
  3. Accumulator
  4. Program Counter
  5. Instruction Register
  6. Temporary Register
  7. Input Register
  8. Output Register

Size of Registers

  • Common sizes: 8-bit, 16-bit, or 32-bit
  • Typical use: 16-bit registers
  • Registers are sequences of bits or flip-flops
  • Example of memory: 4096 x 16 (4096 words of 16 bits each)

Memory Concepts

  • Word: Memory representational unit
    • 1 byte = 8 bits
    • Word can be 1 byte, 2 bytes, or 4 bytes depending on the architecture
    • Memory is typically word-addressable
  • Example: 4096 words means 2^12 possible addresses

Address Register

  • Purpose: Picks up data from memory by providing the address
  • Size: 12 bits (to represent 4096 words)

Data Register

  • Purpose: Stores data fetched from memory
  • Size: 16 bits (as each word is 16 bits)

Accumulator

  • Purpose: Stores intermediate data during processing
  • Size: 16 bits (to store data from ALU)

Program Counter

  • Purpose: Stores the address of the next instruction
  • Size: 12 bits (to represent address space)

Instruction Register

  • Purpose: Stores the instruction to be executed
    • Contains opcode and operand
  • Size: 16 bits (0 to 15)
  • Contains:
    • Opcode: Operation to perform (e.g., addition)
    • Operand: Address or data to use
    • MSB (Most Significant Bit): Used for addressing mode
      • 0 = Direct Addressing
      • 1 = Indirect Addressing

Temporary Register

  • Purpose: Used to store temporary data
  • Size: 16 bits

Input and Output Registers

  • Input Register:
    • Purpose: Picks up data from input devices (e.g., keyboard)
    • Size: 8 bits (for simplicity)
  • Output Register:
    • Purpose: Sends output data to output devices (e.g., printer, monitor)

Conclusion

  • Overview of different registers and their sizes
  • Future videos will cover connectivity, instruction fetching, decoding, and output conversion.