user185: Bitcoin address versions are described on the Address wiki page:

Normal addresses currently always start with 1, though this might change in a future version. Testnet addresses usually start with m or n.

The Protocol specification gives a bit more technical detail:

Version = 1 byte of 0 (zero); on the test network, this is 1 byte of 111

Aside from distinguishing real and testnet addresses, what is the meaning and purpose of the address version? How and why will it change in future?

user132: Last time I heard of it, the future of version bytes was still unsettled.
Currently, they are used to force incompatibilities between several base58-encoded data structures:

addresses / private keys
testnet / realnet
alternative-chains variants (namecoin etc…)

This way, you cannot misuse one for the other.
Someday, it might also be used as a real version number (the current SHA-256 + RIPEMD-160 + base58-encoding for keys could become obsolete).

185: <p>Bitcoin address versions are described on the <a href="https://en.bitcoin.it/wiki/Address">Address</a> wiki page:</p>

<blockquote>
  <p>Normal addresses currently always start with 1, though this might change in a future version. Testnet addresses usually start with m or n.</p>
</blockquote>

<p>The <a href="https://en.bitcoin.it/wiki/Protocol_specification#Addresses">Protocol specification</a> gives a bit more technical detail:</p>

<blockquote>
  <p>Version = 1 byte of 0 (zero); on the test network, this is 1 byte of 111</p>
</blockquote>

<p>Aside from distinguishing real and testnet addresses, what is the meaning and purpose of the address version? How and why will it change in future?</p>
 132: <p>Last time I <a href="http://sourceforge.net/mailarchive/forum.php?thread_name=20110707194007.GA27416%40ulyssis.org&amp;forum_name=bitcoin-development">heard of it</a>, the future of version bytes was still unsettled.
Currently, they are used to force incompatibilities between several base58-encoded data structures:</p>

<ul>
<li>addresses / private keys</li>
<li>testnet / realnet</li>
<li>alternative-chains variants (namecoin etc…)</li>
</ul>

<p>This way, you cannot misuse one for the other.</p>

<p>Someday, it might also be used as a real version number (the current SHA-256 + RIPEMD-160 + base58-encoding for keys could become obsolete).</p>
