I/O devices cannot be connected directly to the bus.
Because I/O devices are electromechanical, magnetic or optical devices, whereas the CPU and memory are electronic devices.
Need an intermediary to handle this difference called an input/output controller