Is it possible to transfer BTC between addresses in the same wallet?
Yes.
0.5 BTC will be sent from which address.
Bitcoin is
NOT sent
FROM ADDRESSES. It is sent
TO ADDRESSES.
Bitcoin addresses are NOT account numbers. They are more like an invoice number. They provide you a way to determine who sent the money, when they sent it, and why they sent it.
If you were a merchant and you sold 4 items to 3 different people, then you sent each customer a different invoice to be paid:
Invoice A: $0.20
Invoice B: $0.10
Invoice C: $0.70
The total amount that your business would receive once all payments were received would be $1.00.
Then if you sent $0.50 from your checking account to your savings account, the $0.50 would be sent from which invoice?
It's a silly question, isn't it? It isn't sent "from" an invoice.
Now, you could keep track of the individual payments and store them all separately (like a bitcoin wallet does). Then when you spend it, you could choose specific coins to spend (like a bitcoin wallet does). In that case, you could say that this money being spent was RECEIVED as part of a specific invoice. You aren't "spending from" the invoice, but you can be aware of specifically which invoice payment provided the units you are using.
If that's what you are asking:
Which of the payments previously received will be spent?
Then the answer is:
It depends on your wallet. The wallet gets to choose which of the unspent transaction outputs to spend. The creator of the wallet implements an algorithm for making that decision. Some wallets also provide advanced features commonly called "coin control" which allow the user to specify which unspent transaction outputs they want to spend.
I understand the invoice example. Bitcoin addresses are not account numbers. Bitcoin addresses are more like invoice numbers. Ok.
Yes, that's what I really want to learn. "Which of the payments previously received will be spent?"
I transferred BTC from my wallet to D. The wallet decided according to its own algorithm. Bitcoin transfer to address D has been performed.
Now, when I check address D at blockchain.info, which one will appear as the transfer address? A, B, C ?
Also would I have a problem if I wanted to transfer 0.8 BTC? I have a total of 1 BTC in my wallet. But none of the addresses in the wallet have 0.8 BTC. What would happen in such a situation?