What is the precise mechanism for the speed of a quantum computer? This site may not be the right place to ask this question because it is both a physics and a computing question. In quantum computing, I get that qubits have many more states than zeros and ones. But how does this actually speed up computation? I am guessing that it may be a form of SIMD, ie single instructions acting on multiple data. By this I mean one single qubit might hold one billion numbers and so might a second. By adding them together you might effective do addition of all the numbers in parallel. Is that how quantum computers obtain their high speed, or is it an entirely different mechanism?   
 A: Quantum computers are a fundamentally different model from classical computation, even SIMD parallelism. 
Quantum states have some special properties: (1) they can exist in superpositions of state, as if several different values of a bit or a register were present at the same time, (2) there can be quantum entanglement that forces specific correlations between different quantum bits, and (3) when measuring an output you will get one answer randomly chosen from the superposed quantum states based on the size of its "amplitude". 
This makes quantum algorithms very different from classical algorithms. If I take a N-qubit quantum register X and turn it into an even superposition of all possible values I can now calculate (say) the square of the register value and put in another register Y. This takes as long as calculating the square of one value classically, despite the operation acting on $2^N$ values. If I measure Y I will get a random square selected from the $2^N$ possible squares - but I cannot select which one. More intriguingly, now X will also instantly contain the square root(s) (both $\sqrt{Y}$ and $-\sqrt{Y}$), and if I measure X now I will get one of them. 
The trick about quantum algorithms is to perform a computation so that when you get a random answer from the output it tells you something that is hard to compute. For Shor's factoring algorithm one turns factoring into finding a period of a function and then uses quantum computing to get an approximate period: by repetition one can become sure enough to enable deterministic testing. This is an exponential speedup, which is typical for "good" quantum algorithms. Grover's search algorithm just gives a quadratic speedup ($O(\sqrt{N})$ instead of $O(N)$), and there may well be many problems that simply cannot be speeded up with a quantum computer. 
