Organized as an array of integers called bytes (0-255).
Memory cells are numbered starting from zero (addresses).
Types of Memory
Read-Only Memory (ROM):
Contains pre-programmed code (firmware).
Only read by the CPU.
Data remains even when power is off.
Random Access Memory (RAM):
Contains temporary data, loaded by the CPU.
Can be read and written to by the CPU.
Data is lost when power is off.
Memory Addressing and Communication
Address Bus:
Communication system for the CPU to tell memory which cell to access.
Uses binary system to encode memory cell addresses.
CPU uses binary values to communicate addresses.
Control Bus:
Signaling system for memory operations (Read/Write).
CPU pulls lines low to activate signals (active low).
Read and Write lines are mutually exclusive.
Data Bus:
Transfers data between CPU and memory.
Bi-directional, can carry data to/from CPU.
Address Decoding
Address range allocation in memory:
Address space divided into fixed ranges for ROM and RAM.
Example: CPU with 16 address lines can access 64KB memory.
ROM takes lower range, RAM takes upper range for initialization.
Interaction of CPU with Memory
ROM and RAM Communication:
CPU starts reading code as soon as power is applied.
Uses Read line to read memory and Write line to write memory.
Address bus ensures that ROM/RAM are addressed correctly during access.
Hexadecimal Representation:
Used to simplify binary data representation.
Memory and addresses often represented in hex for ease.
Adding More Modules to a Simple Computer
Input/Output Ports:
Allows user interaction (keyboard, mouse, gamepad).
Decoded into separate address space and accessed with special instructions.
Example of LED Control:
CPU can use machine code instructions to control ports like turning an LED on/off.
Uses specific address and data bus for the interactions.
Conclusion
The lecture provides a comprehensive overview of CPU functions, memory types and communication, and basic principles of address decoding and hardware interactions.
Key takeaway: The interaction between the CPU, memory, and peripherals hinges upon precise addressing and decoding mechanisms.