title: Two's complement; 0FFFh positive, 0FFFFh negative?
body: <p>From the book, <em>Art of Assembly</em>, I copy this quote:</p>
  <blockquote>
  <p>In the two’s complement system, the H.O. bit of a number is a sign bit. If the H.O. bit is zero, the number is positive; if the H.O. bit is one, the number is negative. Examples:</p>
  <p>For 16-bit numbers:</p>
  <p><code>8000h</code> is negative because the H.O. bit is one.</p>
  <p><code>100h</code> is positive because the H.O. bit is zero.</p>
  <p><code>7FFFh</code> is positive.</p>
  <p><code>0FFFFh</code> is negative.</p>
  <p><code>0FFFh</code> is positive.</p>
  </blockquote>
  <p>I don't understand the last two examples. If you convert the two examples to binary, you get <code>0000 1111 1111 1111 1111</code> for the first and <code>0000 1111 1111 1111</code> for the second. Why is the former negative and the latter positive? It seems to me that the highest order bit for both would be 0 and therefor both should be positive.</p>