Well let's just assume for simplicity that there are two user inputs to your PC, your keyboard and mouse. Then there's also one user output from your PC, your monitor. The idea of a user interface is that you can replace the innards of the thing you are interfacing with, but still have the same functions performed. The non-PC analogy is that all cars have a steering wheel, gas pedal and brake pedal, but even though different cars have different engines and brake systems and all sorts of complicated fuel systems and whatnot, a person with a license (knows how to use the wheel, gas, and brake) can use any car. In a PC, that means that anyone that knows how to use a keyboard/mouse/monitor (and Windows) can use a PC, even though it might have a different speed or brand or both of processor.
I'll be imprecise about what goes on inside the PC here... when you type a key on the keyboard or move/click the mouse, an interrupt is generated, which just means that a voltage on a wire from your kb or mouse changed (UI is actually done by polling, but this is imprecise). With the mouse or kb, there are other wires that send what the specific key/movement/click was and store that in a register which is a temporary storage location for bits. The interrupt changes what code is being run on the processor to interrupt handling code, which is basically a huge decision making process that MS has written that determines what caused the interrupt. Once it figures out what caused the interrupt - key press, mouse move, mouse click, or any other of dozens or hundreds of things, it runs code that will be able to take action based on what the interrupt was. This is basically a driver. The driver gets the value in the register ("The key that was pressed was an 'a' key") and places it in another register. Then the OS takes over doing whatever it does, and different OS's will do different things, and stuff gets displayed on the screen based on what the OS decides. Simply speaking, unless the processor gets interrupted from doing what it is doing, it will just sit there and continue to do what it was doing before. But the processor doesn't ever really know what's going on after it gets interrupted either - it just knows that whenever a voltage on one of its input lines changes (an interrupt happens), it has to start executing different code than what it's executing now. It's pretty dumb.
Hope that makes it clear why the UI and processor are almost totally independent - all the processor does is execute proper code when it's triggered by some user input. The code is what makes stuff appear on the screen. Now if the processor had brain wave sensors on it that could determine what you wanted to do, then it would be different. But you would (probably) still know what you wanted to do before the processor did, and still all the processor would do is execute proper code when it is triggered by your brain waves - it would just be interrupted differently.
But a computer could be made to simulate reading your mind. For example, if you always sat down at 8:45 am in front of your computer and opened your browser and went to cnn.com, then there could be software that would detect this pattern, and at 8:44 am it would start your browser and browse to cnn.com so that when you sat down at 8:45 am, it would look like it knew exactly what you were going to do. Or if you replied to every post on a certain site , then whenever you browsed to that site and reached the bottom of the page, it would automatically go to the reply page, then you might think it was reading your mind.