title: x86 Assembly MOV instruction - Register to Register and Memory to Memory
body: <p>It's known that the MOV instruction allows register to register moves while memory to memory moves are not possible. Why is this? </p>
  
  <p>I've read <a href="https://stackoverflow.com/questions/11953352/why-ia32-does-not-allow-memory-to-memory-mov">here</a> that memory to memory moves are disallowed because it complicates the CPU and that RAM has to be in either a read mode or write mode with any given instruction. Is anyone able to expand on this? Why does RAM have to be in either read mode and write mode? How is it possible to read and write from registers but not from RAM within a single instruction?  </p>