Bei dem Beispiel findet ein arithmetischer Überlauf statt, da -Integer.MIN_VALUE nicht mit int darstellbar ist und wieder Integer.MIN_VALUE ergibt. Dieser Überlauf findet nicht statt, wenn die Division zuerst stattfindet, das Ergebnis von a/b ist 1, da a==b, und eins kann man problemlos negieren. Man kann gut erkennen, dass der binäre Operator 0-x geringere, der unäre Operator -x dagegen höhere Priorität als die Division hat. Das Beispiel war jetzt Java, dürfte aber in ähnlicher Form in C/C++ umgesetzt das gleiche Ergebnis liefern. 10:57, 20. Feb. 2013 (CET)