title: Curiosity: why the shift operators have less priority than the additive?
body: <p>I'm wondering why the shift operators (&lt;&lt; and >>), being equivalent to a multiplication and a division respectively, do have less priority than an additive operator, such the "+".</p>
  
  <p>In other words:</p>
  
  <pre><code>int a = 1 + 2 * 8;  //yields 17
  </code></pre>
  
  <p>whereas:</p>
  
  <pre><code>int a = 1 + 2 &lt;&lt; 3; //yields 24
  </code></pre>
  
  <p>Anyone knows what's the reason behind this behavior?</p>
  
  <p>NOTE: Please, don't answer me "because the specs say so"!</p>
  
  <p>Thank you all in advance.</p>
  
  <p>EDIT: I realized that a left-shift can be obtained by summing the left operand by itself. May be this the reason?</p>