title: Multiply with negative integer just by shifting
body: <p>I'm trying to find a way to multiply an integer value with negative value just with bit shifting.</p>
  
  <p>Usually I do this by shifting with the power of 2 which is closest to my factor and just adding / subtracting the rest, e.g. <code>x * 7 = ((x &lt;&lt; 3) - x)</code></p>
  
  <p>Let's say I'd want to calculate <code>x * -112</code>. The only way I can imagine is <code>-((x &lt;&lt; 7) - (x &lt;&lt; 4)</code>, so to calculate <code>x * 112</code> and negate it afterwards.</p>
  
  <p>Is there a "prettier" way to do this?</p>