Warning: yeah, I know that article of Wikipedia. It's just too difficult for me! I hope that there is some person who could explain it more simply...
Background: I designed a 6-bit computer. It has 4kB of RAM and 4kB of ROM (uses double address). Both are accessed and read the same way like the other one:
- 12-bit address goes to a decoder.
- Decoder decodes which memory cell should be accessed.
- Memory cell is accessed and its contents go to register A.
Both are strictly limited. Now we got a modern 32-bit computer. It has:
- 4 GB of RAM. Limited.
- 1 TB of HDDM, that can be expanded just by using bigger HDD or more HDDs!
Everything is clear with RAM - it is read and modified the same way like the one on my computer. But how do we access HDDM?
- Do we have to include a HUGE decoder into the hardware of a modern computer to be able to address a HUGE quantity of separate memory cells? But still, HDD memory should be still limited to a certain amount of memory?
- Or maybe there are tiny magnetic disks that are turning around very quickly, with each memory cell emmiting its own address, and little scanners waiting for the disks to turn into a right position to scan? But is that speed really possible?
Generally: so how we are able to have unlimited amounts of HDDM? How is HDDM accessed, read and modified?
Extra: is SSDM accessed with a decoder, so that is why it's faster than HDDM?