Main memory includes ROM, RAM, and cache memory. ROM stores permanent instructions for starting up the computer and is non-volatile, while RAM is volatile and stores active programs and data. Cache memory is high-speed memory between the CPU and RAM that stores frequently used data to improve processing speed.