@gollum,
Same as anything elese, if you buy bitcoins, the person who you are buying them from get's the money. If you sell bitcoins, the person buying them provides the U.S. dollars.
The real question you are asking is where the original value comes from. Bitcoins are "mined". They are mathematical functions that are hard to solve (i.e. take a lot of computing power). When someone finds a new solution, they have a new bitcoin.
The genius part of bitcoin is that there are a finite number of possible solutions that will result in bitcoin. And for each one that is found, the next one takes even more time to find (i.e. it takes more computer processing power).
This ensures that as the more and more people are added to the bitcoin economy the rate at which bitcoin are added to the economy gets slower and slower, meaning that bitcoin keep their value.