title: How does cpu communicate with peripherals?
body: <p>i assume cpu has direct access to motherboard's BIOS and RAM.(correct me if i'm wrong)</p>
  
  <p>But how does cpu communicate with other hardware like hdds, expansion cards, peripherals, other BIOSes etc.?</p>
  
  <p>I know about OS and its drivers, but they are software- they're in RAM.
  How does cpu communicate with all this hardware on hardware level?
  Isn't it limited to only motherboard's BIOS and RAM?</p>