title: How does the bang operator (!) work against bits?
body: <p>I've been asked to compute <code>!x</code> without using <code>!</code>.</p>
  
  <p>Examples:</p>
  
  <blockquote>
    <p>bang(3) = 0<br>
    bang(0) = 1</p>
  </blockquote>
  
  <p>The legal operations: <code>~</code>, <code>$</code>, <code>|</code>, <code>^</code>, <code>+</code>, <code>&lt;&lt;</code>, <code>&gt;&gt;</code></p>
  
  <p>I don't understand what a bang does? I thought it was a factorial. </p>