Negative value in byte type
<p>I've just started struggling around C# and I have a question.</p>

<p>In the following code:</p>

<pre><code>byte var = 0;
Console.WriteLine("{0}", ~var);
</code></pre>

<p>Why does it print -1? From <a href="http://www.csharp-station.com/Tutorial/CSharp/Lesson02" rel="nofollow">http://www.csharp-station.com/Tutorial/CSharp/Lesson02</a> I've read that the byte range is from 0 to 255 and ~(00000000)_2 gives (11111111)_2 which is equal to (255)_10.</p>
